⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 projectusers.class.php

📁 ProjectPier 源码 很好的项目管理程序
💻 PHP
字号:
<?php  /**  * ProjectUsers, generated on Wed, 15 Mar 2006 22:57:46 +0100 by   * DataObject generation tool  *  * @http://www.projectpier.org/  */  class ProjectUsers extends BaseProjectUsers {        /** All available user permissions **/    const CAN_MANAGE_MESSAGES   = 'can_manage_messages';    const CAN_MANAGE_TASKS      = 'can_manage_tasks';    const CAN_MANAGE_MILESTONES = 'can_manage_milestones';    const CAN_UPLOAD_FILES      = 'can_upload_files';    const CAN_MANAGE_FILES      = 'can_manage_files';    const CAN_ASSIGN_TO_OWNERS  = 'can_assign_to_owners';    const CAN_ASSIGN_TO_OTHER   = 'can_assign_to_other';      /**    * Return all users that are involved in specific project    *    * @access public    * @param Project $project    * @param string $additional_conditions    * @return array    */    function getUsersByProject(Project $project, $additional_conditions = null) {      $users_table = Users::instance()->getTableName(true);      $project_users_table=  ProjectUsers::instance()->getTableName(true);            $users = array();            $sql = "SELECT $users_table.* FROM $users_table, $project_users_table WHERE ($users_table.`id` = $project_users_table.`user_id` AND $project_users_table.`project_id` = " . DB::escape($project->getId()) . ')';      if (trim($additional_conditions) <> '') {        $sql .= " AND ($additional_conditions)";      }            $rows = DB::executeAll($sql);      if (is_array($rows)) {        foreach ($rows as $row) {          $users[] = Users::instance()->loadFromRow($row);        } // foreach      } // if            return count($users) ? $users : null;    } // getUsersByProject        /**    * Return users of specific company involeved in specific project    *    * @access public    * @param Company $company    * @param Project $project    * @return array    */    function getCompanyUsersByProject(Company $company, Project $project) {      $users_table = Users::instance()->getTableName(true);      return self::getUsersByProject($project, "$users_table.`company_id` = " . DB::escape($company->getId()));    } // getCompanyUsersByProject        /**    * Return all projects that this user is part of    *    * @access public    * @param User $user    * @param     * @return array    */    function getProjectsByUser(User $user, $additional_conditions = null) {      $projects_table = Projects::instance()->getTableName(true);      $project_users_table=  ProjectUsers::instance()->getTableName(true);            $projects = array();            $sql = "SELECT $projects_table.* FROM $projects_table, $project_users_table WHERE ($projects_table.`id` = $project_users_table.`project_id` AND $project_users_table.`user_id` = " . DB::escape($user->getId()) . ')';      if (trim($additional_conditions) <> '') {        $sql .= " AND ($additional_conditions)";      } // if      $sql .= " ORDER BY $projects_table.`name`";            $rows = DB::executeAll($sql);      if (is_array($rows)) {        foreach ($rows as $row) {          $projects[] = Projects::instance()->loadFromRow($row);        } // foreach      } // if            return count($projects) ? $projects : null;    } // getProjectsByUser        /**    * Return all users associated with specific project    *    * @access public    * @param Project $project    * @return boolean    */    static function clearByProject(Project $project) {      return self::delete(array('`project_id` = ?', $project->getId()));    } // clearByProject        /**    * Clear permission by user    *    * @param User $user    * @return boolean    */    static function clearByUser(User $user) {      return self::delete(array('`user_id` = ?', $user->getId()));    } // clearByUser        /**    * This function will return array of permission columns in table. Permission column name is     * used as permission ID in rest of the script    *    * @access public    * @param void    * @return array    */    function getPermissionColumns() {      return array(        self::CAN_MANAGE_MESSAGES,        self::CAN_MANAGE_TASKS,        self::CAN_MANAGE_MILESTONES,        self::CAN_UPLOAD_FILES,        self::CAN_MANAGE_FILES,        self::CAN_ASSIGN_TO_OWNERS,        self::CAN_ASSIGN_TO_OTHER,      ); // array    } // getPermissionColumns        /**    * Return permission name => permission text array    *    * @param void    * @return array    */    static function getNameTextArray() {      return array(        ProjectUsers::CAN_MANAGE_MESSAGES   => lang('can manage messages'),        ProjectUsers::CAN_MANAGE_TASKS      => lang('can manage tasks'),        ProjectUsers::CAN_MANAGE_MILESTONES => lang('can manage milestones'),        ProjectUsers::CAN_UPLOAD_FILES      => lang('can upload files'),        ProjectUsers::CAN_MANAGE_FILES      => lang('can manage files'),        ProjectUsers::CAN_ASSIGN_TO_OWNERS  => lang('can assign to owners'),        ProjectUsers::CAN_ASSIGN_TO_OTHER   => lang('can assign to other'),      ); // array    } // getNameTextArray      } // ProjectUsers ?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -