/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $model = $this->loadModel($id); $users = User::getNames(); $fields = Fields::model()->findAllByAttributes(array('modelName' => 'Product')); foreach ($fields as $field) { if ($field->type == 'link') { $fieldName = $field->fieldName; $type = ucfirst($field->linkType); if (is_numeric($model->{$fieldName}) && $model->{$fieldName} != 0) { eval("\$lookupModel={$type}::model()->findByPk(" . $model->{$fieldName} . ");"); if (isset($lookupModel)) { $model->{$fieldName} = $lookupModel->name; } } } } if (isset($_POST['Product'])) { $temp = $model->attributes; $model->setX2Fields($_POST['Product']); // generate history $action = new Actions(); $action->associationType = 'product'; $action->associationId = $model->id; $action->associationName = $model->name; $action->assignedTo = Yii::app()->user->getName(); $action->completedBy = Yii::app()->user->getName(); $action->dueDate = time(); $action->completeDate = time(); $action->visibility = 1; $action->complete = 'Yes'; $action->actionDescription = "Update: {$model->name}\n Type: {$model->type}\n Price: {$model->price}\n Currency: {$model->currency}\n Inventory: {$model->inventory}"; $action->save(); parent::update($model, $temp, '0'); } $this->render('update', array('model' => $model, 'users' => $users)); }
/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $model = $this->loadModel($id); $users = User::getNames(); $fields = Fields::model()->findAllByAttributes(array('modelName' => "Products")); foreach ($fields as $field) { if ($field->type == 'link') { $fieldName = $field->fieldName; $type = ucfirst($field->linkType); if (is_numeric($model->{$fieldName}) && $model->{$fieldName} != 0) { eval("\$lookupModel={$type}::model()->findByPk(" . $model->{$fieldName} . ");"); if (isset($lookupModel)) { $model->{$fieldName} = $lookupModel->name; } } } } if (isset($_POST['Product'])) { $temp = $model->attributes; foreach ($_POST['Product'] as $name => $value) { if ($value == $model->getAttributeLabel($name)) { $_POST['Product'][$name] = ''; } } foreach ($_POST as $key => $arr) { $pieces = explode("_", $key); if (isset($pieces[0]) && $pieces[0] == 'autoselect') { $newKey = $pieces[1]; if (isset($_POST[$newKey . "_id"]) && $_POST[$newKey . "_id"] != "") { $val = $_POST[$newKey . "_id"]; } else { $field = Fields::model()->findByAttributes(array('fieldName' => $newKey)); if (isset($field)) { $type = ucfirst($field->linkType); if ($type != "Contacts") { eval("\$lookupModel={$type}::model()->findByAttributes(array('name'=>'{$arr}'));"); } else { $names = explode(" ", $arr); $lookupModel = Contacts::model()->findByAttributes(array('firstName' => $names[0], 'lastName' => $names[1])); } if (isset($lookupModel)) { $val = $lookupModel->id; } else { $val = $arr; } } } $model->{$newKey} = $val; } } foreach (array_keys($model->attributes) as $field) { if (isset($_POST['Product'][$field])) { $model->{$field} = $_POST['Product'][$field]; $fieldData = Fields::model()->findByAttributes(array('modelName' => 'Products', 'fieldName' => $field)); if ($fieldData->type == 'assignment' && $fieldData->linkType == 'multiple') { $model->{$field} = Accounts::parseUsers($model->{$field}); } elseif ($fieldData->type == 'date') { $model->{$field} = strtotime($model->{$field}); } } } // generate history $action = new Actions(); $action->associationType = 'product'; $action->associationId = $model->id; $action->associationName = $model->name; $action->assignedTo = Yii::app()->user->getName(); $action->completedBy = Yii::app()->user->getName(); $action->dueDate = time(); $action->completeDate = time(); $action->visibility = 1; $action->complete = 'Yes'; $action->actionDescription = "Update: <b>{$model->name}</b>\n\t\t\t\tType: <b>{$model->type}</b>\n\t\t\t\tPrice: <b>{$model->price}</b>\n\t\t\t\tCurrency: <b>{$model->currency}</b>\n\t\t\t\tInventory: <b>{$model->inventory}</b>"; $action->save(); parent::update($model, $temp, '0'); } $this->render('update', array('model' => $model, 'users' => $users)); }
public function update($model, $oldAttributes, $api) { $dueDate = strtotime($model->dueDate); $model->dueDate = $dueDate === false ? '' : $dueDate; //date('Y-m-d',$dueDate).' 23:59:59'; // default to being due by 11:59 PM $association = $this->getAssociation($model->associationType, $model->associationId); if ($association != null) { $model->associationName = $association->name; } else { $model->associationName = 'None'; $model->associationId = 0; } if (!is_numeric($model->assignedTo)) { // assigned to user $profile = ProfileChild::model()->findByAttributes(array('username' => $model->assignedTo)); $profile->updateGoogleCalendarEvent($model); // update action in Google Calendar if user has a Google Calendar } if ($api == 0) { parent::update($model, $oldAttributes, $api); } else { return parent::update($model, $oldAttributes, $api); } }
public function update($model, $oldAttributes, $api = 0) { // process currency into an INT // $model->quoteAmount = $this->parseCurrency($model->quoteAmount,false); $arr = $model->associatedContacts; if (isset($model->associatedContacts)) { foreach ($model->associatedContacts as $contact) { $rel = new Relationships(); $rel->firstType = 'Contacts'; $rel->firstId = $contact; $rel->secondType = 'Sales'; $rel->secondId = $model->id; if ($rel->firstId != "" && $rel->secondId != "") { $rel->save(); } } $model->associatedContacts = Sales::parseContacts($arr); } $model->lastUpdated = time(); // if($model->expectedCloseDate!=""){ // $model->expectedCloseDate=strtotime($model->expectedCloseDate); // } parent::update($model, $oldAttributes, '0'); }
/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $model = $this->loadModel($id); $users = User::getNames(); if (isset($_POST['Templates'])) { $temp = $model->attributes; $model->setX2Fields($_POST['Templates']); parent::update($model, $temp, '0'); } $this->render('update', array('model' => $model, 'users' => $users)); }
public function update($model, $oldAttributes, $api) { // now in Actions::beforeSave() /* $model->dueDate = Formatter::parseDateTime($model->dueDate); if($model->completeDate) $model->completeDate = Formatter::parseDateTime($model->completeDate); $association = $this->getAssociation($model->associationType,$model->associationId); if($association != null) { $model->associationName = $association->name; } else { $model->associationName = 'None'; $model->associationId = 0; } */ // now in Actions::synchGoogleCalendar() /* if( !is_numeric($model->assignedTo)) { // assigned to user $profile = Profile::model()->findByAttributes(array('username'=>$model->assignedTo)); if(isset($profile)) // prevent error for actions assigned to 'Anyone' $profile->updateGoogleCalendarEvent($model); // update action in Google Calendar if user has a Google Calendar } else { // Assigned to group $groups = Yii::app()->db->createCommand()->select('userId')->from('x2_group_to_user')->where("groupId={$model->assignedTo}")->queryAll(); foreach($groups as $group) { $profile = Profile::model()->findByPk($group['userId']); if(isset($profile)) // prevent error for actions assigned to 'Anyone' $profile->updateGoogleCalendarEvent($model); } } */ if ($api == 0) { parent::update($model, $oldAttributes, $api); } else { return parent::update($model, $oldAttributes, $api); } }
/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $model = $this->loadModel($id); $name = 'Marketing'; parent::update($model, $name); }
public function update($model, $oldAttributes, $api) { if ($api == 0) { parent::update($model, $oldAttributes, $api); } else { return parent::update($model, $oldAttributes, $api); } }
public function update($model, $oldAttributes, $api) { // process currency into an INT $model->annualRevenue = $this->parseCurrency($model->annualRevenue, false); if ($api == 0) { parent::update($model, $oldAttributes, $api); } else { return parent::update($model, $oldAttributes, $api); } }
/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $model = $this->loadModel($id); if (isset($_POST['Campaign'])) { $oldAttributes = $model->attributes; $model->setX2Fields($_POST['Campaign']); parent::update($model, $oldAttributes, 0); } $this->render('update', array('model' => $model)); }
/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $model = $this->loadModel($id); $users = User::getNames(); $fields = Fields::model()->findAllByAttributes(array('modelName' => "Templates")); foreach ($fields as $field) { if ($field->type == 'link') { $fieldName = $field->fieldName; $type = ucfirst($field->linkType); if (is_numeric($model->{$fieldName}) && $model->{$fieldName} != 0) { eval("\$lookupModel={$type}::model()->findByPk(" . $model->{$fieldName} . ");"); if (isset($lookupModel)) { $model->{$fieldName} = $lookupModel->name; } } } elseif ($field->type == 'date') { $fieldName = $field->fieldName; $model->{$fieldName} = date("Y-m-d", $model->{$fieldName}); } } if (isset($_POST['Templates'])) { $temp = $model->attributes; foreach ($_POST['Templates'] as $name => $value) { if ($value == $model->getAttributeLabel($name)) { $_POST['Templates'][$name] = ''; } } foreach ($_POST as $key => $arr) { $pieces = explode("_", $key); if (isset($pieces[0]) && $pieces[0] == 'autoselect') { $newKey = $pieces[1]; if (isset($_POST[$newKey . "_id"]) && $_POST[$newKey . "_id"] != "") { $val = $_POST[$newKey . "_id"]; } else { $field = Fields::model()->findByAttributes(array('fieldName' => $newKey)); if (isset($field)) { $type = ucfirst($field->linkType); if ($type != "Contacts") { eval("\$lookupModel={$type}::model()->findByAttributes(array('name'=>'{$arr}'));"); } else { $names = explode(" ", $arr); if (count($names) > 1) { $lookupModel = Contacts::model()->findByAttributes(array('firstName' => $names[0], 'lastName' => $names[1])); } } if (isset($lookupModel)) { $val = $lookupModel->id; } else { $val = $arr; } } } $model->{$newKey} = $val; } } $temp = $model->attributes; foreach (array_keys($model->attributes) as $field) { if (isset($_POST['Templates'][$field])) { $model->{$field} = $_POST['Templates'][$field]; $fieldData = Fields::model()->findByAttributes(array('modelName' => 'Templates', 'fieldName' => $field)); if ($fieldData->type == 'assignment' && $fieldData->linkType == 'multiple') { $model->{$field} = Accounts::parseUsers($model->{$field}); } elseif ($fieldData->type == 'date') { $model->{$field} = strtotime($model->{$field}); } } } parent::update($model, $temp, '0'); } $this->render('update', array('model' => $model, 'users' => $users)); }