*/ class ActionsByEmail extends Api { private $actionsByEmail; /** * Constructor of the class * * return void */ public function __construct() { try { $this->actionsByEmail = new \ProcessMaker\BusinessModel\ActionsByEmail(); } catch (\Exception $e) { throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); } } /** * @url GET */ public function getABEList() { try { $projects = array('status' => 200, 'message' => 'Hello'); return $projects; } catch (\Exception $e) { throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); } } /** * * @url GET /editTemplate */ public function editTemplate($params) { $this->actionsByEmail->editTemplate($_REQUEST); } /** * Update template. * * @url PUT /updateTemplate * * @param type $params * * @access protected * @class AccessControl {@permission PM_FACTORY} */ public function updateTemplate($params) { $this->actionsByEmail->updateTemplate($_REQUEST); } /** * * @url GET /loadFields */ public function loadFields($params) { return $this->actionsByEmail->loadFields($_REQUEST); } /** * Update configuration. * * @url PUT /saveConfiguration * * @param type $params * * @return mixed * * @access protected * @class AccessControl {@permission PM_FACTORY} */ public function saveConfiguration($params) { return $this->actionsByEmail->saveConfiguration2($_REQUEST); } /** * * @url GET /loadActionByEmail */ public function loadActionByEmail($params) { return $this->actionsByEmail->loadActionByEmail($_REQUEST); } /** * * @url POST /forwardMail */ public function forwardMail($params) { return $this->actionsByEmail->forwardMail($_REQUEST); } /** * * @url GET /viewForm */ public function viewForm($params) { return $this->actionsByEmail->viewForm($_REQUEST); } /** * * @url GET /Templates/:proId */ public function getTemplates($proId) { $templates = array(); $path = PATH_DATA_MAILTEMPLATES . $proId . PATH_SEP; $userUid = $this->getUserId(); $filesManager = new \ProcessMaker\BusinessModel\FilesManager(); \G::verifyPath($path, true); if (defined('PARTNER_FLAG')) { if (!file_exists($path . 'actionsByEmailPartner.html')) { $data = array('prf_content' => '', 'prf_filename' => 'actionsByEmailPartner.html', 'prf_path' => 'templates'); $arrayData = $filesManager->addProcessFilesManager($proId, $userUid, $data); @copy(PATH_TPL . 'actionsByEmail' . PATH_SEP . 'actionsByEmailPartner.html', $path . 'actionsByEmail.html'); } } else { if (!file_exists($path . 'actionsByEmail.html')) { $data = array('prf_content' => '', 'prf_filename' => 'actionsByEmail.html', 'prf_path' => 'templates'); $arrayData = $filesManager->addProcessFilesManager($proId, $userUid, $data); @copy(PATH_TPL . 'actionsByEmail' . PATH_SEP . 'actionsByEmail.html', $path . 'actionsByEmail.html'); } /*----------------------------------********---------------------------------*/ if (!file_exists($path . 'actionsByEmailErrorReply.html')) { $data = array('prf_content' => '', 'prf_filename' => 'actionsByEmailErrorReply.html', 'prf_path' => 'templates'); $arrayData = $filesManager->addProcessFilesManager($proId, $userUid, $data); @copy(PATH_TPL . 'actionsByEmail' . PATH_SEP . 'actionsByEmailErrorReply.html', $path . 'actionsByEmailErrorReply.html'); } /*----------------------------------********---------------------------------*/ } $directory = dir($path); while ($object = $directory->read()) { if (($object !== '.') && ($object !== '..') && ($object !== 'alert_message.html')) { $templates[] = array('FILE' => $object, 'NAME' => $object); } } return $templates; } /** * * @url GET /Dynaforms/:proUid */ public function getDynaforms($proUid) { $criteria = new Criteria(); $criteria->addSelectColumn(DynaformPeer::DYN_UID); $criteria->addSelectColumn(DynaformPeer::DYN_TITLE); $criteria->add( DynaformPeer::PRO_UID, $proUid, Criteria::EQUAL ); $criteria->add( DynaformPeer::DYN_TYPE, 'xmlform', Criteria::EQUAL ); $dataset = DynaformPeer::doSelectRS($criteria); $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $dynaform = array(); while ($dataset->next()) { $aRow = $dataset->getRow(); $dynaform[] = array('DYN_UID' => $aRow['DYN_UID'], 'DYN_NAME' => $aRow['DYN_TITLE']); } return $dynaform; } }