diff --git a/app/Http/Controllers/MoonsController.php b/app/Http/Controllers/MoonsController.php
index cec89ca1d..0412a236a 100644
--- a/app/Http/Controllers/MoonsController.php
+++ b/app/Http/Controllers/MoonsController.php
@@ -31,6 +31,8 @@ class MoonsController extends Controller
$rentalEnd = date('d.m.Y', $moon->RentalEnd);
$price = $moonCalc->SpatialMoons($moon->FirstOre, $moon->FirstQuantity, $moon->SecondOre, $moon->SecondQuantity,
$moon->ThirdOre, $moon->ThirdQuantity, $moon->FourthOre, $moon->FourthQuantity);
+ $allyPrice = $moonCalc->SpatialMoonsOutOfAlliance($moon->FirstOre, $moon->FirstQuantity, $moon->SecondOre, $moon->SecondQuantity,
+ $moon->ThirdOre, $moon->ThirdQuantity, $moon->FourthOre, $moon->FourthQuantity);
//Add the data to the html string to be passed to the view
$html .= '
';
$html .= '| ' . $spm . ' | ';
@@ -44,6 +46,7 @@ class MoonsController extends Controller
$html .= '' . $moon->FourthOre . ' | ';
$html .= '' . $moon->FourthQuantity . ' | ';
$html .= '' . $price . ' | ';
+ $html .= '' . $allyPrice . ' | ';
$html .= '' . $moon->RentalCorp . ' | ';
$html .= '' . $rentalEnd . ' | ';
$html .= '
';
diff --git a/app/Library/MoonCalc.php b/app/Library/MoonCalc.php
index fe1eb3271..ece0111af 100644
--- a/app/Library/MoonCalc.php
+++ b/app/Library/MoonCalc.php
@@ -76,6 +76,63 @@ class MoonCalc {
return $rentalPrice;
}
+ public function SpatialMoonsOutOfAlliance($firstOre, $firstQuan, $secondOre, $secondQuan, $thirdOre, $thirdQuan, $fourthOre, $fourthQuan) {
+ //Always assume a 1 month pull which equates to 5.55m3 per second or 2,592,000 seconds
+ //Total pull size is 14,385,600 m3
+ $totalPull = 5.55 * (3600.00 * 24.00 * 30.00);
+ //Get the configuration for pricing calculations
+ $config = DB::table('Config')->get();
+ if($firstQuan >= 1.00) {
+ $firstPerc = $this->ConvertToPercentage($firstQuan);
+ } else {
+ $firstPerc = $firstQuan;
+ }
+ if($secondQuan >= 1.00) {
+ $secondPerc = $this->ConvertToPercentage($secondQuan);
+ } else {
+ $secondPerc = $secondQuan;
+ }
+ if($thirdQuan >= 1.00) {
+ $thirdPerc = $this->ConvertToPercentage($thirdQuan);
+ } else {
+ $thirdPerc = $thirdQuan;
+ }
+ if($fourthQuan >= 1.00) {
+ $fourthPerc = $this->ConvertToPercentage($fourthQuan);
+ } else {
+ $fourthPerc = $fourthQuan;
+ }
+ if($firstOre != "None") {
+ $firstTotal = $this->CalcPrice($firstOre, $firstPerc);
+ } else {
+ $firstTotal = 0.00;
+ }
+ if($secondOre != "None") {
+ $secondTotal = $this->CalcPrice($secondOre, $secondPerc);
+ } else {
+ $secondTotal = 0.00;
+ }
+ if($thirdOre != "None") {
+ $thirdTotal = $this->CalcPrice($thirdOre, $thirdPerc);
+ } else {
+ $thirdTotal = 0.00;
+ }
+ if($fourthOre != "None") {
+ $fourthTotal = $this->CalcPrice($fourthOre, $fourthPerc);
+ } else {
+ $fourthTotal = 0.00;
+ }
+ //Calculate the total to price to be mined in one month
+ $totalPriceMined = $firstTotal + $secondTotal + $thirdTotal + $fourthTotal;
+ //Calculate the rental price. Refined rate is already included in the price from rental composition
+ $rentalPrice = $totalPriceMined * ($config[0]->AllyRentalTax / 100.00);
+ //Format the rental price to the appropriate number
+ $rentalPrice = number_format($rentalPrice, "2", ".", ",");
+
+ //Return the rental price to the caller
+ return $rentalPrice;
+ }
+
public function FetchNewPrices() {
$ItemIDs = array(
"Tritanium" => 34,
diff --git a/resources/views/moons/moon.blade.php b/resources/views/moons/moon.blade.php
index 751c71ea8..bab569f41 100644
--- a/resources/views/moons/moon.blade.php
+++ b/resources/views/moons/moon.blade.php
@@ -14,6 +14,7 @@
Fourth Ore |
Quantity |
Rental Price |
+ Ally Rental Price |
Renter |
Rental End |