"", "task" => "", "logTask" => "", "bbsPost" => "", "result" => "", ); //---------------------------- // request parameter //---------------------------- $qOrder = isset($_REQUEST["q_order"]) ? $_REQUEST["q_order"] : REQ_NON; //---------------------------- // judge post //---------------------------- //---------------------------- // set types //---------------------------- Util::setType($qOrder, "string"); //---------------------------- // Auth-Before validate //---------------------------- if ( $result === RES_OK ){ } //---------------------------- // Auth //---------------------------- if ( $result === RES_OK ){ if ( ! Auth::isLogin() ){ $result = RES_NG; $gResult->push("{$WORD($wk, 1)}"); } } //---------------------------- // Auth-After validate //---------------------------- if ( $result === RES_OK ){ } //---------------------------- // function //---------------------------- //---------------------------- // process //---------------------------- if ( $result === RES_OK ){ $objDAOUser = DAO::instance("user"); $objDAOTask = DAO::instance("task"); $objDAOLogTask = DAO::instance("log_task"); $objDAOBbsPost = DAO::instance("bbs_post"); $objViewHome = View::instance("home"); //------------------------------ // 無操作ユーザー一覧 //------------------------------ if ( Auth::isOrgmgr() || Auth::isInsttr() ){ if ( $result === RES_OK ){ // *フィールド $arrField = array( "t_user_id", "t_user_name", "t_user_type", "t_organization_id", "get_organization_name(t_organization_id) AS t_organization_name", "get_last_login_date_by_user_id(t_user_id) as t_last_login_date", ); // *条件 $arrCondition = array( "t_login_date" => array( "type" => DAO::TYPE_SQL, "value" => "get_last_login_date_by_user_id(t_user_id) < (NOW() - INTERVAL ".Config::get("WARN_LOGIN_DAY")." DAY)" ), "t_user_state" => DAO::T_USER_STATE_ACTIVE, "t_user_login" => DAO::T_USER_LOGIN_OK, "t_user_warn_non_active" => DAO::T_USER_WARN_NON_ACTIVE_NONE, "t_organization_id" => User::get("organization_id"), ); $resDAOUser = $objDAOUser->select($arrField, $arrCondition); if ( $resDAOUser["result"] === RES_OK ){ $arrHtml["user"] = $objViewHome->userList($resDAOUser["data"], User::get("organization_id")); } } } //------------------------------ // 担当タスク一覧 //------------------------------ if ( $result === RES_OK ){ // sort $arrOrder = array(); if ( Validate::isString($qOrder) ){ $arrQueryOrder = explode("-", $qOrder); if ( count($arrQueryOrder) === 2 ){ $orderKey = ""; if ( $arrQueryOrder[0] === "task" ){ $orderKey = DAO::SQL_ORDER_BY("t_task_type", array_keys(Task::TYPE_TABLE())); } else if ( $arrQueryOrder[0] === "document" ){ $orderKey = "get_document_title(get_first_document_id_by_task_id(t_task_id))"; } else if ( $arrQueryOrder[0] === "project" ){ $orderKey = "get_project_start(t_project_id)"; } else if ( $arrQueryOrder[0] === "date" ){ $orderKey = "t_task_end"; } else if ( $arrQueryOrder[0] === "state" ){ $orderKey = DAO::SQL_ORDER_BY("t_task_state", array_keys(DAO::T_TASK_STATE_TABLE())); } $orderValue = ""; if ( $arrQueryOrder[1] === "asc" ){ $orderValue = DAO::ASC; } else if ( $arrQueryOrder[1] === "desc" ){ $orderValue = DAO::DESC; } if ( strlen($orderKey) > 0 && strlen($orderValue) > 0 ){ $arrOrder[$orderKey] = $orderValue; } } } $arrDefaultOrder = array( "t_task_end" => DAO::DESC, "get_project_start(t_project_id)" => DAO::DESC, DAO::SQL_ORDER_BY("t_task_type", array_keys(Task::TYPE_TABLE())) => DAO::ASC, ); $resDAOTask = $objDAOTask->get(NULL, array(DAO::T_TASK_STATE_NORMAL, DAO::T_TASK_STATE_CARIED), NULL, Date('Y-m-d'), NULL, NULL, User::get("id"), $arrOrder + $arrDefaultOrder, HTML_TASK_LIMIT); if ( $resDAOTask["result"] !== RES_NG ){ $message = ""; if ( $resDAOTask["count"] > HTML_TASK_LIMIT ){ $message = "{$WORD($wk, 2)}"; } $arrHtml["task"] = $objViewHome->taskList($resDAOTask["data"], $qOrder, "", $message); } else { $result = RES_NG; $gResult->push("{$WORD($wk, 3)}"); } } //------------------------------ // アクション一覧 //------------------------------ if ( Auth::isOrgmgr() || Auth::isInsttr() || Auth::isSysmgr() ){ if ( $result === RES_OK ){ $date = date("Y-m-d", strtotime("-1 week")); $orgID = Auth::isSysmgr() ? NULL : User::get("organization_id"); $resDAOLogTask = $objDAOLogTask->getUserGroup($orgID, NULL, NULL, NULL, $date, NULL, HTML_LOGTASK_LIMIT); if ( $resDAOLogTask["result"] !== RES_NG ){ $arrHtml["logTask"] = $objViewHome->actionList($resDAOLogTask["data"], $qOrder); } else { $result = RES_NG; $gResult->push("{$WORD($wk, 4)}"); } } } //------------------------------ // メッセージ(掲示板投稿)一覧 //------------------------------ if ( $result === RES_OK ){ if ( ($lastLoginTime = strtotime(User::get("last_login"))) === FALSE ){ $date = NULL; } else { $date = User::get("last_login"); } $resDAOBbsPost = $objDAOBbsPost->get(NULL, NULL, NULL, DAO::T_BBS_POST_STATE_NORMAL, NULL, $date, User::get("id")); if ( $resDAOBbsPost["result"] !== RES_NG ){ $arrHtml["bbsPost"] = $objViewHome->bbsPostList($resDAOBbsPost["data"]); } else { $result = RES_NG; $gResult->push("{$WORD($wk, 5)}"); } } } //---------------------------- // menu //---------------------------- { // menu ---------------------------------------------------------------- // ボタン(登録) $arrMenu = array(); // title --------------------------------------------------------------- $title = "{$WORD($wk, 6)}"; // result -------------------------------------------------------------- $arrHtml["result"] = $gResult->string(TRUE, $result); } ?>