if (!isset($contactTemplateInfo['use']) || empty($contactTemplateInfo['use'])) { // Lets make sure we have the minimum required keys for defining a contact template foreach ($required_keys as $rkey) { if (!isset($contactTemplateInfo[$rkey]) || empty($contactTemplateInfo[$rkey])) { $apiResponse = new APIViewData(1, $deployment, "Unable to detect required parameter {$rkey} " . contacttemplate_rkeyMessage($rkey)); $app->halt(404, $apiResponse->returnJson()); } } } $contactTemplateInfo = contacttemplate_validate($app, $deployment, $contactTemplateInfo); $deployRev = RevDeploy::getDeploymentNextRev($deployment); if (RevDeploy::existsDeploymentContactTemplate($deployment, $contactTemplateInfo['name'], $deployRev) === true) { RevDeploy::modifyDeploymentContactTemplate($deployment, $contactTemplateInfo['name'], $contactTemplateInfo, $deployRev); $apiResponse = new APIViewData(0, $deployment, "Successfully Modified Contact Template " . $contactTemplateInfo['name']); } else { RevDeploy::createDeploymentContactTemplate($deployment, $contactTemplateInfo['name'], $contactTemplateInfo, $deployRev); $apiResponse = new APIViewData(0, $deployment, "Successfully Created Contact Template " . $contactTemplateInfo['name']); } $apiResponse->printJson(); })->name('saigon-api-create-contact-template'); $app->delete('/sapi/contacttemplate/:deployment/:contacttemplate', function ($deployment, $contacttemplate) use($app) { check_deployment_exists($app, $deployment); check_auth($app, $deployment); check_revision_status($deployment); $deployRev = RevDeploy::getDeploymentNextRev($deployment); if (preg_match('/,/', $contacttemplate)) { $contacttemplates = preg_split('/\\s?,\\s?/', $contacttemplate); foreach ($contacttemplates as $cttemp) { RevDeploy::deleteDeploymentContactTemplate($deployment, $cttemp, $deployRev); } } else {
private static function copyContactTemplates($deployment, $revision, array $ctInfo) { if (self::$init === false) { self::init(); } foreach ($ctInfo as $ct => $ctArray) { if ($ctArray['deployment'] == self::$m_commonrepo && $ctArray['deployment'] == 'common') { continue; } if ($ctArray['deployment'] == self::$m_commonrepo) { continue; } unset($ctArray['deployment']); foreach ($ctArray as $key => $value) { if (is_array($ctArray[$key])) { $ctArray[$key] = implode(',', $ctArray[$key]); } } RevDeploy::createDeploymentContactTemplate($deployment, $ct, $ctArray, $revision); } }
public function copy_write() { $viewData = new ViewData(); $deployment = $this->getDeployment('contact_template_error'); $this->checkGroupAuth($deployment); $this->checkDeploymentRevStatus($deployment); $modrevision = RevDeploy::getDeploymentNextRev($deployment); $contactName = $this->getParam('contactName'); $contactInfo = $this->fetchContactTemplateInfo($deployment, 'copy_write', $modrevision); if (RevDeploy::existsDeploymentContactTemplate($deployment, $contactName, $modrevision) === true) { $viewData->error = 'Contact template information exists for ' . $contactName . ' into ' . $deployment . ' Deployment'; $viewData->action = 'copy_write'; $viewData->contacttemplate = $contactName; $viewData->deployment = $deployment; $viewData->contacttemplates = RevDeploy::getCommonMergedDeploymentContactTemplates($deployment, $modrevision); $viewData->notifycmds = RevDeploy::getCommonMergedDeploymentNotifyCommands($deployment, $modrevision); $viewData->timeperiods = RevDeploy::getCommonMergedDeploymentTimeperiods($deployment, $modrevision); $viewData->contactInfo = $contactInfo; $this->sendResponse('contact_template_action_stage', $viewData); } if (RevDeploy::createDeploymentContactTemplate($deployment, $contactName, $contactInfo, $modrevision) === false) { $viewData->header = $this->getErrorHeader('contact_template_error'); $viewData->error = 'Unable to write contact tempalte information for ' . $contactName . ' into ' . $deployment . ' Deployment'; $this->sendError('generic_error', $viewData); } $viewData->deployment = $deployment; $viewData->contact = $contactName; $this->sendResponse('contact_template_write', $viewData); }