/** * Run the database seeds. * * @return void */ public function run() { DB::table('campaign_manage')->truncate(); DB::table('campaign_manage_country')->truncate(); DB::table('campaign_manage_date')->truncate(); DB::table('campaign_manage_time')->truncate(); $campaigns = json_decode(File::get('database/migrations/jsondata/campaigns.json')); $default_parameters = array(); $default_parameters['countries'] = 10000; $default_parameters['dates'] = 1000; $default_parameters['hours'] = 100; foreach ($campaigns as $campaign) { $campaign = CampaignManage::create(array('id' => '', 'campaign_id' => $campaign->id, 'platform_id' => 1)); $relationships = array_intersect_key($default_parameters, array_flip(CampaignManage::$relationshipsAllowedToUpdate)); if (!empty($relationships)) { foreach ($relationships as $relationshipType => $relationshipValue) { if (!empty($relationshipValue)) { if (!is_array($relationshipValue)) { $relationshipValue = explode(',', $relationshipValue); } $campaign->{$relationshipType}()->sync($relationshipValue); } } } } }