"", "result" => "", "table" => "", "header" => "", "footer" => "", ); //---------------------------- // request parameter //---------------------------- $qView = isset($_REQUEST["q_view"]) ? $_REQUEST["q_view"] : REQ_NON; $qKeyword = isset($_REQUEST["q_keyword"]) ? $_REQUEST["q_keyword"] : REQ_NON; $qState = isset($_REQUEST["q_state"]) ? $_REQUEST["q_state"] : REQ_NON; $qOrgID = isset($_REQUEST["q_org_id"]) ? $_REQUEST["q_org_id"] : REQ_NON; $qOrder = isset($_REQUEST["q_order"]) ? $_REQUEST["q_order"] : REQ_NON; $qLimit = isset($_REQUEST["q_limit"]) ? $_REQUEST["q_limit"] : REQ_NON; $qOffset = isset($_REQUEST["q_offset"]) ? $_REQUEST["q_offset"] : REQ_NON; //---------------------------- // judge post //---------------------------- //---------------------------- // set types //---------------------------- Util::setType($qView, "int"); Util::setType($qKeyword, "string"); Util::setType($qState, "int"); Util::setType($qOrgID, "int"); Util::setType($qOrder, "string"); Util::setType($qLimit, "int"); Util::setType($qOffset, "int"); //---------------------------- // Auth-Before validate //---------------------------- if ( $result === RES_OK ){ if ( Validate::isNumeric($qOrgID) ){ $qView = View_project::LIST_VIEW_ALL; } else if ( ! Validate::inKeyArray($qView, View_project::LIST_VIEW_TABLE()) ){ $qView = View_project::LIST_VIEW_MEMBER; } } //---------------------------- // Auth //---------------------------- if ( $result === RES_OK ){ $auth = Auth::instance("project"); // 権限 $authCheck = FALSE; switch ( $qView ){ case View_project::LIST_VIEW_MEMBER: $authCheck = $auth->readList(); break; case View_project::LIST_VIEW_CREATE: $authCheck = $auth->readList_isCreate(); break; case View_project::LIST_VIEW_ORG: $authCheck = $auth->readList_isOrg(); break; case View_project::LIST_VIEW_ALL: $authCheck = $auth->readList_isAll(); break; } if ( ! $authCheck ){ $result = RES_NG; $gResult->push("{$WORD($wk, 1)}"); } } //---------------------------- // Auth-After validate //---------------------------- if ( $result === RES_OK ){ if ( ! Validate::isString($qKeyword) ){ $qKeyword = NULL; } if ( ! Validate::inKeyArray($qState, DAO::T_PROJECT_STATE_VALID_TABLE()) ){ $qState = NULL; } if ( $qView === View_project::LIST_VIEW_ALL ){ if ( ! Validate::isNumeric($qOrgID) ){ $qOrgID = NULL; } } else { $qOrgID = User::get("organization_id"); } if ( ! Validate::isOrderParam($qOrder, DAO_project::ORDER_KEY_SQL_TABLE(), DAO_project::ORDER_VALUE_SQL_TABLE()) ){ $qOrder = NULL; } if ( ! Validate::isNumeric($qLimit) ){ $qLimit = HTML_LIMIT; } if ( ! Validate::isNumeric($qOffset) ){ $qOffset = HTML_OFFSET; } } //---------------------------- // process //---------------------------- if ( $result === RES_OK ){ $objDAOProject = DAO::instance("project"); $objViewProject = View::instance("project"); // 一覧取得 -------------------- if ( $result === RES_OK ){ if ( $qOrder ){ list($orderName, $orderType) = explode("-", $qOrder); $orderName = DAO_project::ORDER_KEY_SQL_TABLE($orderName); $orderType = DAO_project::ORDER_VALUE_SQL_TABLE($orderType); $arrOrder = array( $orderName => $orderType, ); } else { $arrOrder = NULL; } $keyword = NULL; if ( Validate::isString($qKeyword) ){ $keyword = array( "type" => DAO::TYPE_LIKE, "value" => Util::esc($qKeyword), ); } $objDAOProject->setAuth($auth); switch ($qView){ case View_project::LIST_VIEW_MEMBER: $resDAOProject = $objDAOProject->get(NULL, $keyword, NULL, NULL, $qState, User::get("id"), $arrOrder, $qLimit, $qOffset); break; case View_project::LIST_VIEW_CREATE: $resDAOProject = $objDAOProject->get(NULL, $keyword, User::get("id"), User::get("organization_id"), $qState, NULL, $arrOrder, $qLimit, $qOffset); break; case View_project::LIST_VIEW_ORG: $resDAOProject = $objDAOProject->get(NULL, $keyword, NULL, User::get("organization_id"), $qState, NULL, $arrOrder, $qLimit, $qOffset); break; case View_project::LIST_VIEW_ALL: $resDAOProject = $objDAOProject->get(NULL, $keyword, NULL, $qOrgID, $qState, NULL, $arrOrder, $qLimit, $qOffset); break; } $result = $resDAOProject["result"]; if ( $result === RES_NG ){ $gResult->push("{$WORD($wk, 2)}"); } else { parse_str( $_SERVER["QUERY_STRING"], $query); $arrHtml["table"] = $objViewProject->table($resDAOProject["data"], $qKeyword, $query, $qView === View_project::LIST_VIEW_ALL); if ( $result === RES_OK ){ $arrHtml["header"] = Printer::paginationTableHeader(TRUE, ".", $_REQUEST, $resDAOProject["count"], $qLimit, $qOffset, 10); $arrHtml["footer"] = Printer::paginationTableFooter(TRUE, ".", $_REQUEST, $resDAOProject["count"], $qLimit, $qOffset, 10); } else { $gResult->push("{$WORD($wk, 3)}"); } } } } //---------------------------- // html //---------------------------- { // menu ---------------------------------------------------------------- if ( $result !== RES_NG ){ $arrMenu = array(); //----- $arrMenu[0] = $objViewProject->tab_list($auth, $qView ); $arrMenu[-1] = $objViewProject->tab(View_project::TAB_NEW, $auth); //----- //ヘルプアイコン $arrMenuSub[] = Printer::link("", "", "icon-question-sign", NULL, NULL, "minhon.common.help('" . Help::KIND_MENU . "', '" . Help::PAGE_PROJECT . "');"); //----- $arrHtml["menu"] = Printer::menuTab($arrMenu, 0, $arrMenuSub); } // title --------------------------------------------------------------- $title = "{$WORD($wk, 4)}"; // form ---------------------------------------------------------------- if ( $result === RES_NG ){ // アクション(OK) $arrHtml["footer"] = Printer::link("OK", "btn btn-default", NULL, NULL, "/"); } // result -------------------------------------------------------------- $arrHtml["result"] = $gResult->string(TRUE, $result); } ?>