Exemple #1
0
 public function insert()
 {
     try {
         $fields = $this->_getFields();
         $input = $this->_controller->getRequest()->getPost(null);
         require_once 'Sitengine/String.php';
         $id = Sitengine_String::createId();
         $data = array();
         $notifyNewUser = $this->_controller->getRequest()->getPost('notifyNewUser');
         if ($notifyNewUser) {
             $password = Sitengine_String::createId(8);
         } else {
             $name = 'password';
             $password = $this->_controller->getRequest()->getPost($name);
             if (Sitengine_Validator::nada($this->_controller->getRequest()->getPost($name))) {
                 $message = $this->_controller->getTranslate()->translate('hintsPasswordRequired');
                 $this->_controller->getStatus()->addHint($name, $message);
             }
         }
         if (!$this->_controller->getPermiso()->getUsersTable()->checkUserModifyData($this->_controller->getStatus(), $this->_controller->getRequest(), $this->_controller->getTranslate())) {
             return null;
         }
         $this->_controller->getFrontController()->getPermiso()->getUsersTable()->handleInsertUploads($id);
         foreach ($fields as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         require_once 'Zend/Date.php';
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data['id'] = $id;
         # make names lowercase
         $data['name'] = mb_strtolower($data['name']);
         # encrypt password
         $data['password'] = md5($password);
         $data = array_merge($data, $this->_controller->getFrontController()->getPermiso()->getUsersTable()->getFileData());
         #Sitengine_Debug::print_r($data);
         $insertId = $this->_controller->getFrontController()->getPermiso()->getUsersTable()->insertOrRollback($data);
         if (!$insertId) {
             $error = $this->_controller->getFrontController()->getPermiso()->getUsersTable()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         if ($notifyNewUser) {
             $this->_sendNotifyNewUserMail($data, $password);
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Permiso/Backend/Users/Exception.php';
         throw new Sitengine_Permiso_Backend_Users_Exception('insert error', $exception);
     }
 }
Exemple #2
0
 public function insert()
 {
     try {
         $this->_payloads->start();
         $fields = $this->_getFields();
         $input = $this->_controller->getRequest()->getPost(null);
         $id = Sitengine_String::createId();
         $data = $this->_controller->getFrontController()->getNewsletterPackage()->getCampaignsTable()->getDefaultPermissionData($this->_controller->getPermiso(), $this->_controller->getFrontController()->getNewsletterPackage()->getOwnerGroup());
         if (!$this->_checkInput()) {
             return null;
         }
         foreach ($fields[self::FIELDS_ONOFF] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? 1 : 0;
         }
         foreach ($fields[self::FIELDS_NORMAL] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data['id'] = $id;
         ### statically set permissions ###
         $ownerGroup = $this->_controller->getFrontController()->getNewsletterPackage()->getOwnerGroup();
         $gid = $this->_controller->getPermiso()->getDirectory()->getGroupId($ownerGroup);
         $gid = !is_null($gid) ? $gid : Sitengine_Permiso::GID_ADMINISTRATORS;
         $uid = $this->_controller->getPermiso()->getAuth()->getId();
         $data[Sitengine_Permiso::FIELD_UID] = $uid;
         $data[Sitengine_Permiso::FIELD_GID] = $gid;
         $data[Sitengine_Permiso::FIELD_RAG] = 1;
         $data[Sitengine_Permiso::FIELD_RAW] = 1;
         $data[Sitengine_Permiso::FIELD_UAG] = 1;
         $data[Sitengine_Permiso::FIELD_UAW] = 0;
         $data[Sitengine_Permiso::FIELD_DAG] = 1;
         $data[Sitengine_Permiso::FIELD_DAW] = 0;
         ### statically set permissions ###
         #Sitengine_Debug::print_r($data);
         $insertId = $this->_controller->getFrontController()->getNewsletterPackage()->getCampaignsTable()->insertOrRollback($data);
         if (!$insertId) {
             $error = $this->_controller->getFrontController()->getNewsletterPackage()->getCampaignsTable()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Newsletter/Backend/Campaigns/Exception.php';
         throw new Sitengine_Newsletter_Backend_Campaigns_Exception('insert error', $exception);
     }
 }
Exemple #3
0
 public function insert()
 {
     try {
         $parentId = $this->_controller->getEntity()->getAncestorId();
         $fields = $this->_getFields();
         $input = $this->_controller->getRequest()->getPost(null);
         $id = Sitengine_String::createId();
         $data = $this->_controller->getFrontController()->getBlogPackage()->getCommentsTable()->getDefaultPermissionData($this->_controller->getPermiso(), $this->_controller->getFrontController()->getBlogPackage()->getOwnerGroup());
         if (!$this->_checkInput()) {
             return null;
         }
         foreach ($fields[self::FIELDS_ONOFF] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? 1 : 0;
         }
         foreach ($fields[self::FIELDS_NORMAL] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         $data['id'] = $id;
         $data['parentId'] = $parentId;
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data['origin'] = $this->_controller->getFrontController()->getBlogPackage()->getName();
         #Sitengine_Debug::print_r($data);
         $data['approve'] = 1;
         $insertId = $this->_controller->getFrontController()->getBlogPackage()->getCommentsTable()->insertOrRollback($data);
         if (!$insertId) {
             $error = $this->_controller->getFrontController()->getBlogPackage()->getCommentsTable()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Blog/Frontend/Blogs/Posts/Comments/Exception.php';
         throw new Sitengine_Blog_Frontend_Blogs_Posts_Comments_Exception('insert error', $exception);
     }
 }
Exemple #4
0
 public function insert()
 {
     try {
         $this->_payloads->start();
         $fields = $this->_getFields();
         $input = $this->_controller->getRequest()->getPost(null);
         $id = Sitengine_String::createId();
         $data = array();
         if (!$this->_checkInput()) {
             return null;
         }
         foreach ($fields[self::FIELDS_ONOFF] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? 1 : 0;
         }
         foreach ($fields[self::FIELDS_NORMAL] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data['id'] = $id;
         #$data[Sitengine_Permiso::FIELD_OID] = $this->_controller->getPermiso()->getOrganization()->getId();
         #Sitengine_Debug::print_r($data);
         $affectedRows = $this->_controller->getRecord()->insert($data);
         if (!$affectedRows) {
             $error = $this->_controller->getRecord()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Blog/Frontend/Blogs/Exception.php';
         throw new Sitengine_Blog_Frontend_Blogs_Exception('insert error', $exception);
     }
 }
Exemple #5
0
 public function insert()
 {
     try {
         $groupId = $this->_controller->getEntity()->getAncestorId();
         $fields = $this->_getFields();
         $input = $this->_controller->getRequest()->getPost(null);
         require_once 'Sitengine/String.php';
         $id = Sitengine_String::createId();
         $data = array();
         if (!$this->_checkInput()) {
             return null;
         }
         foreach ($fields as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         require_once 'Zend/Date.php';
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data['id'] = $id;
         $data['groupId'] = $groupId;
         #Sitengine_Debug::print_r($data);
         $insertId = $this->_controller->getFrontController()->getPermiso()->getMembershipsTable()->insertOrRollback($data);
         if (!$insertId) {
             $error = $this->_controller->getFrontController()->getPermiso()->getMembershipsTable()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Permiso/Backend/Groups/Members/Exception.php';
         throw new Sitengine_Permiso_Backend_Groups_Members_Exception('insert error', $exception);
     }
 }
Exemple #6
0
 public function log($source, $action, $code = null, $message = null)
 {
     try {
         /*
         if(
         	!$this->_permiso->getAuth()->hasIdentity() &&
         	($source != 'permiso' && $action != 'login')
         ) {
         	return false;
         }
         */
         require_once 'Sitengine_String.php';
         require_once 'Zend/Date.php';
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data = array('id' => Sitengine_String::createId(), 'uid' => $this->_permiso->getAuth()->getId(), 'name' => $this->_permiso->getAuth()->getIdentity(), 'cdate' => $date->get(Zend_Date::ISO_8601), 'ip' => $_SERVER['REMOTE_ADDR'], 'source' => $source, 'action' => $action, 'code' => $code, 'message' => $message);
         return $this->_database->insert($this->_permiso->getAuditTableName(), $data);
     } catch (Exception $exception) {
         require_once 'Sitengine/Permiso/Exception.php';
         throw new Sitengine_Permiso_Exception('log error', $exception);
     }
 }
Exemple #7
0
 public function assignFromList($filename, array $data)
 {
     try {
         # sanitize data
         foreach ($data as $k => $v) {
             if (!preg_match('/^(cdate|mdate|gid|parentId)$/', $k)) {
                 unset($data[$k]);
             }
         }
         $sourcePath = $this->_controller->getTempDir() . '/' . $filename;
         if (!is_writeable($sourcePath) || !is_file($sourcePath)) {
             return 0;
         }
         $id = Sitengine_String::createId();
         $data['id'] = $id;
         #$data[Sitengine_Permiso::FIELD_OID] = $this->_controller->getPermiso()->getOrganization()->getId();
         $data[Sitengine_Permiso::FIELD_UID] = $this->_controller->getPermiso()->getAuth()->getId();
         $data[Sitengine_Permiso::FIELD_RAG] = 1;
         $data[Sitengine_Permiso::FIELD_RAW] = 1;
         $data[Sitengine_Permiso::FIELD_UAG] = 1;
         $data[Sitengine_Permiso::FIELD_UAW] = 0;
         $data[Sitengine_Permiso::FIELD_DAG] = 1;
         $data[Sitengine_Permiso::FIELD_DAW] = 0;
         $data['publish'] = 1;
         $data['titleLang0'] = basename($filename);
         $this->_controller->getRecord()->handleFileImport($id, $sourcePath);
         $data = array_merge($data, $this->_controller->getRecord()->getFileData());
         #Sitengine_Debug::print_r($data);
         return $this->_controller->getRecord()->insertFileImport($data);
     } catch (Exception $exception) {
         require_once 'Sitengine/Blog/Frontend/Blogs/Posts/Files/Exception.php';
         throw new Sitengine_Blog_Frontend_Blogs_Posts_Files_Exception('assign from list error', $exception);
     }
 }
Exemple #8
0
 public function insert()
 {
     try {
         $this->_payloads->start();
         $parentId = $this->_controller->getEntity()->getAncestorId();
         $fields = $this->_getFields();
         $input = $this->_controller->getRequest()->getPost(null);
         $id = Sitengine_String::createId();
         $data = $this->_controller->getFrontController()->getBlogPackage()->getFilesTable()->getDefaultPermissionData($this->_controller->getPermiso(), $this->_controller->getFrontController()->getBlogPackage()->getOwnerGroup());
         $name = 'file1Original';
         $upload = new Sitengine_Upload($name);
         if (!$upload->isFile()) {
             $message = $this->_controller->getTranslate()->translate('hintsFile1OriginalRequired');
             $this->_controller->getStatus()->addHint($name, $message);
             return null;
         }
         if (!$this->_checkInput()) {
             return null;
         }
         $this->_controller->getFrontController()->getBlogPackage()->getFilesTable()->handleInsertUploads($id);
         foreach ($fields[self::FIELDS_ONOFF] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? 1 : 0;
         }
         foreach ($fields[self::FIELDS_NORMAL] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         $data['id'] = $id;
         $data['parentId'] = $parentId;
         ##$data[Sitengine_Permiso::FIELD_OID] = $this->_controller->getPermiso()->getOrganization()->getId();
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data = array_merge($data, $this->_controller->getFrontController()->getBlogPackage()->getFilesTable()->getFileData());
         #Sitengine_Debug::print_r($data);
         $insertId = $this->_controller->getFrontController()->getBlogPackage()->getFilesTable()->insertOrRollback($data);
         if (!$insertId) {
             $error = $this->_controller->getFrontController()->getBlogPackage()->getFilesTable()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Blog/Backend/Blogs/Posts/Files/Exception.php';
         throw new Sitengine_Blog_Backend_Blogs_Posts_Files_Exception('insert error', $exception);
     }
 }
Exemple #9
0
 public function insert($type, $parentId)
 {
     try {
         $this->_payloads->start();
         $fields = $this->_getFields($type);
         $input = $this->_controller->getRequest()->getPost(null);
         $id = Sitengine_String::createId();
         $data = array();
         if ($type == Sitengine_Sitemap::ITEMTYPE_FILE) {
             $this->_checkUpload(true);
         }
         if (!$this->_checkInput($type)) {
             return null;
         }
         $this->_controller->getRecord()->handleInsertUploads($id);
         foreach ($fields[self::FIELDS_ONOFF] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? 1 : 0;
         }
         foreach ($fields[self::FIELDS_NORMAL] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         $data[Sitengine_Record::FIELD_ID] = $id;
         $data['pid'] = $parentId;
         $data['type'] = $type;
         #$data[Sitengine_Permiso::FIELD_OID] = $this->_controller->getPermiso()->getOrganization()->getId();
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         ### statically set permissions ###
         $ownerGroup = $this->_controller->getOwnerGroup();
         $gid = $this->_controller->getPermiso()->getDirectory()->getGroupId($ownerGroup);
         $gid = !is_null($gid) ? $gid : Sitengine_Permiso::GID_ADMINISTRATORS;
         $uid = $this->_controller->getPermiso()->getAuth()->getId();
         $data[Sitengine_Permiso::FIELD_UID] = $uid;
         $data[Sitengine_Permiso::FIELD_GID] = $gid;
         $data[Sitengine_Permiso::FIELD_RAG] = 1;
         $data[Sitengine_Permiso::FIELD_RAW] = 1;
         $data[Sitengine_Permiso::FIELD_UAG] = 1;
         $data[Sitengine_Permiso::FIELD_UAW] = 0;
         $data[Sitengine_Permiso::FIELD_DAG] = 1;
         $data[Sitengine_Permiso::FIELD_DAW] = 0;
         ### statically set permissions ###
         $data = array_merge($data, $this->_controller->getRecord()->getFileData());
         #Sitengine_Debug::print_r($data);
         $affectedRows = $this->_controller->getRecord()->insert($data);
         if (!$affectedRows) {
             $error = $this->_controller->getRecord()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Sitemap/Backend/Exception.php';
         throw new Sitengine_Sitemap_Backend_Exception('insert error', $exception);
     }
 }
Exemple #10
0
 protected function _save(Sitengine_Permiso_Model_Account_Form $form)
 {
     require_once 'Sitengine/Status.php';
     $status = Sitengine_Status::getInstance();
     if (!$form->isValid($_POST)) {
         foreach ($form->getMessages() as $key => $messages) {
             $status->addHint($key, $messages);
         }
         return false;
     }
     if ($this->_getUserRow() === null) {
         $this->_userRow = $this->getPermiso()->getUsersTable()->createRow($form->getValues());
         $this->_getUserRow()->setId(Sitengine_String::createId());
         $this->_getUserRow()->setCdate($this->getPermiso()->getUsersTable()->getNow());
         $this->_getUserRow()->setPassword($this->_makePasswordHash($form->getPasswordVal()));
     } else {
         $password = $form->getPasswordVal() ? $this->_makePasswordHash($form->getPasswordVal()) : $this->_getUserRow()->getPassword();
         $this->_getUserRow()->setFromArray($form->getValues());
         $this->_getUserRow()->setPassword($password);
     }
     try {
         $this->_getUserRow()->setMdate($this->getPermiso()->getUsersTable()->getNow());
         $this->_getUserRow()->setEnabled(1);
         # TODO - a better way for use in other contexts
         $this->_getUserRow()->save();
     } catch (Exception $exception) {
         if ($this->getPermiso()->getUsersTable()->checkModifyException($exception)) {
             throw $exception;
         }
         switch ($this->getPermiso()->getUsersTable()->getError()) {
             case 'nameExists':
                 $hint = self::HINT_NAME_EXISTS;
                 break;
             case 'nicknameExists':
                 $hint = self::HINT_NICKNAME_EXISTS;
                 break;
             default:
                 $hint = self::HINT_UNKNOWN_ERROR;
                 break;
         }
         $message = $this->_getTranslator()->translate($hint);
         $status->addHint($hint, $message);
         return false;
     }
     return true;
 }
Exemple #11
0
 protected function _insertVideoPost($blogId)
 {
     try {
         $this->_payloads->start();
         $input = $this->_controller->getRequest()->getPost(null);
         $fields = $this->_getVideoPostFields();
         $id = Sitengine_String::createId();
         $data = $this->_controller->getFrontController()->getBlogPackage()->getPostsTable()->getDefaultPermissionData($this->_controller->getPermiso(), $this->_controller->getFrontController()->getBlogPackage()->getOwnerGroup());
         if (!$this->_checkVideoPostInput()) {
             return null;
         }
         foreach ($fields[self::FIELDS_ONOFF] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? 1 : 0;
         }
         foreach ($fields[self::FIELDS_NORMAL] as $k => $v) {
             $data[$k] = array_key_exists($k, $input) ? $input[$k] : $v;
         }
         $date = new Zend_Date();
         $date->setTimezone('UTC');
         $data['cdate'] = $date->get('YYYY-MM-dd HH:mm:ss', Sitengine_Env::LANGUAGE_EN);
         $data['mdate'] = $data['cdate'];
         $data['id'] = $id;
         $data['blogId'] = $blogId;
         $data['type'] = Sitengine_Blog_Posts_Table::TYPE_VIDEO;
         ##$data[Sitengine_Permiso::FIELD_OID] = $this->_controller->getPermiso()->getOrganization()->getId();
         #Sitengine_Debug::print_r($data);
         $affectedRows = $this->_controller->getFrontController()->getBlogPackage()->getPostsTable()->insertOrRollback($data);
         if (!$affectedRows) {
             $error = $this->_controller->getFrontController()->getBlogPackage()->getPostsTable()->getError();
             if ($error === null) {
                 return null;
             }
             $message = $this->_controller->getTranslate()->translate('hints' . ucfirst($error));
             $this->_controller->getStatus()->addHint('record', $message);
             return null;
         }
         return $data;
     } catch (Exception $exception) {
         require_once 'Sitengine/Blog/Backend/Blogs/Posts/Exception.php';
         throw new Sitengine_Blog_Backend_Blogs_Posts_Exception('insert error', $exception);
     }
 }