/** * 删除指定的贴吧信息 * * @param int $postId * * @return boolean */ function removePost($postId) { $postId = (int) $postId; $post = $this->_tbPosts->find($postId); if (!$post) { FLEA::loadClass('Exception_DataNotFound'); __THROW(new Exception_DataNotFound($postId)); return false; } return $this->_tbPosts->removeByPkv($postId); }
/** * 列出所有的成员 */ function actionIndex() { $page = isset($_GET['page']) ? (int) $_GET['page'] : 0; FLEA::loadClass('FLEA_Helper_Pager'); $table =& $this->_modelMembers->getTable(); $pager =& new FLEA_Helper_Pager($table, $page, 20, '', 'member_id'); $pk = $table->primaryKey; $rowset = $pager->findAll(); $this->_setBack(); include APP_DIR . '/ZobMembersList.php'; }
public function Controller_FLGL() { //$this->_M =& FLEA::getSingleton('Model_FLGL'); $this->_V =& $this->_getView(); // ЁУй╪╩╞оШо╒╤тоС FLEA::loadClass("Util_Msg"); $this->_G = new Util_Msg(); // п╢хКCSS,IMG,JSд©б╪ $this->_V->assign(FLEA::getAppInf("vdir")); // ЁУй╪╩╞╣╪╨╫ FLEA::loadClass("Util_Nav"); $this->_N = new Util_Nav(); }
function Controller_Prem() { $this->_M =& FLEA::getSingleton('Model_Prem'); $this->_V =& $this->_getView(); // 初始化消息对象 FLEA::loadClass("Util_Msg"); $this->_G = new Util_Msg(); // 写入CSS,IMG,JS目录 $this->_V->assign(FLEA::getAppInf("vdir")); // 初始化导航 FLEA::loadClass("Util_Nav"); $this->_N = new Util_Nav(); }
public function Controller_time() { $this->M_timeinfo =& FLEA::getSingleton('Model_time'); $this->M_chninfo =& FLEA::getSingleton('Model_chninfo'); $this->socketClient = FLEA::getSingleton('Util_socketclient'); $this->_V =& $this->_getView(); FLEA::loadClass("Util_Msg"); $this->_G = new Util_Msg(); // 写入CSS,IMG,JS目录 $this->_V->assign(FLEA::getAppInf("vdir")); // 初始化导航 FLEA::loadClass("Util_Nav"); $this->_N = new Util_Nav(); }
/** * 构造函数 * * @return FLEA_View_Lite */ function FLEA_View_Lite() { parent::Template_Lite(); $viewConfig = FLEA::getAppInf('viewConfig'); if (is_array($viewConfig)) { foreach ($viewConfig as $key => $value) { if (isset($this->{$key})) { $this->{$key} = $value; } } } FLEA::loadClass('FLEA_View_SmartyHelper'); new FLEA_View_SmartyHelper($this); }
/** * 从指定文件创建 Image 对象 * * 对于上传的文件,由于其临时文件名中并没有包含扩展名。因此需要采用下面的方法创建 Image 对象: * * <code> * $ext = pathinfo($_FILES['postfile']['name'], PATHINFO_EXTENSION); * $image =& FLEA_Helper_Image::createFromFile($_FILES['postfile']['tmp_name'], $ext); * </code> * * @param string $filename * @param string $fileext * * @return FLEA_Helper_Image */ function &createFromFile($filename, $fileext = null) { if (is_null($fileext)) { $fileext = pathinfo($filename, PATHINFO_EXTENSION); } $fileext = strtolower($fileext); $ext2functions = array('jpg' => 'imagecreatefromjpeg', 'jpeg' => 'imagecreatefromjpeg', 'png' => 'imagecreatefrompng', 'gif' => 'imagecreatefromgif'); if (!isset($ext2functions[$fileext])) { FLEA::loadClass('FLEA_Exception_NotImplemented'); __THROW(new FLEA_Exception_NotImplemented('imagecreatefrom' . $fileext)); return false; } $handle = $ext2functions[$fileext]($filename); $img =& new FLEA_Helper_Image($handle); return $img; }
/** * 载入 YAML 文件,返回分析结果 * * load_yaml() 会自动使用缓存,只有当 YAML 文件被改变后,缓存才会更新。 * * 关于 YAML 的详细信息,请参考 www.yaml.org 。 * * 用法: * <code> * $data = load_yaml('myData.yaml'); * </code> * * 注意:为了安全起见,不要使用 YAML 存储敏感信息,例如密码。 * 或者将 YAML 文件的扩展名设置为 .yaml.php,并且在每一个 YAML 文件开头添加“exit()”。 * 例如: * <code> * # <?php exit(); ?> * * invoice: 34843 * date : 2001-01-23 * bill-to: &id001 * ...... * </code> * * 这样可以确保即便浏览器直接访问该 .yaml.php 文件,也无法看到内容。 * * @param string $filename * @param boolean $cacheEnabled 是否缓存分析内容 * @param array $replace * * @return array */ function load_yaml($filename, $cacheEnabled = true, $replace = null) { static $objects = array(); if (!file_exists($filename)) { FLEA::loadClass('FLEA_Exception_ExpectedFile'); return __THROW(new FLEA_Exception_ExpectedFile($filename)); } if ($cacheEnabled) { $arr = FLEA::getCache('yaml-' . $filename, filemtime($filename), false); if ($arr) { return $arr; } } if (!isset($objects[0])) { require_once FLEA_3RD_DIR . '/Spyc/spyc.php'; $objects[0] =& new Spyc(); } $arr = $objects[0]->load($filename, $replace); if ($cacheEnabled) { FLEA::writeCache('yaml-' . $filename, $arr); } return $arr; }
/** * 执行生成器 * * @param array $opts */ function generate($opts) { $name = array_shift($opts); $modelClass = 'Model_' . ucfirst($name); if ($filename = $this->_existsClassFile($modelClass)) { echo "Class '{$modelClass}' declare file '{$filename}' exists.\n"; return -1; } $tableName = reset($opts); if (empty($tableName)) { return -1; } if (isset($opts[1])) { $tableClass = $opts[1]; } else { $tableClass = 'Table_' . ucfirst($this->_camelName($tableName)); } /** * 首先判断需要的表数据入口对象是否存在 */ if (!$this->_existsClassFile($tableClass)) { /** * 创建需要的表数据入口对象 */ $generatorTable =& FLEA::getSingleton('Generator_Table'); /* @var $generatorTable Generator_Table */ $generatorTable->make($tableName, array($tableClass)); } FLEA::loadClass('FLEA_Db_TableDataGateway'); $table =& FLEA::getSingleton($tableClass); $content = $this->_getCode($modelClass, $tableClass, $table); if ($content !== -1 && !empty($content)) { return $this->_createClassFile($modelClass, $content); } else { return -1; } }
<?php ///////////////////////////////////////////////////////////////////////////// // 定义Model_SysUser模型 FLEA::loadClass('FLEA_Rbac_UsersManager'); // Model_SysUser 封装了对系统用户信息的操作,同时还负责取出用户的角色信息 class model_sysuser extends FLEA_Rbac_UsersManager { // 保存用户信息的数据表名称 var $tableName = 'srep_user'; var $primaryKey = 'UserID'; var $usernameField = 'Username'; var $emailField = 'Email'; var $encodeMethod = PWD_CLEARTEXT; }
/** * 执行一个查询,返回一个 resource 或者 boolean 值 * * @param string $sql * @param array $inputarr * @param boolean $throw 指示查询出错时是否抛出异常 * * @return resource|boolean */ function execute($sql, $inputarr = null, $throw = true) { if (is_array($inputarr)) { $sql = $this->_prepareSql($sql, $inputarr); } if ($this->enableLog) { $this->log[] = $sql; log_message("sql:\n{$sql}", 'debug'); } $result = @mssql_query($sql, $this->conn); if ($result !== false) { $this->lasterr = null; $this->lasterrcode = null; return $result; } $this->lasterr = $this->mssql_error($this->conn); $this->lasterrcode = $this->mssql_errno($this->conn); if (!$throw) { return false; } FLEA::loadClass('FLEA_Db_Exception_SqlQuery'); __THROW(new FLEA_Db_Exception_SqlQuery($sql, $this->lasterr, $this->lasterrcode)); return false; }
/** * 检查访问控制表是否允许指定的角色访问 * * @param array $roles * @param array $ACT * * @return boolean */ function check(&$roles, &$ACT) { $roles = array_map('strtoupper', $roles); if ($ACT['allow'] == RBAC_EVERYONE) { // 如果 allow 允许所有角色,deny 没有设置,则检查通过 if ($ACT['deny'] == RBAC_NULL) { return true; } // 如果 deny 为 RBAC_NO_ROLE,则只要用户具有角色就检查通过 if ($ACT['deny'] == RBAC_NO_ROLE) { if (empty($roles)) { return false; } return true; } // 如果 deny 为 RBAC_HAS_ROLE,则只有用户没有角色信息时才检查通过 if ($ACT['deny'] == RBAC_HAS_ROLE) { if (empty($roles)) { return true; } return false; } // 如果 deny 也为 RBAC_EVERYONE,则表示 ACT 出现了冲突 if ($ACT['deny'] == RBAC_EVERYONE) { FLEA::loadClass('FLEA_Rbac_Exception_InvalidACT'); __THROW(new FLEA_Rbac_Exception_InvalidACT($ACT)); return false; } // 只有 deny 中没有用户的角色信息,则检查通过 foreach ($roles as $role) { if (in_array($role, $ACT['deny'], true)) { return false; } } return true; } do { // 如果 allow 要求用户具有角色,但用户没有角色时直接不通过检查 if ($ACT['allow'] == RBAC_HAS_ROLE) { if (!empty($roles)) { break; } return false; } // 如果 allow 要求用户没有角色,但用户有角色时直接不通过检查 if ($ACT['allow'] == RBAC_NO_ROLE) { if (empty($roles)) { break; } return false; } if ($ACT['allow'] != RBAC_NULL) { // 如果 allow 要求用户具有特定角色,则进行检查 $passed = false; foreach ($roles as $role) { if (in_array($role, $ACT['allow'], true)) { $passed = true; break; } } if (!$passed) { return false; } } } while (false); // 如果 deny 没有设置,则检查通过 if ($ACT['deny'] == RBAC_NULL) { return true; } // 如果 deny 为 RBAC_NO_ROLE,则只要用户具有角色就检查通过 if ($ACT['deny'] == RBAC_NO_ROLE) { if (empty($roles)) { return false; } return true; } // 如果 deny 为 RBAC_HAS_ROLE,则只有用户没有角色信息时才检查通过 if ($ACT['deny'] == RBAC_HAS_ROLE) { if (empty($roles)) { return true; } return false; } // 如果 deny 为 RBAC_EVERYONE,则检查失败 if ($ACT['deny'] == RBAC_EVERYONE) { return false; } // 只有 deny 中没有用户的角色信息,则检查通过 foreach ($roles as $role) { if (in_array($role, $ACT['deny'], true)) { return false; } } return true; }
<?php // {{{ includes FLEA::loadClass('Controller_ZobBase'); // }}} /** * 实现后台界面的显示 * * @package OfficeBoard * @subpackage Controller * @author Zhou Yuhui (xuchangyuhui@sohu.com) * @version 1.0, 2008-09-19 */ class Controller_ZobAdmin extends Controller_ZobBase { /** * 构造函数 * * @return Controller_ZobAdmin */ function Controller_ZobAdmin() { parent::Controller_ZobBase(); } /** * 显示 frames 页面 */ function actionIndex() { include APP_DIR . '/ZobAdmin.php'; }
/** * 执行一个查询,返回一个 resource 或者 boolean 值 * * @param string $sql * @param array $inputarr * @param boolean $throw 指示查询出错时是否抛出异常 * * @return resource|boolean */ function execute($sql, $inputarr = null, $throw = true) { if (is_array($inputarr)) { $sql = $this->_prepareSql($sql, $inputarr); } if ($this->enableLog) { $this->log[] = $sql; log_message("sql: {$sql}", 'debug'); } $this->_lastrs = @pg_exec($this->conn, $sql); if ($this->_lastrs !== false) { $this->lasterr = null; $this->lasterrcode = null; return $this->_lastrs; } $this->lasterr = pg_errormessage($this->conn); $this->lasterrcode = null; if (!$throw) { return false; } FLEA::loadClass('FLEA_Db_Exception_SqlQuery'); __THROW(new FLEA_Db_Exception_SqlQuery($sql, $this->lasterr)); return false; }
/** * 执行指定的 Action 方法 * * @param string $controllerName * @param string $actionName * @param string $controllerClass * * @return mixed */ function _executeAction($controllerName, $actionName, $controllerClass) { $callback = FLEA::getAppInf('dispatcherFailedCallback'); // 确定动作方法名 $actionPrefix = FLEA::getAppInf('actionMethodPrefix'); $actionMethod = $actionPrefix . $actionName . FLEA::getAppInf('actionMethodSuffix'); $controller = null; $controllerClassFilename = null; do { // 载入控制对应的类定义 if (!$this->_loadController($controllerClass)) { break; } // 构造控制器对象 FLEA::setAppInf('FLEA.internal.currentControllerName', $controllerName); FLEA::setAppInf('FLEA.internal.currentActionName', $actionName); $controller =& new $controllerClass($controllerName); if (!method_exists($controller, $actionMethod)) { break; } if (method_exists($controller, '__setController')) { $controller->__setController($controllerName, $actionName); } if (method_exists($controller, '__setDispatcher')) { $controller->__setDispatcher($this); } // 调用 _beforeExecute() 方法 if (method_exists($controller, '_beforeExecute')) { $controller->_beforeExecute($actionMethod); } // 执行 action 方法 $ret = $controller->{$actionMethod}(); // 调用 _afterExecute() 方法 if (method_exists($controller, '_afterExecute')) { $controller->_afterExecute($actionMethod); } return $ret; } while (false); if ($callback) { // 检查是否调用应用程序设置的错误处理程序 $args = array($controllerName, $actionName, $controllerClass); return call_user_func_array($callback, $args); } if (is_null($controller)) { FLEA::loadClass('FLEA_Exception_MissingController'); __THROW(new FLEA_Exception_MissingController($controllerName, $actionName, $this->_requestBackup, $controllerClass, $actionMethod, $controllerClassFilename)); return false; } FLEA::loadClass('FLEA_Exception_MissingAction'); __THROW(new FLEA_Exception_MissingAction($controllerName, $actionName, $this->_requestBackup, $controllerClass, $actionMethod, $controllerClassFilename)); return false; }
<?php FLEA::loadClass('FLEA_Controller_Action'); class Sys_Core extends FLEA_Controller_Action { protected $_V = null; protected function __construct() { $this->_V =& $this->_getView(); } //判断是否登陆 public function isLogin() { $sessionKey = FLEA::getAppInf('RBACSessionKey'); $username = $_SESSION[$sessionKey]['USERNAME']; //if($_GET['guest']!=1){ if (empty($username)) { redirect(url('Default', 'Index')); } //} } //构造分页参数 protected function getPager($total, $currentPage, $pagesize) { $pagerData = array(); $pagerData['pageSize'] = $pagesize; $pagerData['totalCount'] = $total; $pagerData['count'] = $pagerData['totalCount']; $pagerData['pageCount'] = $pagerData['totalCount'] == 0 ? 1 : ceil($pagerData['totalCount'] / PAGESIZE); $pagerData['firstPage'] = 0; $pagerData['firstPageNumber'] = 1;
<?php // 载入基础类的定义 FLEA::loadClass('FLEA_Db_TableDataGateway'); class Model_devinfo extends FLEA_Db_TableDataGateway { /** * $tableName 属性用于指定 Model_Posts 是操作哪一个数据表 * * @var string */ public $tableName = 'socket_devinfo'; // 指定主键字段名 /** * $primaryKey 属性指定要操作的数据表的主键字段名 * * @var string */ public $primaryKey = 'serial'; public $hasMany = array(array('tableClass' => 'Model_chninfo', 'foreignKey' => 'dev_no', 'mappingName' => 'chninfo', 'sort' => 'chn asc')); /** * @desc 改造函数,根据ID查找记录 */ public function findById($id) { $a = $this->findAllByField($this->primaryKey, $id); return $a[0]; } /** * @desc 改造函数,根据ID数组删除数据并返回真假 */
<?php ///////////////////////////////////////////////////////////////////////////// /** * 定义Login控制器 * Login 控制器提供了管理员用户登陆,注销登陆,用户注册等功能。 */ //////////////////////////////////////////////////////////////////////////// //加载控制器基类 FLEA::loadClass('controller_base'); FLEA::loadClass('class_validator'); class controller_Login extends controller_base { var $_model; var $_title; var $_smarty; //构造函数 function controller_login() { //初始化模板 $this->initView(); } //后台用户登陆页 function actionindex() { $this->_smarty->display('login.htm'); } //后台用户登陆处理 function actionlogin() { if (!isset($_POST['Username'])) {
function execute($sql, $inputarr = null, $throw = true) { if (is_array($inputarr)) { $sql = $this->bind($sql, $inputarr); } if ($this->enableLog) { $this->log[] = $sql; log_message("sql: {$sql}", 'debug'); } $this->querycount++; $result = mysql_query($sql, $this->conn); if ($result !== false) { $this->lasterr = null; $this->lasterrcode = null; return $result; } $this->lasterr = mysql_error($this->conn); $this->lasterrcode = mysql_errno($this->conn); if ($throw) { FLEA::loadClass('FLEA_Db_Exception_SqlQuery'); __THROW(new FLEA_Db_Exception_SqlQuery($sql, $this->lasterr, $this->lasterrcode)); } return false; }
/** * 载入 ACT 文件 * * @param string $actFilename * * @return mixed */ function _loadACTFile($actFilename) { static $files = array(); if (isset($files[$actFilename])) { return $files[$actFilename]; } $ACT = (require $actFilename); if (is_array($ACT)) { $files[$actFilename] = $ACT; return $ACT; } // 当控制器的 ACT 文件没有返回 ACT 时抛出异常 FLEA::loadClass('FLEA_Rbac_Exception_InvalidACTFile'); __THROW(new FLEA_Rbac_Exception_InvalidACTFile($actFilename, $ACT)); return false; }
<?php // 载入基础类的定义 FLEA::loadClass('FLEA_Com_RBAC_RolesManager'); /** * Model_Posts 类是 FLEA_Db_TableDataGateway 类的一个子类。 * * 通过指定 $tableName 和 $primaryKey 属性,就能够用 Model_Posts 对数据表进行 * CRUD(创建、读取、更新、删除)操作,而无需编写数据库操作代码,提供了开发效率。 */ class Model_Role extends FLEA_Com_RBAC_RolesManager { /** * $tableName 属性用于指定 Model_Posts 是操作哪一个数据表 * * @var string */ var $tableName = 'socket_roles'; // 指定主键字段名 /** * $primaryKey 属性指定要操作的数据表的主键字段名 * * @var string */ var $primaryKey = 'role_id'; var $rolesFields = 'user'; //var $usernameField = 'login_name'; //var $passwordField = 'login_pass'; var $manyToMany = array('tableClass' => 'Model_User', 'mappingName' => 'user', 'joinTable' => 'socket_rose'); public function findById($id) {
public function actionrestoredefault() { //发送指令 $message = '<br>'; FLEA::loadClass('Util_socketclient'); $dev_bak = FLEA::getSingleton('Model_devinitialinfo'); $dev = $dev_bak->findAll(); //如果备份表里为空,将退出; if (!$dev) { $this->_G->customshow('您当前没有备份的默认值,请先备份', "edit", "Index", 3, 0); exit; } foreach ($dev as $devinfo) { $socket = new Util_socketclient(); $socket->socketconn($devinfo['ipaddr'], $devinfo['ipport']); foreach ($devinfo['chninfo'] as $chninfo) { $sendcommand = $socket->messagetype($chninfo['chn'], $chninfo['apid'], $chninfo['agcstat'], $chninfo['gain'], $chninfo['mutestat'], $chninfo['passstat']); switch ($socket->sendmessage($sendcommand)) { case $socket->returntrue: $this->log->writelog($devinfo['devname'], $sendcommand, $socket->returntrue); $message .= "设备{$devinfo['devname']}通道号:{$devinfo['chn']}指令发送: [<font color=red><b>{$sendcommand}</b></font>]成功"; $type = '1'; case $socket->returnfalse: $this->log->writelog($devinfo['devname'], $sendcommand, $socket->returnfalse); $message .= "<font color=red>设备{$devinfo['devname']}通道号:{$devinfo['chn']}指令发送: [<b>{$sendcommand}</b>]失败</b>"; $type = '0'; } } unset($socket); } $message .= "<br>备份恢复完成"; $this->_G->customshow($message, 'edit', 'Index', 3, $type); }
<?php // 载入基础类的定义 FLEA::loadClass('FLEA_Com_RBAC_UsersManager'); /** * Model_Posts 类是 FLEA_Db_TableDataGateway 类的一个子类。 * * 通过指定 $tableName 和 $primaryKey 属性,就能够用 Model_Posts 对数据表进行 * CRUD(创建、读取、更新、删除)操作,而无需编写数据库操作代码,提供了开发效率。 */ class Model_Default extends FLEA_Com_RBAC_UsersManager { /** * $tableName 属性用于指定 Model_Posts 是操作哪一个数据表 * * @var string */ var $tableName = 'ticket_user'; // 指定主键字段名 /** * $primaryKey 属性指定要操作的数据表的主键字段名 * * @var string */ var $primaryKey = 'id_user'; function login($username, $password) { $usersManager =& get_singleton('Model_User'); // 验证用户名和密码是否正确 $user = $usersManager->findByUsername($username); if (!$user || !$usersManager->checkPassword($password, $user[$usersManager->passwordField])) {
function execute($sql, $inputarr = null, $throw = true) { if ($this->enableLog) { $this->log[] = $sql; log_message("sql: {$sql}", 'debug'); } $this->querycount++; $stmt = ociparse($this->conn, $sql); if (is_array($inputarr)) { foreach (array_keys($inputarr) as $k) { ocibindbyname($stmt, $k, $inputarr[$k], -1); } } if ($stmt && ociexecute($stmt, $this->_commitMode)) { $this->_lastrs = $stmt; $this->lasterr = null; $this->lasterrcode = null; return $stmt; } $err = ocierror($stmt); $this->lasterr = $err['message']; $this->lasterrcode = $err['code']; if ($throw) { FLEA::loadClass('FLEA_Db_Exception_SqlQuery'); __THROW(new FLEA_Db_Exception_SqlQuery($sql, $this->lasterr, $this->lasterrcode)); } return false; }
/** * 准备当前数据表的元数据 * * @param boolean $flushCache * * @return boolean */ function _prepareMeta($flushCache = false) { $cached = FLEA::getAppInf('dbMetaCached'); $cacheId = $this->dbo->dsn['id'] . '/' . $this->fullTableName; $readFromCache = $cached != false && $flushCache == false; if ($readFromCache) { /** * 尝试从缓存读取 */ $meta = FLEA::getCache($cacheId, FLEA::getAppInf('dbMetaLifetime')); if (is_array($meta)) { $this->meta = $meta; return true; } } /** * 从数据库获得 meta */ $this->meta = $this->dbo->metaColumns($this->qtableName); if (!is_array($this->meta) || empty($this->meta)) { FLEA::loadClass('FLEA_Db_Exception_MetaColumnsFailed'); return __THROW(new FLEA_Db_Exception_MetaColumnsFailed($this->qtableName)); } if ($cached) { return FLEA::writeCache($cacheId, $this->meta); } else { return true; } }
<?php ///////////////////////////////////////////////////////////////////////////// // FleaPHP Framework // // Copyright (c) 2005 - 2008 QeeYuan China Inc. (http://www.qeeyuan.com) // // 许可协议,请查看源代码中附带的 LICENSE.txt 文件, // 或者访问 http://www.fleaphp.org/ 获得详细信息。 ///////////////////////////////////////////////////////////////////////////// /** * 定义 FLEA_Com_RBAC_Exception_InvalidACTFile 异常,是 FLEA_Rbac_Exception_InvalidACTFile 的别名 * * @copyright Copyright (c) 2005 - 2008 QeeYuan China Inc. (http://www.qeeyuan.com) * @author 起源科技 (www.qeeyuan.com) * @package Exception * @version $Id: InvalidACTFile.php 972 2007-10-09 20:56:54Z qeeyuan $ */ FLEA::loadClass('FLEA_Rbac_Exception_InvalidACTFile'); /** * 开发者应该使用 FLEA_Rbac_Exception_InvalidACTFile * * @package Exception * @author 起源科技 (www.qeeyuan.com) * @version 1.0 */ class FLEA_Com_RBAC_Exception_InvalidACTFile extends FLEA_Rbac_Exception_InvalidACTFile { }
/** * 获得指定的组件对象 * * @param string $componentName * * @return object */ function &_getComponent($componentName) { static $instances = array(); if (!isset($instances[$componentName])) { $componentClassName = FLEA::getAppInf('component.' . $componentName); FLEA::loadClass($componentClassName); $instances[$componentName] =& new $componentClassName($this); } return $instances[$componentName]; }
<?php ///////////////////////////////////////////////////////////////////////////// /** * 定义form控制器 * * form控制器提供了form表单界面处理模块。 */ /////////////////////////////////////////////////////////////////////////// //加载控制器基类 FLEA::loadClass('controller_base'); FLEA::loadClass('class_conditions'); FLEA::loadClass('class_using'); class controller_form extends controller_base { var $_model; //构造函数 function controller_form() { //初始化模板 $this->initView(); $this->checkLogin(); } //显示修改密码界面 function actionchangepwd() { $rbac =& FLEA::getSingleton('FLEA_Rbac'); $SE = $rbac->getUser(); $username = isset($SE['USERNAME']) ? $SE['USERNAME'] : ''; $this->_smarty->display('changepwd.htm'); }
/** * 添加/修改产品Action */ function actionGoodseditdo() { // 登录检查 $this->LoginCheck(); $row['name'] = $_POST['name']; $row['summary'] = $_POST['summary']; $row['detail'] = $_POST['detail']; $row['cateid'] = $_POST['cateid']; $row['author'] = 'admin'; if ($_FILES['image']['error'][0] != 4) { $allowExts = ALLOW_EXTS; $maxSize = MAX_FILES; $uploadDir = UPLOAD_IMG_DIR; // 装载FileUploader类 FLEA::loadClass('FLEA_Helper_FileUploader'); $uploader =& new FLEA_Helper_FileUploader(); $files =& $uploader->getFiles(); foreach ($files as $file) { if (!$file->check($allowExts, $maxSize)) { // 上传的文件类型不符或者超过了大小限制。 return false; } // 生成唯一的文件名(重复的可能性极小) $id = md5(time() . $file->getFilename() . $file->getSize() . $file->getTmpName()); $filename = $id . '.' . strtolower($file->getExt()); $file->move($uploadDir . '/' . $filename); } $row['image'] = $filename; } if (isset($_POST['goodsid'])) { $row['goodsid'] = $_POST['goodsid']; $row['updated'] = date("Y-m-d H:i:s"); } else { $row['created'] = date("Y-m-d H:i:s"); } if ($this->_modelGoods->save($row)) { redirect($this->_url("Goodslist")); exit; } }
<?php ///////////////////////////////////////////////////////////////////////////// /** * 定义reportmanage控制器 * */ /////////////////////////////////////////////////////////////////////////// //加载控制器基类 FLEA::loadClass('controller_base'); FLEA::loadClass('class_using'); FLEA::loadClass('class_excel'); FLEA::loadClass('class_conditions'); FLEA::loadClass('class_order'); class controller_reportmanage extends controller_base { var $sql; //构造函数 function controller_reportmanage() { //初始化模板 $this->initView(); $this->checkLogin(); } //结算报表管理首页 function actionindex() { } //报表列表 function actionreplist() {