当前位置: 首页>>代码示例>>PHP>>正文


PHP Problem类代码示例

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


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

示例1: submit

 public function submit($problem_id)
 {
     try {
         $problem = new Problem($problem_id);
         $language = fRequest::get('language', 'integer');
         if (!array_key_exists($language, static::$languages)) {
             throw new fValidationException('Invalid language.');
         }
         fSession::set('last_language', $language);
         $code = trim(fRequest::get('code', 'string'));
         if (strlen($code) == 0) {
             throw new fValidationException('Code cannot be empty.');
         }
         if ($problem->isSecretNow()) {
             if (!User::can('view-any-problem')) {
                 throw new fAuthorizationException('Problem is secret now. You are not allowed to submit this problem.');
             }
         }
         $record = new Record();
         $record->setOwner(fAuthorization::getUserToken());
         $record->setProblemId($problem->getId());
         $record->setSubmitCode($code);
         $record->setCodeLanguage($language);
         $record->setSubmitDatetime(Util::currentTime());
         $record->setJudgeStatus(JudgeStatus::PENDING);
         $record->setJudgeMessage('Judging... PROB=' . $problem->getId() . ' LANG=' . static::$languages[$language]);
         $record->setVerdict(Verdict::UNKNOWN);
         $record->store();
         Util::redirect('/status');
     } catch (fException $e) {
         fMessaging::create('error', $e->getMessage());
         fMessaging::create('code', '/submit', fRequest::get('code', 'string'));
         Util::redirect("/submit?problem={$problem_id}");
     }
 }
开发者ID:daerduoCarey,项目名称:oj,代码行数:35,代码来源:SubmitController.php

示例2: fetchTimestamp

 public function fetchTimestamp()
 {
     try {
         $p = new Problem(fRequest::get('pid', 'integer'));
         echo $p->getLastModified();
     } catch (fException $e) {
         echo -1;
     }
 }
开发者ID:daerduoCarey,项目名称:oj,代码行数:9,代码来源:PollingController.php

示例3: canCreateItem

 /**
  * Is the current user have right to create the current task ?
  *
  * @return boolean
  **/
 function canCreateItem()
 {
     if (!parent::canReadITILItem()) {
         return false;
     }
     $problem = new Problem();
     if ($problem->getFromDB($this->fields['problems_id'])) {
         return Session::haveRight("edit_all_problem", "1") || Session::haveRight("show_my_problem", "1") && ($problem->isUser(CommonITILActor::ASSIGN, Session::getLoginUserID()) || isset($_SESSION["glpigroups"]) && $problem->haveAGroup(CommonITILActor::ASSIGN, $_SESSION['glpigroups']));
     }
     return false;
 }
开发者ID:geldarr,项目名称:hack-space,代码行数:16,代码来源:problemtask.class.php

示例4: checkAuthor

 private function checkAuthor($username)
 {
     foreach ($this->getProblems() as $problem_id) {
         try {
             $problem = new Problem($problem_id);
             if ($problem->getAuthor() == $username) {
                 return TRUE;
             }
         } catch (Exception $e) {
             continue;
         }
     }
     return FALSE;
 }
开发者ID:daerduoCarey,项目名称:oj,代码行数:14,代码来源:Report.php

示例5: save

 public function save()
 {
     if (UserSession::getInstance()->getAccessLevel() < 3) {
         die("<h1>Forbidden resource for you.</h1>");
     }
     $model = new Problem();
     $model->setFields($this->params);
     $modelId = $model->get("prb_id");
     if (!isset($modelId)) {
         $status = $this->saveNew($model);
         return $status;
     } else {
         $status = $this->update($model);
         return $status;
     }
 }
开发者ID:renatorroliveira,项目名称:algod,代码行数:16,代码来源:ProblemBS.php

示例6: beforeUpdate

 static function beforeUpdate(Problem $problem)
 {
     if (!is_array($problem->input) || !count($problem->input)) {
         // Already cancel by another plugin
         return false;
     }
     //    Toolbox::logDebug("PluginBehaviorsProblem::beforeUpdate(), Problem=", $problem);
     $config = PluginBehaviorsConfig::getInstance();
     // Check is the connected user is a tech
     if (!is_numeric(Session::getLoginUserID(false)) || !Session::haveRight('problem', UPDATE)) {
         return false;
         // No check
     }
     $soltyp = isset($problem->input['solutiontypes_id']) ? $problem->input['solutiontypes_id'] : $problem->fields['solutiontypes_id'];
     // Wand to solve/close the problem
     if (isset($problem->input['solutiontypes_id']) && $problem->input['solutiontypes_id'] || isset($problem->input['solution']) && $problem->input['solution'] || isset($problem->input['status']) && in_array($problem->input['status'], array_merge(Problem::getSolvedStatusArray(), Problem::getClosedStatusArray()))) {
         if ($config->getField('is_problemsolutiontype_mandatory')) {
             if (!$soltyp) {
                 unset($problem->input['status']);
                 unset($problem->input['solution']);
                 unset($problem->input['solutiontypes_id']);
                 Session::addMessageAfterRedirect(__('You cannot close a problem without solution type', 'behaviors'), true, ERROR);
             }
         }
     }
 }
开发者ID:paisdelconocimiento,项目名称:glpi-smartcities,代码行数:26,代码来源:problem.class.php

示例7: index

 public function index()
 {
     $data = array();
     $data['rain_problems'] = Problem::recentByBasin('RAIN', 'OR');
     $data['water_problems'] = Problem::recentByBasin('WATER', 'OR');
     $data['stats'] = Problem::todayStat();
     return View::make('home/index', $data);
 }
开发者ID:withlovee,项目名称:HAII,代码行数:8,代码来源:HomeController.php

示例8: index

 /**
  * View all problems
  * @param string    $status     status of problem ("all", "marked", "unmarked")
  * @param string    $data_type  WATER / RAIN
  * @return mixed
  */
 public function index($status, $data_type)
 {
     $params = $this->getParams($status, $data_type);
     $data = $this->dataForForm($status, $data_type);
     $data['selectDate'] = true;
     $data['title'] = 'Error Log';
     Log::info($params);
     $data['problems'] = Problem::allForTable($params);
     return View::make('errorlog/index', $data);
 }
开发者ID:withlovee,项目名称:HAII,代码行数:16,代码来源:ErrorLogController.php

示例9: index

 public function index($status, $data_type)
 {
     $params = $this->getParams($status, $data_type);
     $data = $this->dataForForm($status, $data_type);
     // $params['start_date'] = date('Y-m-d', getTime());
     // $params['start_time'] = '07:01';
     $params['end_date_after'] = date('Y-m-d', getTime());
     $params['end_time_after'] = '07:01';
     $data['selectDate'] = false;
     $data['title'] = 'Daily Operations';
     $data['problems'] = Problem::allForTable($params);
     return View::make('dailyop/index', $data);
 }
开发者ID:withlovee,项目名称:HAII,代码行数:13,代码来源:DailyOpController.php

示例10: generateDailyReport

 public function generateDailyReport()
 {
     /*
       {
           "key": "HAIIEMAILKEY",
           "num": 6,
           "date": "2014-10-14 20:43",
           "rain": [
             {
               "name": "Out of Ranges",
               "stations": [
                 "TPTN",
                 "PUAA",
                 "PPCH"
               ]
             },
             {
               "name": "Missing Pattern",
               "stations": [
                 "ABCD"
               ]
             }
           ],
           "water": [
             {
               "name": "Out of Ranges",
               "stations": [
                 "WATER"
               ]
             }
           ]
         }
     */
     $data = Problem::yesterdayReport();
     $num = count($data["water"]["OR"]["stations"]) + count($data["water"]["MG"]["stations"]) + count($data["water"]["FV"]["stations"]) + count($data["rain"]["OR"]["stations"]) + count($data["rain"]["MG"]["stations"]) + count($data["rain"]["FV"]["stations"]);
     $input = array("key" => "HAIIEMAILKEY", "num" => $num, "date" => self::getStartDate('Y-m-d 07:00'), "rain" => $data["rain"], "water" => $data["water"]);
     return APIEmailController::sendEmail($input, 'daily');
 }
开发者ID:withlovee,项目名称:HAII,代码行数:38,代码来源:DailyReportController.php

示例11: index

 public function index()
 {
     $this->cache_control('private', 5);
     if ($pid = fRequest::get('id', 'integer')) {
         Util::redirect('/problem/' . $pid);
     }
     $view_any = User::can('view-any-problem');
     $this->page = fRequest::get('page', 'integer', 1);
     $this->title = trim(fRequest::get('title', 'string'));
     $this->author = trim(fRequest::get('author', 'string'));
     $this->problems = Problem::find($view_any, $this->page, $this->title, $this->author);
     $this->page_url = SITE_BASE . '/problems?';
     if (!empty($this->title)) {
         $this->page_url .= 'title=' . fHTML::encode($this->title) . '&';
     }
     if (!empty($this->author)) {
         $this->page_url .= 'author=' . fHTML::encode($this->author) . '&';
     }
     $this->page_url .= 'page=';
     $this->page_records = $this->problems;
     $this->nav_class = 'problems';
     $this->render('problem/index');
 }
开发者ID:daerduoCarey,项目名称:oj,代码行数:23,代码来源:ProblemController.php

示例12: Problem

<?php 
global $user;
if (isset($mo_request[1]) && is_numeric($mo_request[1])) {
    $problem = new Problem($mo_request[1]);
    $problem->load();
    if (!$problem->getPID()) {
        require_once $mo_theme_floder . '404.php';
    }
    if (isset($_POST['lang']) && isset($_POST['code']) && $user->getUID()) {
        // 提交solution
        if (!b_check_code()) {
            echo '提交错误!请检查格式以及是否已经登录!';
        } else {
            $new_sid = mo_add_new_solution($mo_request[1], $_POST['lang'], $_POST['code']);
            echo '提交成功!<a href="/?r=solution/' . $new_sid . '">点此</a>查看详情!';
        }
    }
    echo '<h2>' . $problem->getInfo('title') . '</h2>';
    echo '<em>标签:' . $problem->getInfo('tag') . '<br>';
    echo '时间限制:' . $problem->getInfo('time_limit') . 'MS 内存限制:' . $problem->getInfo('memory_limit') . 'MB</em>';
    echo '<h3>问题描述</h3>';
    echo $problem->getInfo('description');
    echo '<br>提交人数:' . $problem->getInfo('try') . ' AC人数:' . $problem->getInfo('solved') . '<br>';
    echo '<h3>提交代码</h3>';
    echo '<form name="form1" method="post" action="">
				语言:
				<p>
				  <label>
					<input name="lang" type="radio" required id="lang-1" value="1" checked>
					C/C++</label>
				  </p>
开发者ID:KarlZeo,项目名称:MoyOJ,代码行数:31,代码来源:problem.php

示例13: showForm

 function showForm($ID, $options = array())
 {
     global $CFG_GLPI, $DB;
     if (!static::canView()) {
         return false;
     }
     // In percent
     $colsize1 = '13';
     $colsize2 = '37';
     $default_use_notif = Entity::getUsedConfig('is_notif_enable_default', $_SESSION['glpiactive_entity'], '', 1);
     // Set default options
     if (!$ID) {
         $values = array('_users_id_requester' => Session::getLoginUserID(), '_users_id_requester_notif' => array('use_notification' => $default_use_notif, 'alternative_email' => ''), '_groups_id_requester' => 0, '_users_id_assign' => 0, '_users_id_assign_notif' => array('use_notification' => $default_use_notif, 'alternative_email' => ''), '_groups_id_assign' => 0, '_users_id_observer' => 0, '_users_id_observer_notif' => array('use_notification' => $default_use_notif, 'alternative_email' => ''), '_suppliers_id_assign_notif' => array('use_notification' => $default_use_notif, 'alternative_email' => ''), '_groups_id_observer' => 0, '_suppliers_id_assign' => 0, 'priority' => 3, 'urgency' => 3, 'impact' => 3, 'content' => '', 'entities_id' => $_SESSION['glpiactive_entity'], 'name' => '', 'itilcategories_id' => 0);
         foreach ($values as $key => $val) {
             if (!isset($options[$key])) {
                 $options[$key] = $val;
             }
         }
         if (isset($options['tickets_id'])) {
             $ticket = new Ticket();
             if ($ticket->getFromDB($options['tickets_id'])) {
                 $options['content'] = $ticket->getField('content');
                 $options['name'] = $ticket->getField('name');
                 $options['impact'] = $ticket->getField('impact');
                 $options['urgency'] = $ticket->getField('urgency');
                 $options['priority'] = $ticket->getField('priority');
                 $options['itilcategories_id'] = $ticket->getField('itilcategories_id');
                 $options['due_date'] = $ticket->getField('due_date');
             }
         }
         if (isset($options['problems_id'])) {
             $problem = new Problem();
             if ($problem->getFromDB($options['problems_id'])) {
                 $options['content'] = $problem->getField('content');
                 $options['name'] = $problem->getField('name');
                 $options['impact'] = $problem->getField('impact');
                 $options['urgency'] = $problem->getField('urgency');
                 $options['priority'] = $problem->getField('priority');
                 $options['itilcategories_id'] = $problem->getField('itilcategories_id');
                 $options['due_date'] = $problem->getField('due_date');
             }
         }
     }
     if ($ID > 0) {
         $this->check($ID, READ);
     } else {
         // Create item
         $this->check(-1, CREATE, $options);
     }
     $showuserlink = 0;
     if (User::canView()) {
         $showuserlink = 1;
     }
     $this->showFormHeader($options);
     echo "<tr class='tab_bg_1'>";
     echo "<th class='left' width='{$colsize1}%'>" . __('Opening date') . "</th>";
     echo "<td class='left' width='{$colsize2}%'>";
     if (isset($options['tickets_id'])) {
         echo "<input type='hidden' name='_tickets_id' value='" . $options['tickets_id'] . "'>";
     }
     if (isset($options['problems_id'])) {
         echo "<input type='hidden' name='_problems_id' value='" . $options['problems_id'] . "'>";
     }
     $date = $this->fields["date"];
     if (!$ID) {
         $date = date("Y-m-d H:i:s");
     }
     Html::showDateTimeField("date", array('value' => $date, 'timestep' => 1, 'maybeempty' => false));
     echo "</td>";
     echo "<th width='{$colsize1}%'>" . __('Due date') . "</th>";
     echo "<td width='{$colsize2}%' class='left'>";
     if ($this->fields["due_date"] == 'NULL') {
         $this->fields["due_date"] = '';
     }
     Html::showDateTimeField("due_date", array('value' => $this->fields["due_date"], 'timestep' => 1));
     echo "</td></tr>";
     if ($ID) {
         echo "<tr class='tab_bg_1'><th>" . __('By') . "</th><td>";
         User::dropdown(array('name' => 'users_id_recipient', 'value' => $this->fields["users_id_recipient"], 'entity' => $this->fields["entities_id"], 'right' => 'all'));
         echo "</td>";
         echo "<th>" . __('Last update') . "</th>";
         echo "<td>" . Html::convDateTime($this->fields["date_mod"]) . "\n";
         if ($this->fields['users_id_lastupdater'] > 0) {
             printf(__('%1$s: %2$s'), __('By'), getUserName($this->fields["users_id_lastupdater"], $showuserlink));
         }
         echo "</td></tr>";
     }
     if ($ID && (in_array($this->fields["status"], $this->getSolvedStatusArray()) || in_array($this->fields["status"], $this->getClosedStatusArray()))) {
         echo "<tr class='tab_bg_1'>";
         echo "<th>" . __('Date of solving') . "</th>";
         echo "<td>";
         Html::showDateTimeField("solvedate", array('value' => $this->fields["solvedate"], 'timestep' => 1, 'maybeempty' => false));
         echo "</td>";
         if (in_array($this->fields["status"], $this->getClosedStatusArray())) {
             echo "<th>" . __('Closing date') . "</th>";
             echo "<td>";
             Html::showDateTimeField("closedate", array('value' => $this->fields["closedate"], 'timestep' => 1, 'maybeempty' => false));
             echo "</td>";
         } else {
             echo "<td colspan='2'>&nbsp;</td>";
//.........这里部分代码省略.........
开发者ID:jose-martins,项目名称:glpi,代码行数:101,代码来源:change.class.php

示例14: Problem

        $prob = new Problem($cleaned["id"]);
        $prob->remove();
        break;
    case "addToLog":
        $prob = new Problem($cleaned["id"]);
        $prob->addToLog($cleaned["msg"]);
        break;
    case "getLog":
        $prob = new Problem($cleaned["id"]);
        $log = $prob->getLog();
        header("Content-type: application/json");
        echo json_encode($log);
        break;
    case "getLocation":
        header("Content-type: application/json");
        $prob = new Problem($cleaned["id"]);
        echo json_encode($prob->getLocation());
        break;
}
pg_close($conn);
function prob_output($problems, $format, $outProj)
{
    if ($format == "xml") {
        header("Content-type: text/xml");
        $xml = "";
        $xml .= "<freemap><projection>{$outProj}</projection>";
        foreach ($problems as $prob) {
            $xml .= $prob->output("xml", $outProj);
        }
        $xml .= "</freemap>";
        echo $xml;
开发者ID:Huertix,项目名称:Freemap,代码行数:31,代码来源:Problem.php

示例15: giveItem


//.........这里部分代码省略.........
                     return $out;
                 }
                 break;
             case "glpi_documenttypes.icon":
                 if (!empty($data[$num][0]['name'])) {
                     return "<img class='middle' alt='' src='" . $CFG_GLPI["typedoc_icon_dir"] . "/" . $data[$num][0]['name'] . "'>";
                 }
                 return "&nbsp;";
             case "glpi_documents.filename":
                 $doc = new Document();
                 if ($doc->getFromDB($data['id'])) {
                     return $doc->getDownloadLink();
                 }
                 return NOT_AVAILABLE;
             case "glpi_tickets_tickets.tickets_id_1":
                 $out = "";
                 $displayed = array();
                 for ($k = 0; $k < $data[$num]['count']; $k++) {
                     $linkid = $data[$num][$k]['tickets_id_2'] == $data['id'] ? $data[$num][$k]['name'] : $data[$num][$k]['tickets_id_2'];
                     if ($linkid > 0 && !isset($displayed[$linkid])) {
                         $text = "<a ";
                         $text .= "href=\"" . $CFG_GLPI["root_doc"] . "/front/ticket.form.php?id={$linkid}\">";
                         $text .= Dropdown::getDropdownName('glpi_tickets', $linkid) . "</a>";
                         if (count($displayed)) {
                             $out .= self::LBBR;
                         }
                         $displayed[$linkid] = $linkid;
                         $out .= $text;
                     }
                 }
                 return $out;
             case "glpi_problems.id":
                 if ($searchopt[$ID]["datatype"] == 'count') {
                     if ($data[$num][0]['name'] > 0 && Session::haveRight("problem", Problem::READALL)) {
                         if ($itemtype == 'ITILCategory') {
                             $options['criteria'][0]['field'] = 7;
                             $options['criteria'][0]['searchtype'] = 'equals';
                             $options['criteria'][0]['value'] = $data['id'];
                             $options['criteria'][0]['link'] = 'AND';
                         } else {
                             $options['criteria'][0]['field'] = 12;
                             $options['criteria'][0]['searchtype'] = 'equals';
                             $options['criteria'][0]['value'] = 'all';
                             $options['criteria'][0]['link'] = 'AND';
                             $options['metacriteria'][0]['itemtype'] = $itemtype;
                             $options['metacriteria'][0]['field'] = self::getOptionNumber($itemtype, 'name');
                             $options['metacriteria'][0]['searchtype'] = 'equals';
                             $options['metacriteria'][0]['value'] = $data['id'];
                             $options['metacriteria'][0]['link'] = 'AND';
                         }
                         $options['reset'] = 'reset';
                         $out = "<a id='problem{$itemtype}" . $data['id'] . "' ";
                         $out .= "href=\"" . $CFG_GLPI["root_doc"] . "/front/problem.php?" . Toolbox::append_params($options, '&amp;') . "\">";
                         $out .= $data[$num][0]['name'] . "</a>";
                         return $out;
                     }
                 }
                 break;
             case "glpi_tickets.id":
                 if ($searchopt[$ID]["datatype"] == 'count') {
                     if ($data[$num][0]['name'] > 0 && Session::haveRight("ticket", Ticket::READALL)) {
                         if ($itemtype == 'User') {
                             // Requester
                             if ($ID == 60) {
                                 $options['criteria'][0]['field'] = 4;
                                 $options['criteria'][0]['searchtype'] = 'equals';
开发者ID:jose-martins,项目名称:glpi,代码行数:67,代码来源:search.class.php


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