예제 #1
0
 public function execute(&$params)
 {
     $model = new Actions();
     $model->type = 'note';
     $model->complete = 'Yes';
     $model->associationId = $params['model']->id;
     $model->associationType = $params['model']->module;
     $model->actionDescription = $this->parseOption('comment', $params);
     $model->assignedTo = $this->parseOption('assignedTo', $params);
     $model->completedBy = $this->parseOption('assignedTo', $params);
     if (empty($model->assignedTo) && $params['model']->hasAttribute('assignedTo')) {
         $model->assignedTo = $params['model']->assignedTo;
         $model->completedBy = $params['model']->assignedTo;
     }
     if ($params['model']->hasAttribute('visibility')) {
         $model->visibility = $params['model']->visibility;
     }
     $model->createDate = time();
     $model->completeDate = time();
     if ($model->save()) {
         return array(true, Yii::t('studio', 'View created action: ') . $model->getLink());
     } else {
         $errors = $model->getErrors();
         return array(false, array_shift($errors));
     }
 }
예제 #2
0
 public function execute(&$params)
 {
     $options = $this->config['options'];
     $action = new Actions();
     $action->subject = $this->parseOption('subject', $params);
     $action->dueDate = $this->parseOption('dueDate', $params);
     $action->actionDescription = $this->parseOption('description', $params);
     $action->priority = $this->parseOption('priority', $params);
     $action->visibility = $this->parseOption('visibility', $params);
     if (isset($params['model'])) {
         $action->assignedTo = $this->parseOption('assignedTo', $params);
     }
     // if(isset($this->config['attributes']))
     // $this->setModelAttributes($action,$this->config['attributes'],$params);
     if ($action->save()) {
         return array(true, Yii::t('studio', "View created action: ") . $action->getLink());
     } else {
         $errors = $action->getErrors();
         return array(false, array_shift($errors));
     }
     // if($this->parseOption('reminder',$params)) {
     // $notif=new Notification;
     // $notif->modelType='Actions';
     // $notif->createdBy=Yii::app()->user->getName();
     // $notif->modelId=$model->id;
     // if($_POST['notificationUsers']=='me'){
     // $notif->user=Yii::app()->user->getName();
     // }else{
     // $notif->user=$model->assignedTo;
     // }
     // $notif->createDate=$model->dueDate-($_POST['notificationTime']*60);
     // $notif->type='action_reminder';
     // $notif->save();
     // if($_POST['notificationUsers']=='both' && Yii::app()->user->getName()!=$model->assignedTo){
     // $notif2=new Notification;
     // $notif2->modelType='Actions';
     // $notif2->createdBy=Yii::app()->user->getName();
     // $notif2->modelId=$model->id;
     // $notif2->user=Yii::app()->user->getName();
     // $notif2->createDate=$model->dueDate-($_POST['notificationTime']*60);
     // $notif2->type='action_reminder';
     // $notif2->save();
     // }
     // }
 }
예제 #3
0
 public function execute(&$params)
 {
     $action = new Actions();
     $action->associationType = lcfirst(get_class($params['model']));
     $action->associationId = $params['model']->id;
     $action->subject = $this->parseOption('subject', $params);
     $action->actionDescription = $this->parseOption('description', $params);
     if ($params['model']->hasAttribute('assignedTo')) {
         $action->assignedTo = $params['model']->assignedTo;
     }
     if ($params['model']->hasAttribute('priority')) {
         $action->priority = $params['model']->priority;
     }
     if ($params['model']->hasAttribute('visibility')) {
         $action->visibility = $params['model']->visibility;
     }
     if ($action->save()) {
         return array(true, Yii::t('studio', "View created action: ") . $action->getLink());
     } else {
         return array(false, array_shift($action->getErrors()));
     }
 }