• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP MVCUtils类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中MVCUtils的典型用法代码示例。如果您正苦于以下问题:PHP MVCUtils类的具体用法?PHP MVCUtils怎么用?PHP MVCUtils使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了MVCUtils类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: SMARTY_templateLink

 /**
  * Create template link
  * 
  * Will create a link to a template specified by either an 'id' or 'name' 
  * parameter. Any parameters starting with '_' will be added to the query 
  * string (without the _). This allows you to pass extra info in the 
  * link. use parameter target to set the html target value
  */
 public static function SMARTY_templateLink($params)
 {
     global $cfg;
     $text = $params['text'];
     if (isset($params['name'])) {
         $id = MVCUtils::getTemplateID($params['name']);
     } elseif (isset($params['id'])) {
         $id = $params['id'];
     } else {
         //$id = default template
     }
     if (isset($params['target'])) {
         $target = "target='" . $params['target'] . "'";
     } else {
         $target = '';
     }
     $extraQueryInfo = "";
     foreach ($params as $k => $v) {
         if (substr($k, 0, 1) == '_') {
             $k = substr($k, 1);
             $extraQueryInfo .= "&{$k}={$v}";
         }
     }
     $path = $cfg['general']['siteRoot'] . "?templateID={$id}" . $extraQueryInfo;
     return "<a href='{$path}' {$target}>{$text}</a>";
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:34,代码来源:MVC.class.php


示例2: setupTemplate

 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $loginTplID = MVCUtils::getTemplateID('login.tpl');
     $this->assign('loginTplID', $loginTplID);
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:7,代码来源:LoginViewer.class.php


示例3: isValid

 public function isValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['MVC']['dsn']);
     $rules = $db->getAll("SELECT vrclassname, description, fieldname, \r\n\t\t\tfieldvalidators.modulename FROM fieldvalidators, formfields \r\n\t\t\tWHERE formfields.ruleid = fieldvalidators.ruleid\r\n\t\t\tAND formname = '{$this->formName}'");
     //This statement has been removed from the where clause:
     //modulename = '{$this->fieldData['moduleName']}' AND
     $invalidFields = array();
     $sess = Session::getInstance();
     // Validate the submitted fields
     foreach ($rules as $rule) {
         MVCUtils::includeValidator($rule['vrclassname'], $rule['modulename']);
         eval("\$validatorObj = new {$rule['vrclassname']}(\$this->fieldData);");
         $vResult = $validatorObj->isValid($this->fieldData[$rule['fieldname']]);
         if ($vResult !== true) {
             //Put the errors:
             // a) straight into the errors array for backwards compatibility
             // b) into a sub array, whose key is the submitted value for
             //    errorFormName, otherwise use the form name
             $invalidFields[$rule['fieldname']] = $vResult;
             if (!$this->errorFormName) {
                 $invalidFields[$this->formName][$rule['fieldname']] = $vResult;
             } else {
                 $invalidFields[$this->errorFormName][$rule['fieldname']] = $vResult;
             }
         }
         if ($sess->keyExists('auth_user')) {
             BasicLogger::logMessage($sess->getValue('auth_user'), self::module, "debug");
         }
     }
     if (!checkdate($this->fieldData['month'], $this->fieldData['day'], $this->fieldData['year']) || !is_numeric($this->fieldData['month']) || !is_numeric($this->fieldData['day']) || !is_numeric($this->fieldData['year'])) {
         $invalidFields[$this->formName]['form'] = "Invalid Date";
     }
     return $invalidFields;
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:35,代码来源:DPSUserShowDetailsValidator.class.php


示例4: SMARTY_getTemplateID

 public function SMARTY_getTemplateID($params)
 {
     if (isset($params['name'])) {
         return MVCUtils::getTemplateID($params['name']);
     } else {
         return '';
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:8,代码来源:AuthViewer.class.php


示例5: __construct

 /**
  * Construct the object
  * 
  * @param Exception The exception to be made user friendly
  */
 public function __construct($exception)
 {
     global $cfg;
     $this->template = new Smarty();
     $this->template->compile_dir = $cfg['smarty']['compiledir'];
     $this->exception = $exception;
     $this->templateFileName = MVCUtils::findTemplate($cfg['smarty']['RenderedexceptionTemplateFile']);
     $this->_setupTemplate();
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:14,代码来源:RenderedExceptionViewer.class.php


示例6: processInvalid

 protected function processInvalid()
 {
     //No invalid processing required
     if ($this->errors['form']) {
         MVCUtils::redirect(MVCUtils::getTemplateID('dpsuserdirmove.tpl'), array("rootdir" => $this->fieldData['dirID'], "error" => "form"));
     } else {
         MVCUtils::redirect(MVCUtils::getTemplateID('dpsuserdirmove.tpl'), array("rootdir" => $this->fieldData['dirID'], "error" => "perm"));
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:9,代码来源:DPSMoveDirectoryModel.class.php


示例7: smarty_resource_rfile_timestamp

 public static function smarty_resource_rfile_timestamp($templateName, &$timestamp, &$smarty)
 {
     global $cfg;
     $file = MVCUtils::findTemplate($templateName);
     if ($file === false) {
         return false;
     } else {
         return true;
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:10,代码来源:SmartyResources.class.php


示例8: setupTemplate

 protected function setupTemplate()
 {
     parent::setupTemplate();
     $tid = $this->fieldData['editid'];
     $this->assign('templateID', $tid);
     $this->assign('templateFileName', MVCUtils::getTemplateFileName($tid));
     $this->assign('templateModel', MVCUtils::getModelClassNameFromDB($tid));
     $this->assign('templateViewer', MVCUtils::getViewerClassNameFromDB($tid));
     $this->assign('templateRealm', MVCUtils::getRealmIDFromDB($tid));
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:10,代码来源:TemplateEditViewer.class.php


示例9: processInvalid

 protected function processInvalid()
 {
     //No invalid processing required
     if ($this->errors['text']) {
         MVCUtils::redirect(MVCUtils::getTemplateID('dpssteditawitem.tpl'), array("awitemID" => $this->fieldData['awitemID'], "error" => "text"));
     } elseif ($this->errors['style']) {
         MVCUtils::redirect(MVCUtils::getTemplateID('dpssteditawitem.tpl'), array("awitemID" => $this->fieldData['awitemID'], "error" => "style"));
     } elseif ($this->errors['audioID']) {
         MVCUtils::redirect(MVCUtils::getTemplateID('dpssteditawitem.tpl'), array("awitemID" => $this->fieldData['awitemID'], "error" => "audioID"));
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:11,代码来源:DPSUserUpdateAwItemModel.class.php


示例10: processValid

 protected function processValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $where = "id = " . pg_escape_string($this->fieldData['scriptID']);
     $item['name'] = $this->fieldData['name'];
     $item['contents'] = $this->fieldData['content'];
     $item['length'] = 60 * $this->fieldData['mins'] + $this->fieldData['secs'];
     $db->update('scripts', $item, $where, true);
     if (isset($this->fieldData['Submit'])) {
         MVCUtils::redirect(44);
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:13,代码来源:DPSUserEditScript.class.php


示例11: assignViewerNames

 protected function assignViewerNames()
 {
     global $cfg;
     $db = Database::getInstance($cfg['MVC']['dsn']);
     $physicalViewers = MVCUtils::listPresent('viewer');
     for ($i = 0; $i < count($physicalViewers); $i++) {
         $tmp = preg_split('/\\./', $physicalViewers[$i]);
         $physicalViewers[$i] = $tmp[0];
     }
     if (count($physicalViewers) > 0) {
         $this->assign("viewers", $physicalViewers);
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:13,代码来源:AddTemplateViewer.class.php


示例12: isValid

 public function isValid(&$data)
 {
     global $cfg;
     $db = Database::getInstance($cfg['MVC']['dsn']);
     $data = $db->quoteSmart($data);
     $exists = $db->getOne("SELECT COUNT(*) FROM templates WHERE filename = {$data}");
     if ($exists > 0) {
         return 'The specified template is already in use';
     } elseif (MVCUtils::findTemplate($data) === false) {
         return 'The specified template does not exist';
     } else {
         return true;
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:14,代码来源:ValidUnusedTplFile.class.php


示例13: processValid

 protected function processValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $sql = "SELECT COUNT(*) FROM showitems \n\t\t\tWHERE showplanid = " . $this->fieldData['showID'];
     $pos = $db->getOne($sql);
     $pos++;
     $showitem['showplanid'] = $this->fieldData['showID'];
     $showitem['position'] = $pos;
     $showitem['title'] = 'New Item';
     $showitem['length'] = 0;
     $showitem['id'] = '#id#';
     $itemID = $db->insert('showitems', $showitem, true);
     MVCUtils::redirect("58", array("itemID" => $itemID));
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:15,代码来源:DPSUserAddShowItemModel.class.php


示例14: processValid

 protected function processValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $userName = $auth->getUser();
     $sql = "SELECT id FROM dir\n\t\t\t\tWHERE parent = " . $cfg['DPS']['userDirectoryID'] . "\n\t\t\t\tAND name = '" . $userName . "'";
     $dirID = $db->getOne($sql);
     if ($dirID == '') {
         $newdir['name'] = $userName;
         $newdir['parent'] = $cfg['DPS']['userDirectoryID'];
         $newdir['id'] = '#id#';
         $newdir['notes'] = $userName . "'s home directory";
         $newdir['inherit'] = 'f';
         $dirID = $db->insert('dir', $newdir, true);
         $newperm['dirid'] = $dirID;
         $newperm['userid'] = $userID;
         $newperm['permissions'] = 'B' . $cfg['DPS']['fileRW'] . 'B';
         $db->insert('dirusers', $newperm, false);
         //for binary insert
         $sql_gperm['dirid'] = $dirID;
         $sql_gperm['permissions'] = 'B' . $cfg['DPS']['fileRWO'] . 'B';
         $sql_gperm['groupid'] = $cfg['Auth']['AdminGroup'];
         $db->insert('dirgroups', $sql_gperm, false);
     }
     $newscript['name'] = "New Script";
     $newscript['userid'] = $userID;
     $newscript['creationdate'] = time();
     $newscript['id'] = '#id#';
     $newscript['length'] = 0;
     $scriptID = $db->insert('scripts', $newscript, true);
     $newsperm['scriptid'] = $scriptID;
     $newsperm['userid'] = $userID;
     $newsperm['permissions'] = 'B' . $cfg['DPS']['fileRWO'] . 'B';
     //own
     $db->insert('scriptsusers', $newsperm, false);
     //for binary insert
     $gperm['groupid'] = $cfg['Auth']['AdminGroup'];
     $gperm['scriptid'] = $scriptID;
     $gperm['permissions'] = 'B' . $cfg['DPS']['fileRWO'] . 'B';
     $db->insert('scriptsgroups', $gperm, false);
     $scriptdir['scriptid'] = $scriptID;
     $scriptdir['dirid'] = $dirID;
     $scriptdir['linktype'] = 0;
     $db->insert('scriptsdir', $scriptdir, true);
     MVCUtils::redirect(45, array("scriptID" => $scriptID));
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:48,代码来源:DPSUserAddScriptModel.class.php


示例15: processValid

 protected function processValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $userName = $auth->getUser();
     $sql = "SELECT id FROM dir \n\t\t\t\tWHERE parent = " . $cfg['DPS']['userDirectoryID'] . "\n\t\t\t\tAND name = '" . $userName . "'";
     $dirID = $db->getOne($sql);
     if ($dirID == '') {
         $newdir['name'] = $userName;
         $newdir['parent'] = $cfg['DPS']['userDirectoryID'];
         $newdir['id'] = '#id#';
         $newdir['notes'] = $userName . "'s home directory";
         $newdir['inherit'] = 'f';
         $dirID = $db->insert('dir', $newdir, true);
         $newperm['dirid'] = $dirID;
         $newperm['userid'] = $userID;
         $newperm['permissions'] = 'B' . $cfg['DPS']['fileRW'] . 'B';
         $db->insert('dirusers', $newperm, false);
         //for binary
         $sql_gperm['dirid'] = $dirID;
         $sql_gperm['permissions'] = 'B' . $cfg['DPS']['fileRWO'] . 'B';
         $sql_gperm['groupid'] = $cfg['Auth']['AdminGroup'];
         $db->insert('dirgroups', $sql_gperm, false);
     }
     $newshow['name'] = "New Show";
     $newshow['userid'] = $userID;
     $newshow['creationdate'] = time();
     $newshow['showdate'] = mktime(date('H', time()), 0, 0) + 604800;
     $newshow['completed'] = 'f';
     $newshow['id'] = '#id#';
     $showID = $db->insert('showplans', $newshow, true);
     $newsperm['showplanid'] = $showID;
     $newsperm['userid'] = $userID;
     $newsperm['permissions'] = 'B' . $cfg['DPS']['fileRWO'] . 'B';
     $db->insert('showplansusers', $newsperm, false);
     //for binary
     $gperm['groupid'] = $cfg['Auth']['AdminGroup'];
     $gperm['showplanid'] = $showID;
     $gperm['permissions'] = 'B' . $cfg['DPS']['fileRWO'] . 'B';
     $db->insert('showplansgroups', $gperm, false);
     $showdir['showplanid'] = $showID;
     $showdir['dirid'] = $dirID;
     $showdir['linktype'] = 0;
     $db->insert('showplansdir', $showdir, true);
     MVCUtils::redirect("55", array("showID" => $showID));
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:48,代码来源:DPSUserAddShowModel.class.php


示例16: __construct

 /**
  * Construct the viewer and load values
  *
  * If you intend on overriding this classes constructor you should ensure 
  * that you call parent::__construct(); to ensure that the class 
  * is loaded correctly.
  * 
  * @param string $templateID The ID of the template for the page to be viewed. This ID is the ID of the template in the database.
  * @param string $formName The name of the form (if any) which has been submitted
  * @param array $fieldData An associative array for field/value pairs from the submitted form (if any)
  * @todo Add authnetication checks to call processInvalid or processInvalid accordingly.
  */
 public function __construct($templateIDS, $formName = null, $modelModuleName, $viewerModuleName, &$fieldData = array(), &$errors = array())
 {
     //Store class variables
     $this->templateIDStack = $templateIDS;
     $this->templateID = end($templateIDS);
     $this->formName = $formName;
     $this->fieldData =& $fieldData;
     $this->errors =& $errors;
     if (count($errors) > 0) {
         $this->processInvalid();
     } else {
         $this->processValid();
     }
     //something
     //Initialise the viewer
     $this->viewer = MVCUtils::initializeViewer($this->templateIDStack, $formName, $viewerModuleName, $fieldData, $errors);
     //The $viewer class variable is now loaded
     $this->code = $this->viewer->getCode();
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:31,代码来源:Model.class.php


示例17: processValid

 protected function processValid()
 {
     global $cfg;
     $auth = Auth::getInstance();
     //If the fwtid (forward template id) variable is set, then set the
     //templateID to that requested as long as the user has permission
     BasicLogger::logMessage("Checking access to requested template", 'debug');
     if (isset($this->fieldData['fwdtid']) && $this->fieldData['fwdtid'] != '' && AuthUtil::templateAccessAllowed($this->fieldData['fwdtid'], $auth->getUserID())) {
         BasicLogger::logMessage("Access granted, forwarding user to {$this->fieldData['fwdtid']}", 'debug');
         MVCUtils::redirect($this->fieldData['fwdtid']);
         //If the fwtid (forward template id) variable is not set, then set the
         //templateID to that default as long as the user has permission
     } elseif (!(isset($this->fieldData['fwdtid']) && $this->fieldData['fwdtid'] == '') && AuthUtil::templateAccessAllowed(MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']), $auth->getUserID())) {
         BasicLogger::logMessage("Access granted, forwarding user to {$cfg['smarty']['defaultTemplate']}", 'debug');
         MVCUtils::redirect(MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']));
         //If all the above fails, show the user permission denied
     } else {
         BasicLogger::logMessage("Access denied", 'debug');
         MVCUtils::redirect(MVCUtils::getTemplateID($cfg['Auth']['permissionErrorTemplate']));
     }
     /*//If the fwtid (forward template id) variable is set, then set the 
     		//templateID to that requested as long as the user is allowed access.
     		if(isset($this->fieldData['fwdtid']) && 
     		 $this->fieldData['fwdtid'] != '' && 
     		 AuthUtil::templateAccessAllowed($this->fieldData['fwdtid'], $auth->getUserID())){
     		 	
     			$this->templateID = $this->fieldData['fwdtid'];
     			
     		//If now fwtid has not been set, then forward to the default template
     		//as long as the user is allowed access
     		}elseif((!isset($this->fieldData['fwdtid']) || 
     		 $this->fieldData['fwdtid'] == '') &&
     		 AuthUtil::templateAccessAllowed(MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']), $auth->getUserID())){
     		 	
     			$this->templateID = MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']);
     		}*/
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:37,代码来源:LoginModel.class.php


示例18: __construct

 /**
  * Initialise the Renderer object
  * 
  * Will determine if the required request variables are present.
  * If not present an exception will be thrown and caught 
  * 
  * @var string
  */
 public function __construct($templateID, $templateIDS, $fieldData = array(), $errors = array())
 {
     global $cfg;
     try {
         $this->templateIDStack = $templateIDS;
         $this->templateIDStack[] = $templateID;
         $this->fieldData = $fieldData;
         $this->errors = $errors;
         if ($this->checkAuth()) {
             $db = Database::getInstance($cfg['MVC']['dsn']);
             $this->viewerModuleName = $db->getOne("SELECT modulename FROM templates WHERE templateid = ?", array(end($this->templateIDStack)));
             $newViewer = MVCUtils::initializeViewer($this->templateIDStack, null, $this->viewerModuleName, $this->fieldData, $this->errors);
         } else {
             $templateID = MVCUtils::getTemplateID($cfg['Auth']['rendererPermissionErrorTemplate']);
             array_pop($this->templateIDStack);
             $this->templateIDStack[] = $templateID;
             $newViewer = MVCUtils::initializeViewer($this->templateIDStack, null, 'tkfecommon', $this->fieldData, $this->errors);
         }
         $this->viewer = $newViewer;
         //If a problem occured then return a textual error
     } catch (Exception $e) {
         $this->viewer = new ExceptionViewer($e);
     }
 }
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:32,代码来源:Renderer.class.php


示例19: setupTemplate

<?php

/**
 * @package FrontEnds
 * @subpackage CMS
 */
include_once $cfg['MVC']['dir']['root'] . '/MVCUtils.class.php';
MVCUtils::includeViewer('EditContentWindowViewer', 'CMS');
class EditContentViewer extends EditContentWindowViewer
{
    protected function setupTemplate()
    {
        global $cfg;
        parent::setupTemplate();
        $db = Database::getInstance($cfg['MVC']['dsn']);
        $sql = 'SELECT regionid FROM cmsregions ORDER BY name';
        $rIDs = $db->getColumn($sql);
        $sql = 'SELECT name FROM cmsregions ORDER BY name';
        $rNames = $db->getColumn($sql);
        $regions = array_combine($rIDs, $rNames);
        $this->assign('regions', $regions);
        if (isset($this->fieldData['regionID'])) {
            $sql = 'SELECT cmsregions.inlinetoolbar, 
			               cmsregions.windowtoolbar, 
			               cmsregions.editrealm, 
			               cmsregions.viewrealm,
			               cmsregions.name FROM cmsregions 
			       WHERE cmsregions.regionid = ?';
            $regionData = $db->getRow($sql, array($this->fieldData['regionID']));
            $this->assign('inlineToolbar', $regionData['inlinetoolbar']);
            $this->assign('windowToolbar', $regionData['windowtoolbar']);
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:31,代码来源:EditContentViewer.class.php


示例20: __construct

 /**
  * Initialise the Page object
  * 
  * Will determine if the required request variables are present.
  * If not present an exception will be thrown and caught 
  * 
  * @var string
  */
 public function __construct()
 {
     list($usec, $sec) = explode(" ", microtime());
     $startTime = (double) $usec + (double) $sec;
     global $cfg;
     try {
         ##############
         ## Include the Auth and AuthUtil classes
         #			$modulePath  = $cfg['general']['toolkitRoot'] . '/' . $cfg['Auth']['authClassModule'];
         $modulePath = $cfg['Auth']['dir']['root'];
         $moduleName = $cfg['Auth']['authClassModule'];
         // try to include Auth
         if (!(include_once "{$modulePath}/{$moduleName}.class.php")) {
             throw new Exception("It was not possible to include Auth.class.php. I tried to find it here: {$modulePath}/{$moduleName}.class.php");
         }
         if (!class_exists("Auth")) {
             throw new Exception("The {$moduleName}.class.php ({$modulePath}/{$moduleName}.class.php) file was included but the Auth class could not be found");
         }
         // try to include AuthUtil
         if (!(include_once "{$modulePath}/AuthUtil.class.php")) {
             throw new Exception("It was not possible to include AuthUtil.class.php. I tried to find it here: {$modulePath}/AuthUtil.class.php");
         }
         if (!class_exists("AuthUtil")) {
             throw new Exception("The AuthUtil.class.php ({$modulePath}/AuthUtil.class.php) file was included but the AuthUtil class could not be found");
         }
         $db = Database::getInstance($cfg['MVC']['dsn']);
         $errors = array();
         //Load data from superglobals
         $this->loadFieldData();
         //Redirect the user to the actual site (disabled when proxypassed)
         if ($cfg['general']['proxypass'] == 'f' && $_SERVER['HTTP_HOST'] != $cfg['general']['domain']) {
             $url = $cfg['general']['protocol'] . $cfg['general']['domain'] . $cfg['general']['siteRoot'];
             header("Location: {$url}");
             exit;
         }
         //Load template ID
         if (isset($this->fieldData['templateID']) && $this->fieldData['templateID'] != '') {
             $this->templateID = $this->fieldData['templateID'];
         } elseif (isset($cfg['smarty']['defaultTemplate'])) {
             $this->templateID = MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']);
         } else {
             //Template ID is required. Therefore throw an exception
             throw new LoggedException('No template ID or default template specified', 0, self::module);
         }
         //Load form name
         if (isset($this->fieldData['formName'])) {
             $this->formName = $this->fieldData['formName'];
         } else {
             //formName is not required, so set to empty string
             //note that forms will be ignored if this is not passed
             $this->fieldData['formName'] = null;
         }
         //Load the module names
         $this->viewerModuleName = $db->getOne("SELECT modulename FROM templates WHERE templateid = ?", array($this->templateID));
         if (isset($this->fieldData['moduleName']) && $this->fieldData['moduleName'] != '') {
             $this->modelModuleName = $this->fieldData['moduleName'];
         } else {
             $this->modelModuleName = 'MVC';
         }
         ### Check that the user has permission to use the submitted form
         // get the realmid of the submitted form
         $sql = 'SELECT realmid FROM forms WHERE formname = ? AND modulename = ?';
         $realmid = $db->getOne($sql, array($this->formName, $this->modelModuleName));
         $auth = Auth::getInstance();
         // If the realm id could not found then allow access
         // (this will cause 'Model' to be used - so no processing occurs)
         if (!$realmid) {
             //Access is allowed
             $modelAccess = true;
         } else {
             //Check if the user has access to the realm associated with the form
             if (!$auth->isLoggedIn()) {
                 $auth->attemptLogin($cfg['Auth']['anonuser']);
             } else {
                 $auth->attemptLogin();
             }
             $path = AuthUtil::getRealmPath($realmid);
             if (!AuthUtil::getDetailedUserrealmAccess($path, $auth->getUserID())) {
                 //If the user does not have permission, show an error
                 $modelAccess = false;
                 $errors = array('permission' => 'You do not have permission to use the submited form');
             } else {
                 //Set access flag to false
                 $modelAccess = true;
             }
         }
         //If access to the requested form is allowed
         if ($modelAccess) {
             //If a form was submitted
             if (isset($this->formName) && !is_null($this->formName)) {
                 //Then validate the form data
                 //Store any errors in $errors
//.........这里部分代码省略.........
开发者ID:radiowarwick,项目名称:digiplay_legacy,代码行数:101,代码来源:Page.class.php



注:本文中的MVCUtils类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP MWCryptRand类代码示例发布时间:2022-05-23
下一篇:
PHP MUtil_Model_ModelAbstract类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap