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


PHP Process::encodeProcess方法代码示例

本文整理汇总了PHP中Process::encodeProcess方法的典型用法代码示例。如果您正苦于以下问题:PHP Process::encodeProcess方法的具体用法?PHP Process::encodeProcess怎么用?PHP Process::encodeProcess使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Process的用法示例。


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

示例1: postProcess


//.........这里部分代码省略.........
                             if ($mask->getCorrect() === '1' && !$foundInStudentsAnswer) {
                                 $allcorrect = false;
                                 break;
                             } elseif ($mask->getCorrect() === '0' && $foundInStudentsAnswer) {
                                 $allcorrect = false;
                                 break;
                             }
                         }
                     }
                     if ($allcorrect) {
                         $points = $pro->getExercise()->getMaxPoints();
                     }
                     // save the marking
                     #region Form to PDF
                     if ($pro->getMarking() === null) {
                         $raw = $pro->getRawSubmission();
                         $exerciseName = '';
                         if ($raw !== null) {
                             $exerciseName = $raw->getExerciseName();
                         }
                         $answer = "";
                         if ($forms->getType() == 0) {
                             $answer = $formdata->getChoices()[0]->getText();
                         }
                         if ($forms->getType() == 1) {
                             $answer = $this->ChoiceIdToText($formdata->getChoices()[0]->getText(), $forms->getChoices());
                         }
                         if ($forms->getType() == 2) {
                             foreach ($formdata->getChoices() as $chosen) {
                                 $answer .= $this->ChoiceIdToText($chosen->getText(), $forms->getChoices()) . '<br>';
                             }
                         }
                         $answer2 = "";
                         foreach ($forms->getChoices() as $chosen) {
                             if ($chosen->getCorrect() === '1') {
                                 $answer2 .= $chosen->getText() . '<br>';
                             }
                         }
                         $Text = "<h1>AUFGABE {$exerciseName}</h1>" . "<hr>";
                         if ($forms->getTask() !== null && trim($forms->getTask()) != '') {
                             $Text .= "<p>" . "<h2>Aufgabenstellung:</h2>" . $forms->getTask() . "</p>";
                         }
                         $Text .= "<p>" . "<h2>Antwort:</h2>" . "<span style=\"color: " . ($points === 0 ? 'red' : 'black') . "\">" . $answer . "</span></p>";
                         if ($points === 0) {
                             $Text .= "<p>" . "<h2>L&ouml;sung:</h2><span style=\"color: green\">" . $answer2 . "</span></p>";
                         }
                         if ($forms->getSolution() !== null && trim($forms->getSolution()) != '') {
                             $Text .= "<p>" . "<h2>L&ouml;sungsbegr&uuml;ndung:</h2>" . $forms->getSolution() . "</p>";
                         }
                         $Text .= "<p style=\"text-align: center;\">" . "<h2><span style=\"color: red\">{$points}P</span></h2>" . "</p>";
                         $pdf = Pdf::createPdf($Text);
                         //echo Pdf::encodePdf($pdf);return;
                         $result = Request::routeRequest('POST', '/pdf', array(), Pdf::encodePdf($pdf), $this->_pdf, 'pdf');
                         // checks the correctness of the query
                         if ($result['status'] >= 200 && $result['status'] <= 299) {
                             $pdf = File::decodeFile($result['content']);
                             $pdf->setDisplayName($exerciseName . '.pdf');
                             $pdf->setTimeStamp($timestamp);
                             $pdf->setBody(null);
                             $submission = $pro->getSubmission();
                             if ($submission === null) {
                                 $submission = $pro->getRawSubmission();
                             }
                             $studentId = $pro->getRawSubmission() !== null ? $pro->getRawSubmission()->getStudentId() : null;
                             if ($studentId === null) {
                                 $studentId = $pro->getSubmission() !== null ? $pro->getSubmission()->getStudentId() : null;
                             }
                             $marking = Marking::createMarking(null, $studentId, null, null, null, null, 3, $points, $submission->getDate() !== null ? $submission->getDate() : time());
                             if (is_object($submission)) {
                                 $marking->setSubmission(clone $submission);
                             }
                             $marking->setFile($pdf);
                             $pro->setMarking($marking);
                         } else {
                             $res[] = null;
                             $this->app->response->setStatus(409);
                             continue;
                         }
                     }
                     #endregion
                     $rawSubmission = $pro->getRawSubmission();
                     $rawFile = $rawSubmission->getFile();
                     $rawFile->setBody(Form::encodeForm($formdata), true);
                     $rawSubmission->setFile($rawFile);
                     $rawSubmission->setExerciseId($eid);
                     $pro->setRawSubmission($rawSubmission);
                     $res[] = $pro;
                     continue;
                 }
             }
         }
         $this->app->response->setStatus(409);
         $res[] = null;
     }
     if (!$arr && count($res) == 1) {
         $this->app->response->setBody(Process::encodeProcess($res[0]));
     } else {
         $this->app->response->setBody(Process::encodeProcess($res));
     }
 }
开发者ID:sawh,项目名称:ostepu-system,代码行数:101,代码来源:LFormProcessor.php

示例2: postSubmission


//.........这里部分代码省略.........
                 }
                 if (!$found && count($exerciseFileTypes) > 0) {
                     $submission->addMessage("falscher Dateityp \nGefunden: " . $mimeType . " ." . $foundExtension . "\nErlaubt: " . implode(',', $types));
                     $res[] = $submission;
                     $this->app->response->setStatus(409);
                     unlink($filePath);
                     continue;
                 }
                 unlink($filePath);
             }
         } else {
             if ($result2['status'] != 404) {
                 $submission->addMessage("Interner Fehler");
                 $res[] = $submission;
                 $this->app->response->setStatus(409);
                 continue;
             }
         }
         // process submission
         if ($processors !== null) {
             if (!is_array($processors)) {
                 $processors = array($processors);
             }
             foreach ($processors as $pro) {
                 $component = $pro->getTarget();
                 if ($process->getExercise() === null) {
                     $process->setExercise($pro->getExercise());
                 }
                 $process->setParameter($pro->getParameter());
                 $process->setAttachment($pro->getAttachment());
                 $process->setTarget($pro->getTarget());
                 $process->setWorkFiles($pro->getWorkFiles());
                 //echo Process::encodeProcess($process)."_______";// return;
                 $result = Request::post($component->getAddress() . '/process', array(), Process::encodeProcess($process));
                 //echo $result['content'].'_______';
                 if ($result['status'] >= 200 && $result['status'] <= 299) {
                     $process = Process::decodeProcess($result['content']);
                 } else {
                     $fail = true;
                     $submission->addMessage("Beim Verarbeiten der Einsendung ist ein Fehler aufgetreten");
                     if (isset($result['content'])) {
                         $content = Process::decodeProcess($result['content']);
                         $submission->setStatus($content->getStatus());
                         $submission->addMessages($content->getMessages());
                     }
                     break;
                 }
             }
         }
         if ($fail) {
             if (isset($submission)) {
                 $submission->setFile(null);
             }
             $res[] = $submission;
             $this->app->response->setStatus(409);
             continue;
         }
         // upload submission
         $uploadSubmission = $process->getSubmission();
         if ($uploadSubmission === null) {
             $uploadSubmission = $process->getRawSubmission();
             if ($uploadSubmission->getFile() != null) {
                 $file = $uploadSubmission->getFile();
                 if ($file->getDisplayName() == null) {
                     $file->setDisplayName($submission->getExerciseName());
                 }
开发者ID:sawh,项目名称:ostepu-system,代码行数:67,代码来源:LProcessor.php

示例3: postProcess


//.........这里部分代码省略.........
                                         while ($i < count($parameter)) {
                                             if (@preg_match($test, DefaultNormalizer::normalizeText($choice->getText())) !== false) {
                                                 break;
                                             }
                                             $test .= ' ' . $parameter[$i];
                                             $i++;
                                         }
                                         $match = @preg_match($test, DefaultNormalizer::normalizeText($choice->getText()));
                                         if ($match === false) {
                                             $fail = true;
                                             $pro->addMessage('"' . $test . '" ist kein gültiger regulärer Ausdruck.');
                                         } elseif ($match == false) {
                                             $fail = true;
                                             $pro->addMessage('"' . $choice->getText() . '" entspricht nicht dem regulären Ausdruck "' . $test . '".');
                                         }
                                         break;
                                 }
                             }
                         }
                     }
                     if ($fail) {
                         // received submission isn't correct
                         $pro->setStatus(409);
                         $res[] = $pro;
                         $this->app->response->setStatus(409);
                         continue;
                     }
                     // save the submission
                     #region Form to PDF
                     if ($pro->getSubmission() === null) {
                         $raw = $pro->getRawSubmission();
                         $exerciseName = '';
                         if ($raw !== null) {
                             $exerciseName = $raw->getExerciseName();
                         }
                         $answer = "";
                         if ($forms->getType() == 0) {
                             $answer = $formdata->getChoices()[0]->getText();
                         }
                         if ($forms->getType() == 1) {
                             $answer = $this->ChoiceIdToText($formdata->getChoices()[0]->getText(), $forms->getChoices());
                         }
                         if ($forms->getType() == 2) {
                             foreach ($formdata->getChoices() as $chosen) {
                                 $answer .= $this->ChoiceIdToText($chosen->getText(), $forms->getChoices()) . '<br>';
                             }
                         }
                         $Text = "<h1>AUFGABE {$exerciseName}</h1>" . "<hr>";
                         if ($forms->getTask() !== null && trim($forms->getTask()) != '') {
                             $Text .= "<p>" . "<h2>Aufgabenstellung:</h2>" . $forms->getTask() . "</p>";
                         }
                         $Text .= "<p>" . "<h2>Antwort:</h2>" . $answer . "</p>";
                         $pdf = Pdf::createPdf($Text);
                         $pdf->setText($Text);
                         //echo Pdf::encodePdf($pdf);return;
                         $result = Request::routeRequest('POST', '/pdf', array(), Pdf::encodePdf($pdf), $this->_pdf, 'pdf');
                         // checks the correctness of the query
                         if ($result['status'] >= 200 && $result['status'] <= 299) {
                             $pdf = File::decodeFile($result['content']);
                             $pdf->setDisplayName($exerciseName . '.pdf');
                             $pdf->setTimeStamp($timestamp);
                             $pdf->setBody(null);
                             if (is_object($pro->getRawSubmission())) {
                                 $submission = clone $pro->getRawSubmission();
                             } else {
                                 $submission = new Submission();
                             }
                             $submission->setFile($pdf);
                             $submission->setExerciseId($eid);
                             $pro->setSubmission($submission);
                         } else {
                             $pro->setStatus(409);
                             $res[] = $pro;
                             $this->app->response->setStatus(409);
                             continue;
                         }
                     }
                     #endregion
                     $rawSubmission = $pro->getRawSubmission();
                     $rawFile = $rawSubmission->getFile();
                     $rawFile->setBody(Form::encodeForm($formdata), true);
                     $rawSubmission->setFile($rawFile);
                     $rawSubmission->setExerciseId($eid);
                     $pro->setRawSubmission($rawSubmission);
                     $pro->setStatus(201);
                     $res[] = $pro;
                     continue;
                 }
             }
         }
         $this->app->response->setStatus(409);
         $pro->setStatus(409);
         $res[] = $pro;
     }
     if (!$arr && count($res) == 1) {
         $this->app->response->setBody(Process::encodeProcess($res[0]));
     } else {
         $this->app->response->setBody(Process::encodeProcess($res));
     }
 }
开发者ID:sawh,项目名称:ostepu-system,代码行数:101,代码来源:LFormPredecessor.php

示例4: postProcess


//.........这里部分代码省略.........
                         exec('(javac ' . $param . ') 2>&1', $output, $return);
                         chdir($pathOld);
                         if ($return == 0) {
                             // wenn wir als Antwort eine 0 erhalten, konnte alles problemlos
                             // kompiliert werden
                             $pro->setStatus(201);
                         } else {
                             // ansonsten gab es ein Problem, also einen Fehlerstatus zurückgeben
                             $pro->setStatus(409);
                             // die Antwort des Compilers muss nun noch Studentengerecht zusammengebaut werden
                             // für die Fehlermeldung
                             if (count($output) > 0) {
                                 $text = '';
                                 $outputList = array();
                                 // entfernt störende Zeichen
                                 foreach ($output as $out) {
                                     $out = trim(trim($out), '^');
                                     if ($out == '') {
                                         continue;
                                     }
                                     $outputList[] = $out;
                                 }
                                 // nur die ersten 7 Fehler und die Zusammenfassung am Ende (2 Zeilen) behalten
                                 if (count($outputList) > 10) {
                                     $outputList[7] = '...';
                                     for ($i = 8; $i < count($outputList) - 2; $i++) {
                                         $outputList[$i] = '';
                                     }
                                 }
                                 // nur nichtleere Ausgabezeilen werden zur Aufgabe zusammengefasst
                                 foreach ($outputList as $out) {
                                     if ($out == '') {
                                         continue;
                                     }
                                     $text .= $out . "\n";
                                 }
                                 // die fertige Fehlermeldung dem Prozessobjekt übergeben
                                 $pro->addMessage($text);
                             }
                             $this->app->response->setStatus(409);
                         }
                     } elseif ($type == 'custom') {
                         // es können natürlich auch individuelle Programmaufrufe damit konfiguriert werden
                         // dabei liefern die Parameter auch das aufzurufende Programm mit (Gefahr???)
                         $output = array();
                         $return = '';
                         $param = implode(' ', $parameter);
                         if ($param != '') {
                             $param = str_replace('$file', $filePath . '/' . $fileName, $param);
                         } else {
                             $param = $filePath . '/' . $fileName;
                         }
                         exec('(' . $param . ') 2>&1', $output, $return);
                         if ($return == 0) {
                             // nothing
                             $pro->setStatus(201);
                         } else {
                             $pro->setStatus(409);
                             if (count($output) > 0) {
                                 $text = '';
                                 $outputList = $output;
                                 if (count($outputList) > 10) {
                                     $outputList[4] = '...';
                                     for ($i = 5; $i < count($outputList) - 5; $i++) {
                                         $outputList[$i] = '';
                                     }
                                 }
                                 foreach ($outputList as $out) {
                                     if ($out == '') {
                                         continue;
                                     }
                                     $text .= $out . "\n";
                                 }
                                 $pro->addMessage($text);
                             }
                             $this->app->response->setStatus(409);
                         }
                     }
                 } else {
                     // es wurden womöglich nicht genug Parameter übergeben
                     // er verlangt mindestens den Compiler und einen Parameter
                     // Bsp.: java $file
                 }
                 // nachdem die Einsendung bearbeitet wurde, kann das temporäre
                 // Verzeichnis mit Inhalt entfernt werden
                 $this->deleteDir($filePath);
                 // das Prozessobjekt kann nun zur Ausgabe hinzugefügt werden
                 $res[] = $pro;
                 continue;
             }
         }
     }
     // wenn nur ein einzelnes Objekt als Eingabe kam, wir auch nur ein Einzelobjekt
     // zurückgegeben, ansonsten eine Liste
     if (!$arr && count($res) == 1) {
         $this->app->response->setBody(Process::encodeProcess($res[0]));
     } else {
         $this->app->response->setBody(Process::encodeProcess($res));
     }
 }
开发者ID:sawh,项目名称:ostepu-system,代码行数:101,代码来源:LOOP.php

示例5: get

 public function get($functionName, $sqlFile, $pre = '', $processid, $courseid, $esid, $eid, $comid, $singleResult = false, $checkSession = true)
 {
     $this->loadConfig($pre);
     $pre = ($pre === '' ? '' : '_') . $pre;
     Logger::Log('starts GET ' . $functionName, LogLevel::DEBUG);
     // checks whether incoming data has the correct data type
     $pre = DBJson::mysql_real_escape_string($pre);
     $courseid = DBJson::mysql_real_escape_string($courseid);
     $esid = DBJson::mysql_real_escape_string($esid);
     $eid = DBJson::mysql_real_escape_string($eid);
     $processid = DBJson::mysql_real_escape_string($processid);
     $comid = DBJson::mysql_real_escape_string($comid);
     // starts a query, by using a given file
     $result = DBRequest::getRoutedSqlFile($this->query, $sqlFile, array('pre' => $pre, 'processid' => $processid, 'courseid' => $courseid, 'esid' => $esid, 'eid' => $eid, 'comid' => $comid), $checkSession);
     // checks the correctness of the query
     if ($result['status'] >= 200 && $result['status'] <= 299) {
         $query = Query::decodeQuery($result['content']);
         if (is_array($query)) {
             $query = $query[count($query) - 1];
         }
         if ($query->getNumRows() > 0) {
             $res = Process::ExtractProcess($query->getResponse(), $singleResult);
             $this->_app->response->setBody(Process::encodeProcess($res));
             $this->_app->response->setStatus(200);
             if (isset($result['headers']['Content-Type'])) {
                 $this->_app->response->headers->set('Content-Type', $result['headers']['Content-Type']);
             }
             $this->_app->stop();
         } else {
             $result['status'] = 404;
         }
     }
     Logger::Log('GET ' . $functionName . ' failed', LogLevel::ERROR);
     $this->_app->response->setStatus(isset($result['status']) ? $result['status'] : 409);
     $this->_app->response->setBody(Process::encodeProcess(new Process()));
     $this->_app->stop();
 }
开发者ID:sawh,项目名称:ostepu-system,代码行数:37,代码来源:DBProcess.php

示例6: foreach

                        foreach ($processorParameter as $tempKey => $Data) {
                            $Data2 = array();
                            foreach ($Data as &$dat) {
                                if ($dat !== '') {
                                    $Data2[] = $dat;
                                }
                            }
                            if (isset($tempProcessors[$tempKey])) {
                                $tempProcessors[$tempKey]->setParameter(implode(' ', array_values($Data2)));
                            }
                        }
                    }
                    $processors = array_merge($processors, $tempProcessors);
                }
            }
            $processes = json_decode(Process::encodeProcess($processors), true);
            #############################
            ### end create_processors ###
            #############################
            #endregion
        }
        $sheet_data['exercises'] = json_decode(Exercise::encodeExercise($exercises), true);
    }
}
if (isset($_POST['action'])) {
    // && $_POST['action'] == "new"
    $timestamp = time();
    $errorInSent = false;
    // validate all sheet data
    $f = new FormEvaluator($_POST);
    $f->checkStringForKey('sheetName', FormEvaluator::REQUIRED, 'error', Language::Get('main', 'invalidSheetName', $langTemplate));
开发者ID:sawh,项目名称:ostepu-system,代码行数:31,代码来源:CreateSheet.php


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