} else { $error = new Template("error", $isAPI); $error->addTransform("message", "Please add your crash report file"); $error->addTransform("url", "/submit"); $page[] = $error; } if (isset($report) and $report instanceof CrashReport) { if (!$report->isValid()) { $error = new Template("error", $isAPI); $error->addTransform("message", "This crash report is not valid"); $error->addTransform("url", "/submit"); $page[] = $error; } else { $db = new Database(); require_once "src/ReportHandler.php"; $handler = new ReportHandler($report, $isAPI); $tpl = $handler->showDetails($page); $encoded = $report->getEncoded(); //$hash = $report->getDate() . $encoded . microtime(true); $reportId = $db->insertReport($report); if ($reportId <= 0) { $error = new Template("error", $isAPI); $error->addTransform("message", "Internal error"); $error->addTransform("url", "/submit"); $page[] = $error; } else { $data = ["report" => $encoded, "reportId" => $reportId, "email" => $_POST["email"], "name" => clean($_POST["name"]), "attachedIssue" => false]; @file_put_contents("reports/" . sha1($reportId . SECRET_SALT) . ".log", json_encode($data)); header("Location: /view/{$reportId}" . ($isAPI ? "/api" : "")); $tpl->addTransform("crash_id", $reportId); $tpl->addTransform("email_hash", md5($_POST["email"]));
public static function actionUpdate() { $p_id = W2HttpRequest::getRequestInt('id', null, false, false); $tmpModel = ReportHandler::loadModelById($p_id); switch ($auther = static::getAuthIfUserCanDoIt(Utility::getCurrentUserID(), 'update', $tmpModel)) { case 'admin': //有管理权限 //有管理权限 case 'self': //作者 $tmpModel->setMissionID(W2HttpRequest::getRequestInt('missionID')); //报名ID $tmpModel->setJobID(W2HttpRequest::getRequestInt('jobID')); //工作ID $tmpModel->setBossID(W2HttpRequest::getRequestInt('bossID')); //雇主用户ID $tmpModel->setTitle(W2HttpRequest::getRequestString('title')); //汇报标题 $tmpModel->setAddress(W2HttpRequest::getRequestString('address')); //地址 $tmpModel->setLng(W2HttpRequest::getRequestFloat('lng')); //经度 $tmpModel->setLat(W2HttpRequest::getRequestFloat('lat')); //纬度 $tmpModel->setDescription(W2HttpRequest::getRequestString('description')); //描述 $tmpModel->setPhotos(W2HttpRequest::getRequestString('photos')); //图片(多个七牛网址,用逗号隔开) $tmpModel->setStatus(W2HttpRequest::getRequestInt('status')); //0: 不存在 1: 正常 2: 草稿 3:待审 break; case 'normal': //正常用户 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作'); break; case 'draft': //未激活 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '该账号未激活,不可使用该功能。'); break; case 'pending': //待审禁言 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '该账号被禁言,不可使用该功能。'); break; case 'disabled': //封号 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '该账号不可用,不可使用该功能。'); break; case 'visitor': return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您需要登录后才可以执行该操作'); break; case 'empty': return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NOT_MODEL, '不存在对应数据'); break; default: return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作'); break; } return static::save($tmpModel); }