/** * Load all mailinglist * * @param sfWebRequest $request * @return <type> */ public function executeLoadMailinglist(sfWebRequest $request) { $mailinglist = new Mailinglist(); $data = MailinglistTemplateTable::instance()->getAllMailinglistTemplates(-1,-1); $json_result = $mailinglist->buildAllMailinglists($data); $this->renderText('({"result":'.json_encode($json_result).'})'); return sfView::NONE; }
/** * * @param Doctrine_Collection $data * @return array $data */ public function buildHeadLine(Doctrine_Collection $data) { $result = array(); $workflowtemplate = WorkflowTemplateTable::instance()->getWorkflowTemplateById($data[0]->getWorkflowtemplateId()); $mailinglist = $workflowtemplate[0]->getMailinglistVersion()->toArray(); $mailinglist = MailinglistTemplateTable::instance()->getMailinglistActiveById($mailinglist[0]['mailinglisttemplate_id'])->toArray(); $workflowtemplate = $workflowtemplate->toArray(); $user = UserLoginTable::instance()->findActiveUserById($workflowtemplate[0]['sender_id']); $userdata = $user[0]->getUserData(); $result['workflow'] = $workflowtemplate[0]['name']; $result['versionid'] = $data[0]->getId(); $result['mailinglist'] = $mailinglist[0]['name']; $result['mailinglist_id'] = $workflowtemplate[0]['id']; $result['workflowtemplateid'] = $data[0]->getWorkflowtemplateId(); $textReplace = new ReplaceTags($data[0]->getId(), $data[0]->getContent(), $this->culture, $this->context); $newText = $textReplace->getText(); $result['content'] = $newText; $result['created_at'] = format_date($data[0]->getCreatedAt(), 'g', $this->culture); $result['sender_id'] = $workflowtemplate[0]['sender_id']; $result['sender'] = $userdata->getFirstname() . ' ' . $userdata->getLastname() . ' <i>('.$user[0]->getUsername().')</i>'; $result['version'] = $this->getVersion($data[0]->getWorkflowtemplateId()); return $result; }
/** * Function retuns flag if slot is send to all at once * @param int $versionid, version id * @return boolean */ public function getSendToAllSlots($versionid) { $template = WorkflowTemplateTable::instance()->getWorkflowTemplateByVersionId($versionid)->toArray(); $mailinglist = MailinglistTemplateTable::instance()->getMailinglistByVersionId($template[0]['mailinglisttemplateversion_id']); return $mailinglist[0]['MailinglistVersion']['sendtoallslotsatonce']; }
public function buildData(Doctrine_Collection $data, $counter) { $result = array(); $a = 0; $counter++; $authSettings = new CreateWorkflowAuthorizationRights(); $authSettings->setDefaultRole(); $authSettings->setUserRole($this->userId); $userSettings = $this->user->getAttribute('userSettings'); foreach($data as $item) { $sender = UserLoginTable::instance()->findActiveUserById($item->getSenderId()); $mailinglist = MailinglistTemplateTable::instance()->getMailinglistByVersionId($item->getMailinglisttemplateversionId()); $inProgress = createDayOutOfDateSince($item->getVersioncreatedAt()); $inProgress = addColor($inProgress, $userSettings['markred'],$userSettings['markorange'],$userSettings['markyellow']); $userdata = $sender[0]->getUserData()->toArray(); $username = $sender[0]->getUsername() . ' (' . $userdata['firstname'] . ' ' . $userdata['lastname'] . ')'; $result[$a]['#'] = $counter++;; $result[$a]['id'] = $item->getId(); $result[$a]['mailinglisttemplate_id'] = $item->getMailinglisttemplateversionId(); $result[$a]['mailinglisttemplate'] = $mailinglist[0]->getName(); $result[$a]['sender_id'] = $item->getSenderId(); $result[$a]['sendername'] = $username; $result[$a]['name'] = $item->getName(); $result[$a]['isstopped'] = $item->getIsstopped(); $result[$a]['process'] = $this->getProcess($item->getActiveversionId()); $result[$a]['auth'] = $authSettings->getRights($item->getMailinglisttemplateversionId(), $item->getActiveversionId()); if($item->getIscompleted() == 0 OR $item->getIscompleted() == '') { $result[$a]['iscompleted'] = 0; } else { $result[$a]['iscompleted'] = 1; $result[$a]['process'] = '<div style="background-color:#00FF00; width:100px;">100 %'.'</div>'; } $result[$a]['workflowisstarted'] = $item->getWorkflowisstarted(); if($item->getIsstopped() == 1) { $result[$a]['currentstation'] = '<table><tr><td width="16"><img src="/images/icons/circ_stop.gif" /></td><td>'.$this->context->getI18N()->__('Workflow stopped' ,null,'workflowmanagement').'</td></tr></table>'; $result[$a]['currentlyrunning'] = '-'; $result[$a]['stationrunning'] = '-'; // $result[$a]['process'] = '-'; } elseif($item->getIscompleted() == 1) { $result[$a]['currentstation'] = '<table><tr><td width="16"><img src="/images/icons/circ_done.gif" /></td><td>'.$this->context->getI18N()->__('Workflow completed' ,null,'workflowmanagement').'</td></tr></table>'; $result[$a]['currentlyrunning'] = '-'; $result[$a]['stationrunning'] = '-'; } elseif($item->getWorkflowisstarted() == 0) { $startdateofWorkflow = date('Y-m-d',$item->getStartworkflowAt()); $startdateofWorkflow = format_date($startdateofWorkflow, 'p', $this->culture); $result[$a]['currentstation'] = '<table><tr><td width="16"><img src="/images/icons/circ_waiting.gif" /></td><td>'.$this->context->getI18N()->__('Startdate' ,null,'workflowmanagement').': '.$startdateofWorkflow.'</td></tr></table>'; $result[$a]['currentlyrunning'] = '-'; $result[$a]['stationrunning'] = '-'; } else { $stationSettings = $this->getCurrentStation($item->getActiveversionId(), $item->getSenderId()); if(!empty($stationSettings)) { $result[$a]['currentstation'] = $stationSettings[0]; $result[$a]['currentlyrunning'] = '<table><tr><td width="20">' . $inProgress . ' </td><td>' . $this->context->getI18N()->__('Day(s)' ,null,'workflowmanagement') . '</td></tr></table>'; $slotRunning = createDayOutOfDateSince($stationSettings[1]); $slotRunning = addColor($slotRunning, $userSettings['markred'],$userSettings['markorange'],$userSettings['markyellow']); $result[$a]['stationrunning'] = '<table><tr><td width="20">' . $slotRunning . ' </td><td>' . $this->context->getI18N()->__('Day(s)' ,null,'workflowmanagement') . '</td></tr></table>'; } else { $result[$a]['currentstation'] = '-'; $result[$a]['currentlyrunning'] = '-'; $result[$a]['stationrunning'] = '-'; } } if($item->getIsarchived() == 1) { $result[$a]['currentstation'] = '<table><tr><td width="16"><img src="/images/icons/circ_archived.gif" /></td><td>'.$this->context->getI18N()->__('Workflow archived' ,null,'workflowmanagement').'</td></tr></table>'; $result[$a]['currentlyrunning'] = '-'; $result[$a]['stationrunning'] = '-'; } $result[$a]['userdefined1'] = $this->getFields('userdefined1',$item->getActiveversionId()); $result[$a]['userdefined2'] = $this->getFields('userdefined2',$item->getActiveversionId()); $result[$a]['versioncreated_at'] = format_date($item->getVersioncreatedAt(), 'g', $this->culture); $result[$a++]['activeversion_id'] = $item->getActiveversionId(); } #print_r ($result);die; return $result; }
/** * Adapt mailinglist to current version * @param sfWebRequest $request * @return <type> */ public function executeAdaptMailinglist(sfWebRequest $request) { $mailinglist = new Mailinglist(); $docuObj = new Documenttemplate(); $mailinglistdata = MailinglistTemplateTable::instance()->getMailinglistByVersionTemplateId($request->getParameter('id'))->toArray(); $currentdocumenttemplateversion = DocumenttemplateVersionTable::instance()->getActiveVersionById($mailinglistdata[0]['documenttemplatetemplate_id'])->toArray(); $slots = $docuObj->buildSlots($currentdocumenttemplateversion[0]['id'], 'SLOTSONLY'); $mailinglistversiondata = MailinglistVersionTable::instance()->getActiveVersionById($request->getParameter('id'))->toArray(); MailinglistVersionTable::instance()->setMailinglistInactiveById($mailinglistversiondata[0]['mailinglisttemplate_id']); $mailinglistversion_id = $mailinglist->storeVersion($mailinglistversiondata[0]['mailinglisttemplate_id'],$mailinglistversiondata[0]['version']+1, $currentdocumenttemplateversion[0]['id']); $userdata = MailinglistAllowedSenderTable::instance()->getAllowedSenderById($mailinglistversiondata[0]['id']); $users = $mailinglist->buildAllowedUser($userdata); $mailinglist->saveUser($mailinglistversion_id, isset($users) ? $users: array()); $authdata = MailinglistAuthorizationSettingTable::instance()->getAuthorizationById($mailinglistversiondata[0]['id'])->toArray(); $mailinglist->adaptAuthorizationEntry($authdata, $mailinglistversion_id); $mailinglist->storeMailinglist($slots, $mailinglistversion_id); return sfView::NONE; }