public function Check()
{
$local = $this->getLocalVersion();
$remote = $this->getRemoteVersion("check", $local[0]['version']);
$nightly = true;
$archive = Common::getConstant('ARCHIVEURL', $this->archive);
$latest = '';
foreach ($remote as $tag) {
if ($latest == '') {
$latest = $tag["name"];
$archive = $tag["zipball_url"];
}
if ($local[0]['version'] == $tag["commit"]["sha"]) {
$local[0]['version'] = $tag["name"];
$nightly = false;
break;
}
}
$search = array("\r\n", "\n", "\r");
$replace = array(" ", " ", " ");
$message = '';
$merge = '';
$commits = json_decode(file_get_contents(Common::getConstant('COMMITURL', $this->commits)), true);
foreach ($commits as $commit) {
if ($local[0]['version'] != $commit["sha"]) {
if (strpos($commit["commit"]["message"], "Merge") === false) {
$message .= '- ' . str_replace($search, $replace, $commit["commit"]["message"]) . '<br/>';
} else {
$merge .= '- ' . str_replace($search, $replace, $commit["commit"]["message"]) . '<br/>';
}
} else {
break;
}
}
if ($message == '') {
$message = $merge;
}
return "[" . formatJSEND("success", array("currentversion" => $local[0]['version'], "remoteversion" => $latest, "message" => $message, "archive" => $archive, "nightly" => $nightly, "name" => $local[0]['name'])) . "]";
}