private function passData($id = null) { $jobs = new \App\Models\Jobs(); if (!is_null($id)) { $jobs = Jobs::findOrNew($id); } $companyPreference = $jobs->getCompanyPreference() ? $jobs->getCompanyPreference() : new \App\Models\CompanyPreference(); $address = $jobs->address()->first() ? $jobs->address()->first() : new \App\Models\Addresses(); $commOrBon = CommisionOrBonus::all()->sortBy("Commission_Or_Bonus")->toArray(); $lns = SupportedLanguages::all()->sortBy("Language_Name")->toArray(); if (sizeof($commOrBon) == 0) { $commOrBon = new \App\Models\CommisionOrBonus(); } $tEndUser = TargetEndUser::all()->sortBy("Target_End_User")->toArray(); foreach ($commOrBon as $commisionOrBonusVal) { $commisionOrBonus[$commisionOrBonusVal["id_Commission_Or_Bonus"]] = $commisionOrBonusVal["Commission_Or_Bonus"]; } foreach ($tEndUser as $tgEndUser) { $targetEndUser[$tgEndUser["id_Target_End_User"]] = $tgEndUser["Target_End_User"]; } foreach ($lns as $langs) { $languages[$langs["id_Language"]] = $langs["Language_Name"]; } $companies = Companies::SelectOptionsModel(); $jobType = $jobs->getJobType(); $jobFamilyOptions = JobFamily::getJobsFamilyOptions(); $jobTypesOptions = JobType::getJobsTypesByJobFamilyOptions($jobType->id_Job_Family); $countryModel = $address->getCountry(); $regionsOptions = Region::getRegionsOptions(); $countryOptions = Country::getCountriesOptionsByRegion($countryModel->id_Region); return compact("companies", "commisionOrBonus", "targetEndUser", "jobFamilyOptions", "regionsOptions", "countryOptions", "languages", "jobs", "companyPreference", "address", "jobTypesOptions"); }
private function storeRelatedData(Request $request, $productsModel) { $TargetEndUserSelection = TargetEndUser::getSelected($request); $AssetClassSelection = AssetClass::getSelected($request); $TargetMarketSelection = TargetMarket::getSelected($request); $AvailabilityTerritorySelection = AvailabilityTerritory::getSelected($request); if (count($AssetClassSelection)) { DB::table('Product_Asset_Class')->where('id_Product', '=', $productsModel->id_Product)->delete(); foreach ($AssetClassSelection as $AssetClassId) { $productsModel->assetClass()->save(AssetClass::findOrNew($AssetClassId)); } } if (count($TargetEndUserSelection)) { DB::table('Product_Target_End_User')->where('id_Product', '=', $productsModel->id_Product)->delete(); foreach ($TargetEndUserSelection as $targetEndUserSelected) { $productsModel->targetEndUser()->save(TargetEndUser::findOrNew($targetEndUserSelected)); } } if (count($TargetMarketSelection)) { DB::table('Product_Target_Market')->where('id_Product', '=', $productsModel->id_Product)->delete(); foreach ($TargetMarketSelection as $TargetMarketId) { $productsModel->targetMarket()->save(TargetMarket::findOrNew($TargetMarketId)); } } if (count($AvailabilityTerritorySelection)) { DB::table('Product_Availability_Territory')->where('id_Product', '=', $productsModel->id_Product)->delete(); foreach ($AvailabilityTerritorySelection as $AvailabilityTerritoryId) { $productsModel->territory()->save(AvailabilityTerritory::findOrNew($AvailabilityTerritoryId)); } } }