@@ -43,7 +43,7 @@ discard block |
||
| 43 | 43 | $groupModel=new GroupModel(); |
| 44 | 44 | $contestModel=new ContestModel(); |
| 45 | 45 | $basic_info=$groupModel->details($gcode); |
| 46 | - if(empty($basic_info)) return Redirect::route('group.index'); |
|
| 46 | + if (empty($basic_info)) return Redirect::route('group.index'); |
|
| 47 | 47 | $my_profile=$groupModel->userProfile(Auth::user()->id, $basic_info["gid"]); |
| 48 | 48 | $clearance=$groupModel->judgeClearance($basic_info["gid"], Auth::user()->id); |
| 49 | 49 | $member_list=$groupModel->userList($basic_info["gid"]); |
@@ -86,13 +86,13 @@ discard block |
||
| 86 | 86 | * |
| 87 | 87 | * @return Response |
| 88 | 88 | */ |
| 89 | - public function analysis($gcode){ |
|
| 90 | - $groupModel = new GroupModel(); |
|
| 89 | + public function analysis($gcode) { |
|
| 90 | + $groupModel=new GroupModel(); |
|
| 91 | 91 | $basic_info=$groupModel->details($gcode); |
| 92 | - if(empty($basic_info)) return Redirect::route('group.index'); |
|
| 92 | + if (empty($basic_info)) return Redirect::route('group.index'); |
|
| 93 | 93 | $clearance=$groupModel->judgeClearance($basic_info["gid"], Auth::user()->id); |
| 94 | - if($clearance < 1) return Redirect::route('group.detail',['gcode' => $gcode]); |
|
| 95 | - $group_info = $groupModel->details($gcode); |
|
| 94 | + if ($clearance<1) return Redirect::route('group.detail', ['gcode' => $gcode]); |
|
| 95 | + $group_info=$groupModel->details($gcode); |
|
| 96 | 96 | return view('group.settings.analysis', [ |
| 97 | 97 | 'page_title'=>"Group Analysis", |
| 98 | 98 | 'site_title'=>"NOJ", |
@@ -102,13 +102,13 @@ discard block |
||
| 102 | 102 | ]); |
| 103 | 103 | } |
| 104 | 104 | |
| 105 | - public function analysisDownload($gcode,Request $request){ |
|
| 106 | - $all_data = $request->all(); |
|
| 107 | - $groupModel = new GroupModel(); |
|
| 108 | - $group_info = $groupModel->details($gcode); |
|
| 109 | - $mode = $all_data['mode'] ?? 'contest'; |
|
| 110 | - if($mode == 'contest'){ |
|
| 111 | - $data = $groupModel->groupMemberPracticeContestStat($group_info['gid']); |
|
| 105 | + public function analysisDownload($gcode, Request $request) { |
|
| 106 | + $all_data=$request->all(); |
|
| 107 | + $groupModel=new GroupModel(); |
|
| 108 | + $group_info=$groupModel->details($gcode); |
|
| 109 | + $mode=$all_data['mode'] ?? 'contest'; |
|
| 110 | + if ($mode=='contest') { |
|
| 111 | + $data=$groupModel->groupMemberPracticeContestStat($group_info['gid']); |
|
| 112 | 112 | return Excel::download( |
| 113 | 113 | new GroupAnalysisExport( |
| 114 | 114 | [ |
@@ -121,10 +121,10 @@ discard block |
||
| 121 | 121 | 'percent' => $all_data['percent'] ?? false, |
| 122 | 122 | ] |
| 123 | 123 | ), |
| 124 | - $gcode . '_Group_Contest_Analysis.xlsx' |
|
| 124 | + $gcode.'_Group_Contest_Analysis.xlsx' |
|
| 125 | 125 | ); |
| 126 | - }else{ |
|
| 127 | - $data = $groupModel->groupMemberPracticeTagStat($group_info['gid']); |
|
| 126 | + } else { |
|
| 127 | + $data=$groupModel->groupMemberPracticeTagStat($group_info['gid']); |
|
| 128 | 128 | return Excel::download( |
| 129 | 129 | new GroupAnalysisExport( |
| 130 | 130 | [ |
@@ -137,7 +137,7 @@ discard block |
||
| 137 | 137 | 'percent' => $all_data['percent'] ?? false, |
| 138 | 138 | ] |
| 139 | 139 | ), |
| 140 | - $gcode . '_Group_Tag_Analysis.xlsx' |
|
| 140 | + $gcode.'_Group_Tag_Analysis.xlsx' |
|
| 141 | 141 | ); |
| 142 | 142 | } |
| 143 | 143 | } |
@@ -33,7 +33,7 @@ discard block |
||
| 33 | 33 | */ |
| 34 | 34 | protected function schedule(Schedule $schedule) |
| 35 | 35 | { |
| 36 | - $schedule->call(function () { |
|
| 36 | + $schedule->call(function() { |
|
| 37 | 37 | $babel=new Babel(); |
| 38 | 38 | for ($i=1; $i<=12; $i++) { |
| 39 | 39 | $babel->judge(); |
@@ -42,35 +42,35 @@ discard block |
||
| 42 | 42 | // file_put_contents(storage_path('app/task-schedule.output'),"Successfully Synced Judger"); |
| 43 | 43 | })->everyMinute()->description("Sync Judger"); |
| 44 | 44 | |
| 45 | - $schedule->call(function () { |
|
| 45 | + $schedule->call(function() { |
|
| 46 | 46 | $rankModel=new RankModel(); |
| 47 | 47 | $rankModel->rankList(); |
| 48 | 48 | // file_put_contents(storage_path('app/task-schedule.output'),"Successfully Updated Rank"); |
| 49 | 49 | })->dailyAt('02:00')->description("Update Rank"); |
| 50 | 50 | |
| 51 | - $schedule->call(function () { |
|
| 51 | + $schedule->call(function() { |
|
| 52 | 52 | $siteMapModel=new SiteMapModel(); |
| 53 | 53 | // file_put_contents(storage_path('app/task-schedule.output'),"Successfully Updated SiteMap"); |
| 54 | 54 | })->dailyAt('02:00')->description("Update SiteMap"); |
| 55 | 55 | |
| 56 | - $schedule->call(function () { |
|
| 56 | + $schedule->call(function() { |
|
| 57 | 57 | $groupModel=new GroupModel(); |
| 58 | 58 | $groupModel->cacheTrendingGroups(); |
| 59 | 59 | // file_put_contents(storage_path('app/task-schedule.output'),"Successfully Cached Trending Groups"); |
| 60 | 60 | })->dailyAt('03:00')->description("Update Trending Groups"); |
| 61 | 61 | |
| 62 | 62 | $schedule->call(function() { |
| 63 | - $groupModel = new GroupModel(); |
|
| 64 | - $ret = $groupModel->refreshAllElo(); |
|
| 63 | + $groupModel=new GroupModel(); |
|
| 64 | + $ret=$groupModel->refreshAllElo(); |
|
| 65 | 65 | foreach ($ret as $gid => $group) { |
| 66 | - if(empty($group['result'])){ |
|
| 66 | + if (empty($group['result'])) { |
|
| 67 | 67 | Log::channel('group_elo')->info('Refreshed Group Elo (Empty) : ('.$gid.')'.$group['name']); |
| 68 | - }else{ |
|
| 68 | + } else { |
|
| 69 | 69 | Log::channel('group_elo')->info('Refreshing Group Elo: ('.$gid.')'.$group['name']); |
| 70 | 70 | foreach ($group['result'] as $contest) { |
| 71 | - if($contest['ret'] == 'success'){ |
|
| 71 | + if ($contest['ret']=='success') { |
|
| 72 | 72 | Log::channel('group_elo')->info(' Elo Clac Successfully : ('.$contest['cid'].')'.$contest['name']); |
| 73 | - }else{ |
|
| 73 | + } else { |
|
| 74 | 74 | Log::channel('group_elo')->info(' Elo Clac Faild (Judge Not Over) : ('.$contest['cid'].')'.$contest['name'].' sids:'); |
| 75 | 75 | foreach ($contest['submissions'] as $sid) { |
| 76 | 76 | Log::channel('group_elo')->info(' '.$sid['sid']); |
@@ -81,45 +81,45 @@ discard block |
||
| 81 | 81 | } |
| 82 | 82 | })->dailyAt('04:00')->description("Update Group Elo"); |
| 83 | 83 | |
| 84 | - $schedule->call(function () { |
|
| 85 | - $contestModel = new ContestModel(); |
|
| 86 | - $syncList = $contestModel->runningContest(); |
|
| 84 | + $schedule->call(function() { |
|
| 85 | + $contestModel=new ContestModel(); |
|
| 86 | + $syncList=$contestModel->runningContest(); |
|
| 87 | 87 | foreach ($syncList as $syncContest) { |
| 88 | 88 | if (!isset($syncContest['vcid'])) { |
| 89 | 89 | $contestRankRaw=$contestModel->contestRankCache($syncContest['cid']); |
| 90 | 90 | $cid=$syncContest['cid']; |
| 91 | 91 | Cache::tags(['contest', 'rank'])->put($cid, $contestRankRaw); |
| 92 | 92 | Cache::tags(['contest', 'rank'])->put("contestAdmin$cid", $contestRankRaw); |
| 93 | - continue ; |
|
| 93 | + continue; |
|
| 94 | 94 | } |
| 95 | - $className = "App\\Babel\\Extension\\hdu\\Synchronizer"; // TODO Add OJ judgement. |
|
| 96 | - $all_data = [ |
|
| 95 | + $className="App\\Babel\\Extension\\hdu\\Synchronizer"; // TODO Add OJ judgement. |
|
| 96 | + $all_data=[ |
|
| 97 | 97 | 'oj'=>"hdu", |
| 98 | 98 | 'vcid'=>$syncContest['vcid'], |
| 99 | 99 | 'gid'=>$syncContest['gid'], |
| 100 | 100 | 'cid'=>$syncContest['cid'], |
| 101 | 101 | ]; |
| 102 | - $hduSync = new $className($all_data); |
|
| 102 | + $hduSync=new $className($all_data); |
|
| 103 | 103 | $hduSync->crawlRank(); |
| 104 | 104 | $hduSync->crawlClarification(); |
| 105 | 105 | } |
| 106 | 106 | // file_put_contents(storage_path('app/task-schedule.output'),"Successfully Synced Remote Rank and Clarification"); |
| 107 | 107 | })->everyMinute()->description("Sync Remote Rank and Clarification"); |
| 108 | 108 | |
| 109 | - $schedule->call(function () { |
|
| 110 | - $contestModel = new ContestModel(); |
|
| 111 | - $syncList = $contestModel->runningContest(); |
|
| 109 | + $schedule->call(function() { |
|
| 110 | + $contestModel=new ContestModel(); |
|
| 111 | + $syncList=$contestModel->runningContest(); |
|
| 112 | 112 | foreach ($syncList as $syncContest) { |
| 113 | 113 | if (isset($syncContest['crawled'])) { |
| 114 | 114 | if (!$syncContest['crawled']) { |
| 115 | - $className = "App\\Babel\\Extension\\hdu\\Synchronizer"; |
|
| 116 | - $all_data = [ |
|
| 115 | + $className="App\\Babel\\Extension\\hdu\\Synchronizer"; |
|
| 116 | + $all_data=[ |
|
| 117 | 117 | 'oj'=>"hdu", |
| 118 | 118 | 'vcid'=>$syncContest['vcid'], |
| 119 | 119 | 'gid'=>$syncContest['gid'], |
| 120 | 120 | 'cid'=>$syncContest['cid'], |
| 121 | 121 | ]; |
| 122 | - $hduSync = new $className($all_data); |
|
| 122 | + $hduSync=new $className($all_data); |
|
| 123 | 123 | $hduSync->scheduleCrawl(); |
| 124 | 124 | $contestModel->updateCrawlStatus($syncContest['cid']); |
| 125 | 125 | } |
@@ -127,7 +127,7 @@ discard block |
||
| 127 | 127 | } |
| 128 | 128 | })->everyMinute()->description("Sync Contest Problem"); |
| 129 | 129 | |
| 130 | - $schedule->call(function () { |
|
| 130 | + $schedule->call(function() { |
|
| 131 | 131 | $oidList=EloquentJudgeServerModel::column('oid'); |
| 132 | 132 | $babel=new Babel(); |
| 133 | 133 | foreach ($oidList as $oid) { |
@@ -18,11 +18,11 @@ discard block |
||
| 18 | 18 | |
| 19 | 19 | public function login($all_data) |
| 20 | 20 | { |
| 21 | - if(isset($all_data["url"])) $url = $all_data["url"]; else throw new Exception("url is not exist in all_data"); |
|
| 22 | - if(isset($all_data["data"])) $data = $all_data["data"]; else throw new Exception("data is not exist in all_data"); |
|
| 23 | - if(isset($all_data["oj"])) $oj = $all_data["oj"]; else throw new Exception("oj is not exist in all_data"); |
|
| 24 | - if(isset($all_data["ret"])) $ret = $all_data["ret"]; else $ret = 'false'; |
|
| 25 | - if(isset($all_data["handle"])) $handle = $all_data["handle"]; else $handle = "default"; |
|
| 21 | + if (isset($all_data["url"])) $url=$all_data["url"]; else throw new Exception("url is not exist in all_data"); |
|
| 22 | + if (isset($all_data["data"])) $data=$all_data["data"]; else throw new Exception("data is not exist in all_data"); |
|
| 23 | + if (isset($all_data["oj"])) $oj=$all_data["oj"]; else throw new Exception("oj is not exist in all_data"); |
|
| 24 | + if (isset($all_data["ret"])) $ret=$all_data["ret"]; else $ret='false'; |
|
| 25 | + if (isset($all_data["handle"])) $handle=$all_data["handle"]; else $handle="default"; |
|
| 26 | 26 | |
| 27 | 27 | $datapost=curl_init(); |
| 28 | 28 | $headers=array("Expect:"); |
@@ -54,12 +54,12 @@ discard block |
||
| 54 | 54 | |
| 55 | 55 | public function grab_page($all_data) |
| 56 | 56 | { |
| 57 | - if(isset($all_data["site"])) $site = $all_data["site"]; else throw new Exception("site is not exist in all_data"); |
|
| 58 | - if(isset($all_data["oj"])) $oj = $all_data["oj"]; else throw new Exception("oj is not exist in all_data"); |
|
| 59 | - if(isset($all_data["headers"])) $headers = $all_data["headers"]; else $headers = []; |
|
| 60 | - if(isset($all_data["handle"])) $handle = $all_data["handle"]; else $handle = "default"; |
|
| 61 | - if(isset($all_data["follow"])) $follow = $all_data["follow"]; else $follow = false; |
|
| 62 | - if(isset($all_data["vcid"])) $vcid = $all_data["vcid"]."_"; else $vcid = ""; |
|
| 57 | + if (isset($all_data["site"])) $site=$all_data["site"]; else throw new Exception("site is not exist in all_data"); |
|
| 58 | + if (isset($all_data["oj"])) $oj=$all_data["oj"]; else throw new Exception("oj is not exist in all_data"); |
|
| 59 | + if (isset($all_data["headers"])) $headers=$all_data["headers"]; else $headers=[]; |
|
| 60 | + if (isset($all_data["handle"])) $handle=$all_data["handle"]; else $handle="default"; |
|
| 61 | + if (isset($all_data["follow"])) $follow=$all_data["follow"]; else $follow=false; |
|
| 62 | + if (isset($all_data["vcid"])) $vcid=$all_data["vcid"]."_"; else $vcid=""; |
|
| 63 | 63 | |
| 64 | 64 | $handle=urlencode($handle); |
| 65 | 65 | |
@@ -86,16 +86,16 @@ discard block |
||
| 86 | 86 | |
| 87 | 87 | public function post_data($all_data) |
| 88 | 88 | { |
| 89 | - if(isset($all_data["site"])) $site = $all_data["site"]; else throw new Exception("site is not exist in all_data"); |
|
| 90 | - if(isset($all_data["data"])) $data = $all_data["data"]; else throw new Exception("data is not exist in all_data"); |
|
| 91 | - if(isset($all_data["oj"])) $oj = $all_data["oj"]; else throw new Exception("oj is not exist in all_data"); |
|
| 92 | - if(isset($all_data["ret"])) $ret = $all_data["ret"]; else $ret = false; |
|
| 93 | - if(isset($all_data["follow"])) $follow = $all_data["follow"]; else $follow = true; |
|
| 94 | - if(isset($all_data["returnHeader"])) $returnHeader = $all_data["returnHeader"]; else $returnHeader = true; |
|
| 95 | - if(isset($all_data["postJson"])) $postJson = $all_data["postJson"]; else $postJson = false; |
|
| 96 | - if(isset($all_data["extraHeaders"])) $extraHeaders = $all_data["extraHeaders"]; else $extraHeaders = []; |
|
| 97 | - if(isset($all_data["handle"])) $handle = $all_data["handle"]; else $handle = "default"; |
|
| 98 | - if(isset($all_data["vcid"])) $vcid = $all_data["vcid"]."_"; else $vcid = ""; |
|
| 89 | + if (isset($all_data["site"])) $site=$all_data["site"]; else throw new Exception("site is not exist in all_data"); |
|
| 90 | + if (isset($all_data["data"])) $data=$all_data["data"]; else throw new Exception("data is not exist in all_data"); |
|
| 91 | + if (isset($all_data["oj"])) $oj=$all_data["oj"]; else throw new Exception("oj is not exist in all_data"); |
|
| 92 | + if (isset($all_data["ret"])) $ret=$all_data["ret"]; else $ret=false; |
|
| 93 | + if (isset($all_data["follow"])) $follow=$all_data["follow"]; else $follow=true; |
|
| 94 | + if (isset($all_data["returnHeader"])) $returnHeader=$all_data["returnHeader"]; else $returnHeader=true; |
|
| 95 | + if (isset($all_data["postJson"])) $postJson=$all_data["postJson"]; else $postJson=false; |
|
| 96 | + if (isset($all_data["extraHeaders"])) $extraHeaders=$all_data["extraHeaders"]; else $extraHeaders=[]; |
|
| 97 | + if (isset($all_data["handle"])) $handle=$all_data["handle"]; else $handle="default"; |
|
| 98 | + if (isset($all_data["vcid"])) $vcid=$all_data["vcid"]."_"; else $vcid=""; |
|
| 99 | 99 | |
| 100 | 100 | $handle=urlencode($handle); |
| 101 | 101 | |
@@ -27,7 +27,7 @@ discard block |
||
| 27 | 27 | $filter["rated"]=isset($all_data["rated"]) ? $all_data["rated"] : null; |
| 28 | 28 | $filter["anticheated"]=isset($all_data["anticheated"]) ? $all_data["anticheated"] : null; |
| 29 | 29 | $filter["practice"]=isset($all_data["practice"]) ? $all_data["practice"] : null; |
| 30 | - $return_list=$contestModel->list($filter,Auth::check()?Auth::user()->id:0); |
|
| 30 | + $return_list=$contestModel->list($filter, Auth::check() ?Auth::user()->id : 0); |
|
| 31 | 31 | $featured=$contestModel->featured(); |
| 32 | 32 | if (is_null($return_list)) { |
| 33 | 33 | if (isset($all_data["page"]) && $all_data["page"]>1) { |
@@ -66,7 +66,7 @@ discard block |
||
| 66 | 66 | $contestModel=new ContestModel(); |
| 67 | 67 | $groupModel=new GroupModel(); |
| 68 | 68 | $clearance=Auth::check() ? $contestModel->judgeClearance($cid, Auth::user()->id) : 0; |
| 69 | - $basic = $contestModel->basic($cid); |
|
| 69 | + $basic=$contestModel->basic($cid); |
|
| 70 | 70 | if (Auth::check()) { |
| 71 | 71 | $contest_detail=$contestModel->detail($cid, Auth::user()->id); |
| 72 | 72 | $registration=$contestModel->registration($cid, Auth::user()->id); |
@@ -34,10 +34,10 @@ discard block |
||
| 34 | 34 | $contestModel=new ContestModel(); |
| 35 | 35 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 36 | 36 | $basicInfo=$contestModel->basic($cid); |
| 37 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 38 | - if($clearance == 3){ |
|
| 37 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 38 | + if ($clearance==3) { |
|
| 39 | 39 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 40 | - }else{ |
|
| 40 | + } else { |
|
| 41 | 41 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 42 | 42 | } |
| 43 | 43 | } |
@@ -50,7 +50,7 @@ discard block |
||
| 50 | 50 | if ($remainingTime<=0) { |
| 51 | 51 | $remainingTime=0; |
| 52 | 52 | } |
| 53 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 53 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 54 | 54 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 55 | 55 | } |
| 56 | 56 | return view('contest.board.challenge', [ |
@@ -83,15 +83,15 @@ discard block |
||
| 83 | 83 | $accountModel=new AccountModel(); |
| 84 | 84 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 85 | 85 | $basicInfo=$contestModel->basic($cid); |
| 86 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 87 | - if($clearance == 3){ |
|
| 86 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 87 | + if ($clearance==3) { |
|
| 88 | 88 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 89 | - }else{ |
|
| 89 | + } else { |
|
| 90 | 90 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 91 | 91 | } |
| 92 | 92 | } |
| 93 | 93 | $basicInfo=$contestModel->basic($cid); |
| 94 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 94 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 95 | 95 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 96 | 96 | } |
| 97 | 97 | $contest_name=$contestModel->contestName($cid); |
@@ -122,8 +122,8 @@ discard block |
||
| 122 | 122 | ]; |
| 123 | 123 | } |
| 124 | 124 | |
| 125 | - $editor_left_width = $accountModel->getExtra(Auth::user()->id, 'editor_left_width'); |
|
| 126 | - if(empty($editor_left_width)) $editor_left_width='40'; |
|
| 125 | + $editor_left_width=$accountModel->getExtra(Auth::user()->id, 'editor_left_width'); |
|
| 126 | + if (empty($editor_left_width)) $editor_left_width='40'; |
|
| 127 | 127 | |
| 128 | 128 | return view('contest.board.editor', [ |
| 129 | 129 | 'page_title'=>"Problem Detail", |
@@ -157,15 +157,15 @@ discard block |
||
| 157 | 157 | $contestModel=new ContestModel(); |
| 158 | 158 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 159 | 159 | $basicInfo=$contestModel->basic($cid); |
| 160 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 161 | - if($clearance == 3){ |
|
| 160 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 161 | + if ($clearance==3) { |
|
| 162 | 162 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 163 | - }else{ |
|
| 163 | + } else { |
|
| 164 | 164 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 165 | 165 | } |
| 166 | 166 | } |
| 167 | 167 | $basicInfo=$contestModel->basic($cid); |
| 168 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 168 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 169 | 169 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 170 | 170 | } |
| 171 | 171 | $contest_name=$contestModel->contestName($cid); |
@@ -176,14 +176,14 @@ discard block |
||
| 176 | 176 | |
| 177 | 177 | // To determine the ranking |
| 178 | 178 | foreach ($contestRank as $i => &$r) { |
| 179 | - if($i != 0) { |
|
| 180 | - if($r['score'] == $contestRank[$i-1]['score'] && $r['penalty'] == $contestRank[$i-1]['penalty']){ |
|
| 181 | - $r['rank'] = $contestRank[$i-1]['rank']; |
|
| 182 | - }else{ |
|
| 183 | - $r['rank'] = $i + 1; |
|
| 179 | + if ($i!=0) { |
|
| 180 | + if ($r['score']==$contestRank[$i-1]['score'] && $r['penalty']==$contestRank[$i-1]['penalty']) { |
|
| 181 | + $r['rank']=$contestRank[$i-1]['rank']; |
|
| 182 | + } else { |
|
| 183 | + $r['rank']=$i+1; |
|
| 184 | 184 | } |
| 185 | - }else{ |
|
| 186 | - $r['rank'] = 1; |
|
| 185 | + } else { |
|
| 186 | + $r['rank']=1; |
|
| 187 | 187 | } |
| 188 | 188 | } |
| 189 | 189 | $rankFrozen=$contestModel->isFrozen($cid); |
@@ -220,15 +220,15 @@ discard block |
||
| 220 | 220 | $contestModel=new ContestModel(); |
| 221 | 221 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 222 | 222 | $basicInfo=$contestModel->basic($cid); |
| 223 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 224 | - if($clearance == 3){ |
|
| 223 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 224 | + if ($clearance==3) { |
|
| 225 | 225 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 226 | - }else{ |
|
| 226 | + } else { |
|
| 227 | 227 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 228 | 228 | } |
| 229 | 229 | } |
| 230 | 230 | $basicInfo=$contestModel->basic($cid); |
| 231 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 231 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 232 | 232 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 233 | 233 | } |
| 234 | 234 | $contest_name=$contestModel->contestName($cid); |
@@ -262,14 +262,14 @@ discard block |
||
| 262 | 262 | $contestModel=new ContestModel(); |
| 263 | 263 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 264 | 264 | $basicInfo=$contestModel->basic($cid); |
| 265 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 266 | - if($clearance == 3){ |
|
| 265 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 266 | + if ($clearance==3) { |
|
| 267 | 267 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 268 | - }else{ |
|
| 268 | + } else { |
|
| 269 | 269 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 270 | 270 | } |
| 271 | 271 | } |
| 272 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 272 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 273 | 273 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 274 | 274 | } |
| 275 | 275 | $contest_name=$contestModel->contestName($cid); |
@@ -300,14 +300,14 @@ discard block |
||
| 300 | 300 | $contestModel=new ContestModel(); |
| 301 | 301 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 302 | 302 | $basicInfo=$contestModel->basic($cid); |
| 303 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 304 | - if($clearance == 3){ |
|
| 303 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 304 | + if ($clearance==3) { |
|
| 305 | 305 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 306 | - }else{ |
|
| 306 | + } else { |
|
| 307 | 307 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 308 | 308 | } |
| 309 | 309 | } |
| 310 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 310 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 311 | 311 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 312 | 312 | } |
| 313 | 313 | $contest_name=$contestModel->contestName($cid); |
@@ -324,19 +324,19 @@ discard block |
||
| 324 | 324 | ]); |
| 325 | 325 | } |
| 326 | 326 | |
| 327 | - public function analysis($cid){ |
|
| 327 | + public function analysis($cid) { |
|
| 328 | 328 | $contestModel=new ContestModel(); |
| 329 | 329 | $clearance=$contestModel->judgeClearance($cid, Auth::user()->id); |
| 330 | 330 | $basicInfo=$contestModel->basic($cid); |
| 331 | - if (!$clearance || time() < strtotime($basicInfo['begin_time'])) { |
|
| 332 | - if($clearance == 3){ |
|
| 331 | + if (!$clearance || time()<strtotime($basicInfo['begin_time'])) { |
|
| 332 | + if ($clearance==3) { |
|
| 333 | 333 | return Redirect::route('contest.admin', ['cid' => $cid]); |
| 334 | - }else{ |
|
| 334 | + } else { |
|
| 335 | 335 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 336 | 336 | } |
| 337 | 337 | } |
| 338 | 338 | $basicInfo=$contestModel->basic($cid); |
| 339 | - if($basicInfo['public'] && !$basicInfo['audit_status']){ |
|
| 339 | + if ($basicInfo['public'] && !$basicInfo['audit_status']) { |
|
| 340 | 340 | return Redirect::route('contest.detail', ['cid' => $cid]); |
| 341 | 341 | } |
| 342 | 342 | $contest_name=$contestModel->contestName($cid); |
@@ -76,7 +76,7 @@ |
||
| 76 | 76 | "spj_version" => null, |
| 77 | 77 | "spj_config" => null |
| 78 | 78 | ]; |
| 79 | - if($probBasic["spj"] && $probBasic["spj_version"]){ |
|
| 79 | + if ($probBasic["spj"] && $probBasic["spj_version"]) { |
|
| 80 | 80 | $submit_data["spj_version"]=$probBasic["spj_version"]; |
| 81 | 81 | $submit_data["spj_config"]=$probBasic["spj_lang"]; |
| 82 | 82 | } |
@@ -64,7 +64,7 @@ |
||
| 64 | 64 | } |
| 65 | 65 | public function getLanguageConfigByLanguage($language, $spj=false) |
| 66 | 66 | { |
| 67 | - return $this->getLanguageConfigByKey($language.($spj?'_lang_spj_config':'_lang_config')); |
|
| 67 | + return $this->getLanguageConfigByKey($language.($spj ? '_lang_spj_config' : '_lang_config')); |
|
| 68 | 68 | } |
| 69 | 69 | public function getLanguageConfigByKey($key) |
| 70 | 70 | { |
@@ -13,20 +13,20 @@ |
||
| 13 | 13 | |
| 14 | 14 | public function search($key) |
| 15 | 15 | { |
| 16 | - $result = []; |
|
| 17 | - if(strlen($key) >= 2){ |
|
| 18 | - $ret = self::where('pcode', $key) |
|
| 19 | - ->orWhereRaw('MATCH(`title`) AGAINST (? IN BOOLEAN MODE)',[$key]) |
|
| 16 | + $result=[]; |
|
| 17 | + if (strlen($key)>=2) { |
|
| 18 | + $ret=self::where('pcode', $key) |
|
| 19 | + ->orWhereRaw('MATCH(`title`) AGAINST (? IN BOOLEAN MODE)', [$key]) |
|
| 20 | 20 | ->select('pcode', 'title') |
| 21 | 21 | ->limit(120) |
| 22 | 22 | ->get()->all(); |
| 23 | - if(!empty($ret)){ |
|
| 24 | - $result += $ret; |
|
| 23 | + if (!empty($ret)) { |
|
| 24 | + $result+=$ret; |
|
| 25 | 25 | } |
| 26 | 26 | } |
| 27 | - $problemModel = new ProblemModel(); |
|
| 27 | + $problemModel=new ProblemModel(); |
|
| 28 | 28 | foreach ($result as $p_index => $p) { |
| 29 | - if($problemModel->isBlocked($p['pid']) || $problemModel->isHidden($p["pid"])){ |
|
| 29 | + if ($problemModel->isBlocked($p['pid']) || $problemModel->isHidden($p["pid"])) { |
|
| 30 | 30 | unset($result[$p_index]); |
| 31 | 31 | } |
| 32 | 32 | } |
@@ -11,7 +11,7 @@ discard block |
||
| 11 | 11 | |
| 12 | 12 | class AccountModel extends Model |
| 13 | 13 | { |
| 14 | - private $user_extra = [ |
|
| 14 | + private $user_extra=[ |
|
| 15 | 15 | 0 => 'gender', |
| 16 | 16 | 1 => 'contact', |
| 17 | 17 | 2 => 'school', |
@@ -26,11 +26,11 @@ discard block |
||
| 26 | 26 | 1004 => 'github_token', |
| 27 | 27 | ]; |
| 28 | 28 | |
| 29 | - private $socialite_support = [ |
|
| 29 | + private $socialite_support=[ |
|
| 30 | 30 | //use the form "platform_id" for unique authentication |
| 31 | 31 | //such as github_id |
| 32 | 32 | 'github' => [ |
| 33 | - 'email','nickname','homepage','token' |
|
| 33 | + 'email', 'nickname', 'homepage', 'token' |
|
| 34 | 34 | ], |
| 35 | 35 | ]; |
| 36 | 36 | |
@@ -48,8 +48,8 @@ discard block |
||
| 48 | 48 | public function feed($uid=null) |
| 49 | 49 | { |
| 50 | 50 | $ret=[]; |
| 51 | - $solution=DB::table("problem_solution")->join("problem","problem.pid","=","problem_solution.pid")->where(["uid"=>$uid,"audit"=>1])->select("problem.pid as pid","pcode","title","problem_solution.created_at as created_at")->orderBy("problem_solution.created_at","DESC")->get()->all(); |
|
| 52 | - foreach($solution as &$s){ |
|
| 51 | + $solution=DB::table("problem_solution")->join("problem", "problem.pid", "=", "problem_solution.pid")->where(["uid"=>$uid, "audit"=>1])->select("problem.pid as pid", "pcode", "title", "problem_solution.created_at as created_at")->orderBy("problem_solution.created_at", "DESC")->get()->all(); |
|
| 52 | + foreach ($solution as &$s) { |
|
| 53 | 53 | $s["type"]="event"; |
| 54 | 54 | $s["color"]="wemd-orange"; |
| 55 | 55 | $s["icon"]="comment-check-outline"; |
@@ -61,7 +61,7 @@ discard block |
||
| 61 | 61 | public function generateContestAccount($cid, $ccode, $num) |
| 62 | 62 | { |
| 63 | 63 | $ret=[]; |
| 64 | - $starting=DB::table("users")->where('prefix','=',$ccode)->count(); |
|
| 64 | + $starting=DB::table("users")->where('prefix', '=', $ccode)->count(); |
|
| 65 | 65 | $contestModel=new ContestModel(); |
| 66 | 66 | for ($i=1; $i<=$num; $i++) { |
| 67 | 67 | $pass=$this->generatePassword(); |
@@ -120,14 +120,14 @@ discard block |
||
| 120 | 120 | ])->join("problem", "problem.pid", "=", "submission.pid")->select('pcode')->distinct()->get()->all(); |
| 121 | 121 | $ret["solvedCount"]=count($ret["solved"]); |
| 122 | 122 | // Casual |
| 123 | - $ret["rank"]=Cache::tags(['rank',$ret["id"]])->get("rank", "N/A"); |
|
| 124 | - $ret["rankTitle"]=Cache::tags(['rank',$ret["id"]])->get("title", "Recruit"); |
|
| 123 | + $ret["rank"]=Cache::tags(['rank', $ret["id"]])->get("rank", "N/A"); |
|
| 124 | + $ret["rankTitle"]=Cache::tags(['rank', $ret["id"]])->get("title", "Recruit"); |
|
| 125 | 125 | $ret["rankTitleColor"]=RankModel::getColor($ret["rankTitle"]); |
| 126 | 126 | // Professional |
| 127 | 127 | $ret["professionalTitle"]=RankModel::getProfessionalTitle($ret["professional_rate"]); |
| 128 | 128 | $ret["professionalTitleColor"]=RankModel::getProfessionalColor($ret["professionalTitle"]); |
| 129 | 129 | // Administration Group |
| 130 | - $ret["admin"]=$uid==1?1:0; |
|
| 130 | + $ret["admin"]=$uid==1 ? 1 : 0; |
|
| 131 | 131 | if (Cache::tags(['bing', 'pic'])->get(date("Y-m-d"))==null) { |
| 132 | 132 | $bing=new BingPhoto([ |
| 133 | 133 | 'locale' => 'zh-CN', |
@@ -146,26 +146,26 @@ discard block |
||
| 146 | 146 | * @param string|array $need An array is returned when an array is passed in,Only one value is returned when a string is passed in. |
| 147 | 147 | * @return string|array $result |
| 148 | 148 | */ |
| 149 | - public function getExtra($uid,$need, $secret_level = 0){ |
|
| 150 | - $ret = DB::table('users_extra')->where('uid',$uid)->orderBy('key')->get()->all(); |
|
| 151 | - $result = []; |
|
| 152 | - if(!empty($ret)){ |
|
| 153 | - if(is_string($need)){ |
|
| 149 | + public function getExtra($uid, $need, $secret_level=0) { |
|
| 150 | + $ret=DB::table('users_extra')->where('uid', $uid)->orderBy('key')->get()->all(); |
|
| 151 | + $result=[]; |
|
| 152 | + if (!empty($ret)) { |
|
| 153 | + if (is_string($need)) { |
|
| 154 | 154 | foreach ($ret as $value) { |
| 155 | - if(empty($value['secret_level']) || $value['secret_level'] <= $secret_level){ |
|
| 156 | - $key_name = $this->user_extra[$value['key']] ?? 'unknown'; |
|
| 157 | - if($key_name == $need){ |
|
| 155 | + if (empty($value['secret_level']) || $value['secret_level']<=$secret_level) { |
|
| 156 | + $key_name=$this->user_extra[$value['key']] ?? 'unknown'; |
|
| 157 | + if ($key_name==$need) { |
|
| 158 | 158 | return $value['value']; |
| 159 | 159 | } |
| 160 | 160 | } |
| 161 | 161 | } |
| 162 | 162 | return null; |
| 163 | - }else{ |
|
| 163 | + } else { |
|
| 164 | 164 | foreach ($ret as $value) { |
| 165 | - if(empty($value['secret_level']) || $value['secret_level'] <= $secret_level){ |
|
| 166 | - $key_name = $this->user_extra[$value['key']] ?? 'unknown'; |
|
| 167 | - if(in_array($key_name,$need)){ |
|
| 168 | - $result[$key_name] = $value['value']; |
|
| 165 | + if (empty($value['secret_level']) || $value['secret_level']<=$secret_level) { |
|
| 166 | + $key_name=$this->user_extra[$value['key']] ?? 'unknown'; |
|
| 167 | + if (in_array($key_name, $need)) { |
|
| 168 | + $result[$key_name]=$value['value']; |
|
| 169 | 169 | } |
| 170 | 170 | } |
| 171 | 171 | } |
@@ -182,26 +182,26 @@ discard block |
||
| 182 | 182 | * @param string|null $value the extra info will be delete when value is null |
| 183 | 183 | * @return mixed $result |
| 184 | 184 | */ |
| 185 | - public function setExtra($uid,$key_name,$value = null,$secret_level = -1){ |
|
| 186 | - $key = array_search($key_name,$this->user_extra); |
|
| 187 | - if($key === false){ |
|
| 185 | + public function setExtra($uid, $key_name, $value=null, $secret_level=-1) { |
|
| 186 | + $key=array_search($key_name, $this->user_extra); |
|
| 187 | + if ($key===false) { |
|
| 188 | 188 | return false; |
| 189 | 189 | } |
| 190 | - $ret = DB::table('users_extra')->where('uid',$uid)->where('key',$key)->first(); |
|
| 191 | - if(!empty($ret)){ |
|
| 190 | + $ret=DB::table('users_extra')->where('uid', $uid)->where('key', $key)->first(); |
|
| 191 | + if (!empty($ret)) { |
|
| 192 | 192 | unset($ret['id']); |
| 193 | - if(!is_null($value)){ |
|
| 194 | - $ret['value'] = $value; |
|
| 195 | - }else{ |
|
| 196 | - DB::table('users_extra')->where('uid',$uid)->where('key',$key)->delete(); |
|
| 193 | + if (!is_null($value)) { |
|
| 194 | + $ret['value']=$value; |
|
| 195 | + } else { |
|
| 196 | + DB::table('users_extra')->where('uid', $uid)->where('key', $key)->delete(); |
|
| 197 | 197 | return true; |
| 198 | 198 | } |
| 199 | - if($secret_level != -1){ |
|
| 200 | - $ret['secret_level'] = $secret_level; |
|
| 199 | + if ($secret_level!=-1) { |
|
| 200 | + $ret['secret_level']=$secret_level; |
|
| 201 | 201 | } |
| 202 | - return DB::table('users_extra')->where('uid',$uid)->where('key',$key)->update($ret); |
|
| 203 | - }else{ |
|
| 204 | - if($value === null){ |
|
| 202 | + return DB::table('users_extra')->where('uid', $uid)->where('key', $key)->update($ret); |
|
| 203 | + } else { |
|
| 204 | + if ($value===null) { |
|
| 205 | 205 | return true; |
| 206 | 206 | } |
| 207 | 207 | return DB::table('users_extra')->insertGetId( |
@@ -209,7 +209,7 @@ discard block |
||
| 209 | 209 | 'uid' => $uid, |
| 210 | 210 | 'key' => $key, |
| 211 | 211 | 'value' => $value, |
| 212 | - 'secret_level' => $secret_level == -1 ? 0 : $secret_level, |
|
| 212 | + 'secret_level' => $secret_level==-1 ? 0 : $secret_level, |
|
| 213 | 213 | ] |
| 214 | 214 | ); |
| 215 | 215 | } |
@@ -221,33 +221,33 @@ discard block |
||
| 221 | 221 | * @param string $value the value |
| 222 | 222 | * @return string $result |
| 223 | 223 | */ |
| 224 | - public function findExtra($key,$value) |
|
| 224 | + public function findExtra($key, $value) |
|
| 225 | 225 | { |
| 226 | - $key = array_search($key,$this->user_extra); |
|
| 227 | - if($key){ |
|
| 228 | - return DB::table('users_extra')->where('key',$key)->where('value',$value)->first(); |
|
| 229 | - }else{ |
|
| 226 | + $key=array_search($key, $this->user_extra); |
|
| 227 | + if ($key) { |
|
| 228 | + return DB::table('users_extra')->where('key', $key)->where('value', $value)->first(); |
|
| 229 | + } else { |
|
| 230 | 230 | return null; |
| 231 | 231 | } |
| 232 | 232 | } |
| 233 | 233 | |
| 234 | - public function getSocialiteInfo($uid,$secret_level = -1) |
|
| 234 | + public function getSocialiteInfo($uid, $secret_level=-1) |
|
| 235 | 235 | { |
| 236 | - $socialites = []; |
|
| 236 | + $socialites=[]; |
|
| 237 | 237 | foreach ($this->socialite_support as $key => $value) { |
| 238 | - $id_keyname = $key.'_id'; |
|
| 239 | - $id = $this->getExtra($uid,$id_keyname); |
|
| 240 | - if(!empty($id)){ |
|
| 241 | - $info = [ |
|
| 238 | + $id_keyname=$key.'_id'; |
|
| 239 | + $id=$this->getExtra($uid, $id_keyname); |
|
| 240 | + if (!empty($id)) { |
|
| 241 | + $info=[ |
|
| 242 | 242 | 'id' => $id, |
| 243 | 243 | ]; |
| 244 | 244 | foreach ($value as $info_name) { |
| 245 | - $info_temp = $this->getExtra($uid,$key.'_'.$info_name); |
|
| 246 | - if($info_temp !== null){ |
|
| 247 | - $info[$info_name] = $info_temp; |
|
| 245 | + $info_temp=$this->getExtra($uid, $key.'_'.$info_name); |
|
| 246 | + if ($info_temp!==null) { |
|
| 247 | + $info[$info_name]=$info_temp; |
|
| 248 | 248 | } |
| 249 | 249 | } |
| 250 | - $socialites[$key] = $info; |
|
| 250 | + $socialites[$key]=$info; |
|
| 251 | 251 | } |
| 252 | 252 | } |
| 253 | 253 | |