public static function getFranchiseDetail() { //$franchise = Franchise::model()->findByPk(Yii::app()->user->franchise); $franchise = JaspersFranchise::model()->findByAttributes(array('id' => Yii::app()->user->franchise)); $franName = ''; if ($franchise) { $franName = $franchise->franchise_name; } ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache $client = new SoapClient("http://dev.jaspersonline.co.uk/soap/jaspers.wsdl"); $result = json_decode($client->iFormTotals(strtolower($franName)), true); $result = $result['result']; return $result; }
public function actionUpdate($id) { $model = $this->loadModel($id); $jaspers_franchise = JaspersFranchise::model()->findAll(); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if (isset($_POST['User'])) { $this->password = $model->password; $model->attributes = $_POST['User']; if ($_POST['User']['password']) { $model->password = getHash($_POST['User']['password']); } else { $model->password = $this->password; } if ($model->save()) { // $this->redirect(array('view', 'id' => $model->id)); if (isset($_GET['isUser'])) { $this->redirect(array('user/admin', 'isUser' => 1)); } $this->redirect(array('user/admin')); } } unset($model->password); $this->render('update', array('model' => $model, 'jaspers_franchise' => $jaspers_franchise)); }
function actionDealData($option) { $actionList = array('franchise' => 'createFranchises', 'comp' => 'createCompanies', 'contact' => 'createContacts', 'competitor' => 'createCompetitor', 'franchiseData' => 'updateFranchiseData'); if (in_array($option, $actionList)) { if ($option == $actionList['franchiseData']) { $criteria = new CDbCriteria(); $criteria->select = 'MAX(comp_id) as comp_id'; $criteria->condition = 'franchise_id = :franch_id'; $criteria->params = array(':franch_id' => $this->franchiseId); $company = JaspersCompanies::model()->find($criteria); $criteria = new CDbCriteria(); $criteria->select = 'MAX(competitor_oid) as competitor_id'; $criteria->condition = 'competitor_oid = :franch_id'; $criteria->params = array(':franch_id' => $this->franchiseId); $competitor = JaspersCompetitor::model()->find($criteria); $criteria = new CDbCriteria(); $criteria->select = 'MAX(user_id) as user_id'; $criteria->condition = 'franchise_id = :franch_id'; $criteria->params = array(':franch_id' => $this->franchiseId); $contact = JaspersContacts::model()->find($criteria); $ref = array('contact' => $contact->user_id, 'company' => $company->comp_id, 'competitor' => $competitor->competitor_id, 'franchise_id' => $this->franchiseId); $refData = Yii::app()->curl->run('http://mccreative.jaspersonline.co.uk/api/customer/getRefUpdate/', $ref); if (!$refData->hasErrors()) { $reference = CJSON::decode($refData->getData()); if (isset($reference['companies_data']['data']) && count($reference['companies_data']['data'])) { $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_companies', $reference['companies_data']['data']); $command->execute(); } if (isset($reference['contact_data']['data']) && count($reference['contact_data']['data'])) { $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_contacts', $reference['contact_data']['data']); $command->execute(); } if (isset($reference['competitor_data']['data']) && count($reference['competitor_data']['data'])) { $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_competitor', $reference['competitor_data']['data']); $command->execute(); } } } else { if ($option == $actionList['franchise']) { $franchise = Yii::app()->curl->run('http://dev.jaspersonline.co.uk/info/branchlist.php'); if (!$franchise->hasErrors()) { //Yii::app()->db->createCommand()->truncateTable('jaspers_franchise'); JaspersFranchise::model()->deleteAll(); $franchises = $franchise->getData(); $franchises = explode('<br>', $franchises); $insert_det = array(); if (count($franchises)) { $index = 0; foreach ($franchises as $franch_det) { $franch_det = explode('-', $franch_det); if (count($franch_det) && isset($franch_det[0]) && !empty($franch_det[0])) { $franchise_contact_det = Yii::app()->curl->run('http://mccreative.jaspersonline.co.uk/api/customer/getContactDet/' . trim($franch_det[1])); $frach_cust_data = array('ref' => '', 'city' => '', 'email' => '', 'mobile' => '', 'address' => '', 'facebook' => '', 'telephone' => '', 'twitter' => ''); if (!$franchise_contact_det->hasErrors()) { $frach_cust_data = CJSON::decode($franchise_contact_det->getData()); $frach_cust_data = $frach_cust_data['data']; } $insert_det[$index]['id'] = trim($franch_det[1]); $insert_det[$index]['franchise_id'] = trim($franch_det[1]); $insert_det[$index]['ref'] = trim($frach_cust_data['ref']); $insert_det[$index]['city'] = trim($frach_cust_data['city']); $insert_det[$index]['email'] = trim($frach_cust_data['email']); $insert_det[$index]['mobile'] = trim($frach_cust_data['mobile']); $insert_det[$index]['address'] = trim($frach_cust_data['address']); $insert_det[$index]['twitter'] = trim($frach_cust_data['twitter']); $insert_det[$index]['facebook'] = trim($frach_cust_data['facebook']); $insert_det[$index]['telephone'] = trim($frach_cust_data['telephone']); $insert_det[$index]['franchise_name'] = trim($franch_det[0]); $index++; } } $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_franchise', $insert_det); $command->execute(); } } } else { if ($option == $actionList['comp']) { $companies = Yii::app()->curl->run('http://mccreative.jaspersonline.co.uk/api/customer/getCompanyList'); if (!$companies->hasErrors()) { Yii::app()->db->createCommand()->truncateTable('jaspers_companies'); $companies_data = CJSON::decode($companies->getData()); $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_companies', $companies_data['data']); $command->execute(); } } else { if ($option == $actionList['contact']) { $customerCount = Yii::app()->curl->run('http://mccreative.jaspersonline.co.uk/api/customer/getCustomerCount'); if (!$customerCount->hasErrors()) { $customer_data = CJSON::decode($customerCount->getData()); if (isset($customer_data['data']['ttl'])) { $limit = 5000; $ttls = $customer_data['data']['ttl']; $loopCount = $ttls / $limit; $loopCount = ceil($loopCount); Yii::app()->db->createCommand()->truncateTable('jaspers_contacts'); for ($i = 0; $i < $loopCount; $i++) { $offset = $i * ($limit - 1); $customer = Yii::app()->curl->run('http://mccreative.jaspersonline.co.uk/api/customer/getCustomerList/' . $offset . '/' . $limit); if (!$customer->hasErrors()) { $customer_data = CJSON::decode($customer->getData()); $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_contacts', $customer_data['data']); $command->execute(); } } } } } else { if ($option == $actionList['competitor']) { $competitor = Yii::app()->curl->run('http://mccreative.jaspersonline.co.uk/api/customer/getCompetitor'); if (!$competitor->hasErrors()) { Yii::app()->db->createCommand()->truncateTable('jaspers_competitor'); $competitor_data = CJSON::decode($competitor->getData()); $builder = Yii::app()->db->schema->commandBuilder; $command = $builder->createMultipleInsertCommand('jaspers_competitor', $competitor_data['data']); $command->execute(); } } } } } } } }