public function indexAction() { if ($this->session->get('successfu_edite')) { $this->view->successfu_edite = true; $this->session->clear('successfu_edite'); } if ($this->session->get('error_permision')) { $this->view->error_permision = $this->session->get('error_permision'); $this->session->clear('error_permision'); } $request = $this->getRequest(); $this->setViewChange('form'); if ($request->isPost()) { if (!WM_Users::allow('edit', $this->getRequest()->getController())) { $this->session->set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/settings/'); } if (JO_Registry::get('license_powered_check') != 'false') { $request->setParams('config_hide_brand', 0); } Model_Settings::updateAll($request->getParams()); $config = $request->getPost('config'); if (isset($config['config_currency_auto_update']) && $config['config_currency_auto_update'] == 1) { WM_Currency::updateCurrencies($config['config_currency'], true); } $this->session->set('successfu_edite', true); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/settings/'); } $this->getForm(); }
public function deleteAction() { $this->setInvokeArg('noViewRenderer', true); if (!WM_Users::allow('delete', $this->getRequest()->getController())) { echo $this->translate('You do not have permission to this action'); } else { Model_Usergroups::deleteUserGroup($this->getRequest()->getPost('id')); } }
public function inviteAction() { if (!WM_Users::allow('create', $this->getRequest()->getController())) { echo $this->translate('You do not have permission to this action'); } else { $this->setInvokeArg('noViewRenderer', true); $info = Model_Users::getWait($this->getRequest()->getPost('id')); if ($info) { $this->view->shared_content = WM_Router::create($this->getRequest()->getBaseUrl() . '?controller=users&action=register&user_id=-1&key=' . $info['key']); $result = Model_Email::send($info['email'], Helper_Config::get('noreply_mail'), sprintf($this->translate('You have been invited to join %s'), Helper_Config::get('site_name')), $this->view->render('invite', 'invites')); Model_Users::invite($this->getRequest()->getPost('id')); } } }
public function __construct() { $request = JO_Request::getInstance(); parent::__construct(); if (Model_Allowips::getTotalWords()) { if (!Model_Allowips::getTotalWords(array('filete_ip' => $request->getClientIp()))) { if (!in_array($request->getController(), array('login', 'error'))) { $this->forward('error', 'noPermission'); } } } //set default timezone if is not set if (!ini_get('date.timezone')) { ini_set('date.timezone', 'UTC'); } WM_Users::initSession(JO_Session::get('user[user_id]')); if (!JO_Session::get('user[user_id]')) { JO_Session::set('user', array('user_id' => 0)); } //admin check login $login_page = $request->getController() != 'login'; if (JO_Session::get('user[is_developer]')) { $login_page = false; } else { if (JO_Session::get('user[is_admin]')) { $login_page = false; } } if (in_array($request->getController(), array('login', 'error'))) { $login_page = false; } if ($login_page) { $this->forward('login', 'index'); } //admin top menu Helper_Config::set('adminmenupermisions', WM_Users::initPermision()); //no permisions $controller_name = JO_Front::getInstance()->formatControllerName($request->getController()); if (!class_exists($controller_name, false)) { JO_Loader::loadFile(APPLICATION_PATH . '/modules/' . $request->getModule() . '/controllers/' . JO_Front::getInstance()->classToFilename($controller_name)); } if (method_exists($controller_name, 'config')) { $data = call_user_func(array($controller_name, 'config')); if (isset($data['has_permision']) && $data['has_permision'] && !WM_Users::allow('read', $request->getController())) { $this->forward('error', 'noPermission'); } } WM_Rebuild::getInformation(); WM_Licensecheck::checkIt(); }
public function deleteMultiAction() { $this->setInvokeArg('noViewRenderer', true); if (!WM_Users::allow('delete', $this->getRequest()->getController())) { echo $this->translate('You do not have permission to this action'); } else { $action_check = $this->getRequest()->getPost('action_check'); if ($action_check && is_array($action_check)) { foreach ($action_check as $record_id) { Model_Dictionary::delete($record_id); } } } }
public function editAction() { if (!WM_Users::allow('edit', $this->getRequest()->getController())) { $this->session->set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/languages/'); } $this->setViewChange('language_form'); if ($this->getRequest()->isPost()) { Model_Language::editeLanguage($this->getRequest()->getQuery('id'), $this->getRequest()->getParams()); $this->session->set('successfu_edite', true); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/languages/'); } $this->getForm(); }
public function indexAction() { $opts = array('root' => BASE_PATH . '/uploads/data/', 'URL' => 'uploads/data/', 'rootAlias' => $this->translate('Home'), 'disabled' => array(), 'uploadAllow' => array('image/', 'application/pdf', 'application/msword', 'application/vnd.openxmlformats', 'application/xml', 'application/vnd.ms-powerpoint'), 'uploadDeny' => array('application/'), 'uploadOrder' => 'deny,allow', 'mimeDetect' => 'jo'); if (!WM_Users::allow('create', $this->getRequest()->getController())) { $opts['disabled'] = array_merge($opts['disabled'], array('rotateRight', 'rotateLeft', 'extract', 'archive', 'upload', 'copy', 'mkdir', 'mkfile', 'rename', 'paste', 'rm', 'duplicate', 'edit', 'resize')); } else { if (!WM_Users::allow('edit', $this->getRequest()->getController())) { $opts['disabled'] = array_merge($opts['disabled'], array('rotateRight', 'rotateLeft', 'extract', 'archive', 'upload', 'copy', 'mkdir', 'mkfile', 'rename', 'paste', 'rm', 'duplicate', 'edit', 'resize')); } } $flm = new Helper_Elfinder($opts); $flm->run(); $this->noViewRenderer(true); }
public function indexAction() { if (!WM_Users::allow('edit', 'modules')) { JO_Session::set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/modules_oauth/'); } $request = $this->getRequest(); if (JO_Session::get('successfu_edite')) { $this->view->successfu_edite = true; JO_Session::clear('successfu_edite'); } if ($request->isPost()) { //validate app id $validate = new Helper_Modules_Facebook($request->getPost('facebook[facebook_oauth_key]'), $request->getPost('facebook[facebook_oauth_secret]')); if ($validate->checkValidAppId()) { Model_Settings::updateAll(array('facebook' => $request->getPost('facebook'))); JO_Session::set('successfu_edite', true); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/modules_oauth_facebook/'); } else { $this->view->error = $this->translate('Invalid appID'); } } $this->view->modules_url = $this->getRequest()->getModule() . '/modules'; $this->view->modules_oauth_url = $this->getRequest()->getModule() . '/modules_oauth'; $methods = $this->getClassResources(); $this->view->methods = array(); $ignore = array('index', 'error404', 'install', 'uninstall'); foreach ($methods as $type => $mods) { foreach ($mods as $key => $value) { if (in_array($value, $ignore)) { continue; } if ($type == 'actions') { $this->view->methods[$type][] = array('title' => $this->translate($value), 'edit' => $this->getRequest()->getModule() . '/modules_oauth_facebook/' . strtolower($value)); } elseif ($type == 'radio') { $this->view->methods[$type][] = array('title' => $this->translate(str_replace('_', ' ', $value)), 'key' => 'facebook_' . strtolower($value)); } } } $store_config = Model_Settings::getSettingsPairs(array('filter_group' => 'facebook')); foreach ($store_config as $key => $data) { if ($request->issetPost('facebook[' . $key . ']')) { $this->view->{$key} = $request->getPost('facebook[' . $key . ']'); } else { $this->view->{$key} = $data; } } }
public function indexAction() { $request = $this->getRequest(); $this->view->modules = self::getModulesList(); if ($request->getQuery('mod') && in_array($request->getQuery('mod'), $this->view->modules)) { $this->view->mod = $request->getQuery('mod'); } else { $this->view->mod = 'admin'; $request->setParams('mod', 'admin'); } if ($this->session->get('successfu_edite')) { $this->view->successfu_edite = true; $this->session->clear('successfu_edite'); } if ($this->session->get('error_permision')) { $this->view->error_permision = $this->session->get('error_permision'); $this->session->clear('error_permision'); } if ($request->isPost()) { if (!WM_Users::allow('edit', $this->getRequest()->getController())) { $this->session->set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/translate/'); } Model_Translate::setTranslate($request->getParams()); $this->session->set('successfu_edite', true); if ($request->getPost('hidden_mod') != $this->view->mod) { $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/translate/?mod=' . $request->getPost('hidden_mod')); } else { $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/translate/?mod=' . $this->view->mod); } } $this->view->translated = Model_Translate::getTranslate($this->view->mod); if ($this->view->translated) { foreach ($this->view->translated as $k => $v) { $this->view->translated[$k]['keyword'] = htmlspecialchars($v['keyword'], ENT_QUOTES, 'utf-8'); } } }
public function indexAction() { if (!WM_Users::allow('create', $this->getRequest()->getController())) { $this->forward('error', 'noPermission'); } $request = $this->getRequest(); $this->view->user = $request->getPost('user'); $this->view->title = $request->getPost('title'); $this->view->description = $request->getPost('description'); $this->view->users = Model_Users::getUsers(array('filter_email' => '@')); if (JO_Session::get('successfu_edite')) { $this->view->successfu_edite = true; JO_Session::clear('successfu_edite'); } $this->view->errors = array(); if ($request->isPost()) { if ($this->getRequest()->issetPost('user')) { $result = ''; if ($this->getRequest()->getPost('user') == 'all') { $email_list = Model_Users::getUsers(array('filter_email' => '@')); foreach ($email_list as $email) { if (JO_Validate::validateEmail($email["email"])) { $result = Model_Email::send($email["email"], Helper_Config::get('noreply_mail'), $this->getRequest()->getPost('title'), html_entity_decode($this->getRequest()->getPost('description'), ENT_QUOTES, 'utf-8')); } } } elseif (JO_Validate::validateEmail($this->getRequest()->getPost('user'))) { $result = Model_Email::send($this->getRequest()->getPost('user'), Helper_Config::get('noreply_mail'), $this->getRequest()->getPost('title'), html_entity_decode($this->getRequest()->getPost('description'), ENT_QUOTES, 'utf-8')); } if ($result) { JO_Session::set('successfu_edite', true); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/massmail/'); } else { $this->view->errors['no_emails'] = $this->translate('There was an error with sending the mail!'); } } } }
public static function initPermision() { $request = JO_Request::getInstance(); if ($request->getModule() == 'admin' && JO_Session::get('user[is_admin]')) { $files = glob(APPLICATION_PATH . '/modules/' . $request->getModule() . '/controllers/*.php'); $temporary_for_menu = array(); $temporary_for_permision = array(); $sort_order = $sort_order2 = array(); if ($files) { foreach ($files as $d => $file) { $name = basename($file, '.php'); JO_Loader::loadFile($file); if (method_exists($name, 'config')) { $data = call_user_func(array($name, 'config')); if (!isset($data['has_permision']) || !$data['has_permision']) { continue; } if (!$data['in_menu'] || !WM_Users::allow('read', $data['permision_key'])) { continue; } if (isset($sort_order2[$data['menu']])) { $sort_order2[$data['menu']] = min($sort_order[$data['menu']], (int) (isset($data['sort_order']) ? $data['sort_order'] : 0)); } else { $sort_order2[$data['menu']] = (int) (isset($data['sort_order']) ? $data['sort_order'] : 0); } $sort_order[$data['menu']][$d] = (int) (isset($data['sort_order']) ? $data['sort_order'] : 0); $temporary_for_menu[$data['menu']][$d] = array('name' => $data['name'], 'key' => $data['permision_key'], 'has_permision' => $data['has_permision'], 'menu' => $data['menu'], 'href' => $request->getBaseUrl() . $request->getModule() . '/' . (strtolower($name) != 'indexcontroller' ? str_replace('controller', '', strtolower($name)) . '/' : '')); } } } array_multisort($sort_order2, SORT_ASC, $temporary_for_menu); foreach ($temporary_for_menu as $k => $t) { array_multisort($sort_order[$k], SORT_ASC, $temporary_for_menu[$k]); } return $temporary_for_menu; } }
public function _initNoPermision() { $request = JO_Request::getInstance(); if ($request->getModule() == 'install') { return ''; } if ($request->getModule() == 'admin') { $controller_name = JO_Front::getInstance()->formatControllerName($request->getController()); if (!class_exists($controller_name, false)) { JO_Loader::loadFile(APPLICATION_PATH . '/modules/' . $request->getModule() . '/controllers/' . JO_Front::getInstance()->classToFilename($controller_name)); } if (method_exists($controller_name, 'config')) { $data = call_user_func(array($controller_name, 'config')); if ($data['has_permision'] && !WM_Users::allow('read', $request->getController())) { JO_Action::getInstance()->forward('error', 'noPermission'); } } } }
public function deleteMultiAction() { $this->noViewRenderer(true); if (!WM_Users::allow('delete', $this->getRequest()->getController())) { $this->session->set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/boards/'); } $action_check = $this->getRequest()->getPost('action_check'); if ($action_check && is_array($action_check)) { foreach ($action_check as $record_id) { Model_Boards::delete($record_id); } } }
public function indexAction() { if (!WM_Users::allow('edit', 'modules')) { JO_Session::set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/modules_storage/'); } $request = $this->getRequest(); if (JO_Session::get('successfu_edite')) { $this->view->successfu_edite = true; JO_Session::clear('successfu_edite'); } if ($request->isPost()) { //validate app id $auth = new JO_Api_Rackspace_Authentication($request->getPost('rackspace[rackspace_api_username]'), $request->getPost('rackspace[rackspace_api_key]'), $request->getPost('rackspace[rackspace_account_name]') ? $request->getPost('rackspace[rackspace_account_name]') : NULL, $request->getPost('rackspace[rackspace_authentication_service_uri]') == 'UK' ? JO_Api_Rackspace_Authentication::UK_AUTHURL : JO_Api_Rackspace_Authentication::US_AUTHURL); $loged = false; try { $loged = $auth->authenticate(); $connect = new JO_Api_Rackspace_Connection($auth); try { $images = $connect->get_container($request->getPost('rackspace[rackspace_pins_contaners]')); if (!$images->cdn_uri) { $this->view->error = sprintf(self::translate('Authentication response did not indicate CDN availability for "%s"'), $request->getPost('rackspace[rackspace_pins_contaners]')); $loged = false; } } catch (JO_Exception $e) { $this->view->error = sprintf($this->translate('Container "%s" not found.'), $request->getPost('rackspace[rackspace_pins_contaners]')); $loged = false; } try { $images = $connect->get_container($request->getPost('rackspace[rackspace_users_contaners]')); if (!$images->cdn_uri) { $this->view->error = sprintf(self::translate('Authentication response did not indicate CDN availability for "%s"'), $request->getPost('rackspace[rackspace_pins_contaners]')); $loged = false; } } catch (JO_Exception $e) { $this->view->error = sprintf($this->translate('Container "%s" not found.'), $request->getPost('rackspace[rackspace_pins_contaners]')); $loged = false; } } catch (JO_Exception $e) { $this->view->error = $e->getMessage(); $loged = false; } if ($loged) { Model_Settings::updateAll(array('rackspace' => $request->getPost('rackspace'))); JO_Session::set('successfu_edite', true); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/modules_storage_rackspace/'); } else { //$this->view->error = $this->translate('Invalid App configuration'); } } $this->view->modules_url = $this->getRequest()->getModule() . '/modules'; $this->view->modules_storage_url = $this->getRequest()->getModule() . '/modules_storage'; $store_config = Model_Settings::getSettingsPairs(array('filter_group' => 'rackspace')); if (!isset($store_config['rackspace_api_username'])) { $store_config['rackspace_api_username'] = ''; } if (!isset($store_config['rackspace_api_key'])) { $store_config['rackspace_api_key'] = ''; } if (!isset($store_config['rackspace_pins_contaners'])) { $store_config['rackspace_pins_contaners'] = ''; } if (!isset($store_config['rackspace_pins_contaners_cdn'])) { $store_config['rackspace_pins_contaners_cdn'] = ''; } if (!isset($store_config['rackspace_users_contaners'])) { $store_config['rackspace_users_contaners'] = ''; } if (!isset($store_config['rackspace_users_contaners_cdn'])) { $store_config['rackspace_users_contaners_cdn'] = ''; } if (!isset($store_config['rackspace_account_name'])) { $store_config['rackspace_account_name'] = ''; } if (!isset($store_config['rackspace_authentication_service_uri'])) { $store_config['rackspace_authentication_service_uri'] = ''; } foreach ($store_config as $key => $data) { if ($request->issetPost('rackspace[' . $key . ']')) { $this->view->{$key} = $request->getPost('rackspace[' . $key . ']'); } else { $this->view->{$key} = $data; } } }
public function deleteImageAction() { if (!WM_Users::allow('delete', $this->getRequest()->getController())) { $this->forward('error', 'noPermission'); } $gallery_id = (int) $this->getRequest()->getRequest('id'); $this->setInvokeArg('noViewRenderer', true); $image_id = $this->getRequest()->getPost('id'); if ($gallery_id) { echo Model_Gallery::deleteImage($image_id); } else { $temporary_images = JO_Session::get('temporary_images'); $temp = array(); foreach ($temporary_images as $key => $image) { if ($key != $image_id) { $temp[] = $image; } else { $mi = new Helper_Images(); $mi->deleteImages($image['image']); } } echo 'ok'; JO_Session::set('temporary_images', $temp); } }
public function indexAction() { if (!WM_Users::allow('edit', 'modules')) { JO_Session::set('error_permision', $this->translate('You do not have permission to this action')); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/modules_storage/'); } $request = $this->getRequest(); if (JO_Session::get('successfu_edite')) { $this->view->successfu_edite = true; JO_Session::clear('successfu_edite'); } if ($request->isPost()) { //validate app id $this->view->error = false; try { $s3 = new JO_Api_Amazon($request->getPost('amazons3[amazons3_access_key]'), $request->getPost('amazons3[amazons3_secret_key]')); //$s3->putBucket($request->getPost('amazons3[amazons3_bucklet]'), JO_Api_Amazon::ACL_PUBLIC_READ); $loged = $s3->getBucketLogging($request->getPost('amazons3[amazons3_bucklet]')); if ($loged) { $upload = $s3->putObjectString('test', $request->getPost('amazons3[amazons3_bucklet]'), 'test_upload.txt', JO_Api_Amazon::ACL_PUBLIC_READ); if (!$upload) { $this->view->error = sprintf($this->translate('Unable to upload to Bucklet "%s"'), $request->getPost('amazons3[amazons3_bucklet]')); $loged = false; } else { $is_file = @file_get_contents(trim($request->getPost('amazons3[amazons3_bucklet_location]'), '/') . '/test_upload.txt'); if ($is_file != 'test') { $this->view->error = sprintf($this->translate('Unable to read test file "%s"'), trim($request->getPost('amazons3[amazons3_bucklet_location]'), '/') . '/test_upload.txt'); $loged = false; } } } else { $this->view->error = sprintf($this->translate('Bucklet "%s" not found'), $request->getPost('amazons3[amazons3_bucklet]')); $loged = false; } } catch (JO_Exception $e) { $this->view->error = $e->getMessage(); $loged = false; } if ($loged) { Model_Settings::updateAll(array('amazons3' => $request->getPost('amazons3'))); JO_Session::set('successfu_edite', true); $this->redirect($this->getRequest()->getBaseUrl() . $this->getRequest()->getModule() . '/modules_storage_amazons3/'); } else { if (!$this->view->error) { $this->view->error = $this->translate('Invalid App configuration'); } } } $this->view->modules_url = $this->getRequest()->getModule() . '/modules'; $this->view->modules_storage_url = $this->getRequest()->getModule() . '/modules_storage'; $store_config = Model_Settings::getSettingsPairs(array('filter_group' => 'amazons3')); if (!isset($store_config['amazons3_access_key'])) { $store_config['amazons3_access_key'] = ''; } if (!isset($store_config['amazons3_secret_key'])) { $store_config['amazons3_secret_key'] = ''; } if (!isset($store_config['amazons3_bucklet'])) { $store_config['amazons3_bucklet'] = ''; } if (!isset($store_config['amazons3_bucklet_location'])) { $store_config['amazons3_bucklet_location'] = ''; } foreach ($store_config as $key => $data) { if ($request->issetPost('amazons3[' . $key . ']')) { $this->view->{$key} = $request->getPost('amazons3[' . $key . ']'); } else { $this->view->{$key} = $data; } } }