_user_details = $user_details; } public function getAllTemplate($templateID = null, $userID = null) { $condition = array( 'form_id' => static::$_formID, ); if (!is_null($templateID)) { $condition = array_merge($condition, array('id' => $templateID)); } if (!is_null($userID)) { $condition = array_merge($condition, array('user_id' => $userID)); } return static::$_emailTemplateModel->get( array( 'id', 'title', 'sub', 'body' ), $condition ); } public function getATemplate($templateID) { return $this->getAllTemplate($templateID); } public function saveTemplate($templateDetail) { return static::$_emailTemplateModel->insert( array( "title"=> $templateDetail->title, "sub"=> $templateDetail->sub, "body"=> $templateDetail->body, "form_id"=> static::$_formID, "user_id"=> $this->_user_details['id'], "user_ip"=>$this->_user_details['ip'], "created_at"=> $this->_user_details['time'], "updated_at"=> $this->_user_details['time'] ) ); } public function updateTemplate($templateDetail) { return static::$_emailTemplateModel->update( array( "title"=> $templateDetail->title, "sub"=> $templateDetail->sub, "body"=> $templateDetail->body, "form_id"=> static::$_formID, "user_id"=> $this->_user_details['id'], "user_ip"=>$this->_user_details['ip'], "updated_at"=> $this->_user_details['time'] ), array( "id" => $templateDetail->id ) ); } public function deleteTemplate($templateID) { return static::$_emailTemplateModel->delete( array( 'id' => $templateID, 'form_id' => static::$_formID, ) ); } public function duplicateTemplate($templateID) { $templateDetail = static::$_emailTemplateModel->get( array( 'id' => $templateID, 'form_id' => static::$_formID, ) ); if (is_wp_error($templateDetail) || empty($templateDetail)) { return $templateDetail; } $title = empty($templateDetail[0]->title) ? "Duplicate of Template #$templateID" : "Duplicate of $templateDetail[0]->title"; $templateDetail[0]->title = $title; return $this->saveTemplate($templateDetail); } public function duplicateAllTempInAForm($oldFromId) { $allCols = ["title","sub","body","form_id","user_id","user_ip","created_at","updated_at"]; $dupData = array( "title", "sub", "body", static::$_formID, $this->_user_details['id'], $this->_user_details['ip'], $this->_user_details['time'], $this->_user_details['time'] ); return static::$_emailTemplateModel->duplicate( $allCols, $dupData, ['form_id' => $oldFromId] ); } }