/** * */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $defaults = array('NodeParamBlacklistId' => null, 'HasPayphoneFilter' => null, 'PayphoneRejectionPromptId' => null, 'BlacklistId' => null, 'BlacklistRejectionPromptId' => null); $nodeParameter = SwIRS_Web_Request::getParam($request, $defaults); if (count($nodeParameter) > 1) { $result = Streamwide_Web_Model::call('Blacklist.UpdateNodeParameter', array($nodeParameter)); } return $node; }
/** * */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $defaults = array('NodeParamLinkId' => null, 'LinkedNodeId' => null, 'IsInternal' => null); $nodeParameter = SwIRS_Web_Request::getParam($request, $defaults); if (count($nodeParameter) > 1) { $result = Streamwide_Web_Model::call('Link.UpdateNodeParameter', array($nodeParameter)); } return $node; }
/** * */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $nodeOutput = $request->getParam('NodeOutput'); $this->updateOutput($nodeOutput); $defaults = array('NodeParamPromptId' => null, 'PromptId' => null, 'IsStandard' => null); $nodeParameter = SwIRS_Web_Request::getParam($request, $defaults); if (count($nodeParameter) > 1) { $result = Streamwide_Web_Model::call('Prompt.UpdateNodeParameter', array($nodeParameter)); } return $node; }
/** * NodeOutputs = array( * array( * NodeOutputId * NodeId * NextNodeId * Label * IsDefault * IsActive * IsAllowed * ) * ) * */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $outputs = $request->getParam('NodeOutputs'); $this->updateOutputs($outputs); $defaults = array('NodeParamMenuId' => null, 'MaxTries' => null, 'NoinputTimeout' => null, 'DetectDtmfOnPrompt' => null, 'GreetingPromptId' => null, 'NoinputPromptId' => null, 'WrongKeyPromptId' => null); $nodeParameter = SwIRS_Web_Request::getParam($request, $defaults); if (count($nodeParameter) > 1) { $result = Streamwide_Web_Model::call('Menu.UpdateNodeParameter', array($nodeParameter)); } return $node; }
/** * */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $outputs = $request->getParam('NodeOutputs'); $this->updateOutputs($outputs); $defaults = array('NodeParamOutgoingId' => null, 'DestinationTypeId' => null, 'ContactId' => null, 'IsAgentGroupAllowed' => false, 'AgentGroupId' => null, 'IsFailoverAllowed' => false, 'RingingDuration' => null, 'IsWaitingQueueAllowed' => false, 'IsSimutaneousCallAllowed' => false); $nodeParameter = SwIRS_Web_Request::getParam($request, $defaults); if ($nodeParameter['IsWaitingQueueAllowed']) { $waitingQueueDefaults = array('HasWaitingQueue' => null, 'QueueGreetingPromptId' => null, 'QueuePeriodicPromptId' => null, 'QueueMaxLength' => null, 'QueueMaxWaitingTime' => null, 'QueueHasPositionPrompt' => null, 'QueueMaxPositionPrompt' => null); $waitingQueue = SwIRS_Web_Request::getParam($request, $waitingQueueDefaults); $nodeParameter['WaitingQueue'] = $waitingQueue; } if ($nodeParameter['IsSimutaneousCallAllowed']) { $simutaneousCallDefaults = array('HasSimutaneousCalls' => null, 'MaxSimutaneousCalls' => null); $simutaneousCall = SwIRS_Web_Request::getParam($request, $simutaneousCallDefaults); $nodeParameter['SimutaneousCall'] = $simutaneousCall; } $result = Streamwide_Web_Model::call('Outgoing.UpdateNodeParameter', array($nodeParameter)); return $node; }
/** * * NodeOutputs = array( * array( * NodeOutputId * NodeId * NextNodeId * Label * IsDefault * IsActive * IsAllowed * OriginId * Origins * Prefixes * ) * ) */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $outputs = $request->getParam('NodeOutputs'); foreach ($outputs as &$output) { if (is_null($output['OriginId']) && (!is_null($output['Origins']) || !is_null($output['Prefixes']))) { $output['OriginId'] = $this->_getOrigin($output['Origins'], $output['Prefixes'], $request); } } $this->updateOutputs($outputs); return $node; }
/** * * NodeOutputs = array( * array( * NodeOutputId * NodeId * NextNodeId * Label * IsDefault * IsActive * IsAllowed * CalendarTypeId * CalendarType * CalendarId * MultiViewCalendarId * ) * ) */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $outputs = $request->getParam('NodeOutputs'); $addOutputs = array(); $oldOutputs = array(); foreach ($outputs as $output) { if (is_null($output['NodeOutputId']) && !is_null($output['NodeId'])) { $addOutputs[] = $output; } else { $oldOutputs[] = $output; } } $this->updateOutputs($oldOutputs); $nodeOutputs = array(); foreach ($addOutputs as &$output) { $periodIds = $this->_getPeriods($output, $request); foreach ($periodIds as $periodId => $periodLabel) { $nodeOutputs[] = array('NodeId' => $node['NodeId'], 'Label' => $periodLabel, 'IsActive' => true, 'IsDefault' => false, 'IsAllowed' => true, 'PeriodId' => $periodId); } } $this->addOutputs($nodeOutputs); return $node; }
/** * Rendering the routing tree building tool * * -------------- //Actual Page * <request> * 'TreeId' //numberic * <view-assign> * 'NodeTypes' //struct $id => $label * 'CurrentTreeId' //numberic * 'CurrentTreeInfo' //struct * 'RootTreeInfo' //struct * 'SubTreeLists' //array(struct) * 'TreeNodes' //struct $nodeId => $nodeInfo * * @return void */ public function builderAction() { // set another layout for builder $this->getHelper('Layout')->setLayout('tree'); $request = $this->getRequest(); $treeId = $request->getParam('TreeId'); $nodeId = $request->getParam('NodeId'); if ($request->getParam('IsBuilding')) { if (is_null($nodeId) || in_array($nodeId, self::$_renderedNodeIds)) { Streamwide_Web_Log::debug('Rendering Stoped because NextNodeId is null or rendered.'); $this->getHelper('ViewRenderer')->setNoRender(); } else { Streamwide_Web_Log::debug('Rendering Tree Node on NodeId: ' . $nodeId); $this->view->assign(array('CurrentNodeId' => $nodeId, 'RenderedNodeIds' => self::$_renderedNodeIds)); $this->getHelper('ViewRenderer')->direct('building'); self::$_renderedNodeIds[] = $nodeId; } } else { Streamwide_Web_Log::debug('Rendering Routing Tree on TreeId: ' . $treeId); $nodeTypes = SwIRS_Web_Node_Abstract::getNodeTypes(); $currentTreeInfo = Streamwide_Web_Model::call('Tree.GetById', array($treeId)); $rootTreeId = $currentTreeInfo['ParentTreeId'] ? $currentTreeInfo['ParentTreeId'] : $treeId; $subTreeLists = Streamwide_Web_Model::call('Tree.GetSubTrees', array($rootTreeId)); $rootTreeInfo = $currentTreeInfo; if ($rootTreeId != $treeId) { $rootTreeInfo = Streamwide_Web_Model::call('Tree.GetById', array($rootTreeId)); } $treeNodes = Streamwide_Web_Model::call('Tree.GetNodes', array($treeId)); $treeNodes = $this->_formatTreeNodes($treeNodes); $this->view->assign(array('NodeTypes' => $nodeTypes, 'CurrentTreeId' => $treeId, 'CurrentTreeInfo' => $currentTreeInfo, 'RootTreeInfo' => $rootTreeInfo, 'SubTreeLists' => $subTreeLists, 'TreeNodes' => $treeNodes)); } }
/** * * NodeOutputs = array( * array( * NodeOutputId * NodeId * NextNodeId * Label * IsDefault * IsActive * IsAllowed * DistributionTypeId * DistributionRatio * ) * ) */ public function update(Zend_Controller_Request_Abstract $request) { $node = parent::update($request); $outputs = $request->getParam('NodeOutputs'); $this->updateOutputs($outputs); return $node; }