summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2015-02-03 14:39:15 +0300
committerAndrew Dolgov <[email protected]>2015-02-03 14:39:15 +0300
commitefcc5d365db4d1b0f3a26098011319daf50e018e (patch)
tree503d6ea0a5fe577f1bb19f9fbc2727cd7128daa6 /include
parent47cdc58c6065c997b03c311fa6c1d0ebf6b19690 (diff)
add placeholder update checker using git changesets
Diffstat (limited to 'include')
-rw-r--r--include/functions2.php29
-rw-r--r--include/version.php4
2 files changed, 33 insertions, 0 deletions
diff --git a/include/functions2.php b/include/functions2.php
index 4e133dde4..0207c1240 100644
--- a/include/functions2.php
+++ b/include/functions2.php
@@ -203,6 +203,26 @@
return array($prefixes, $hotkeys);
}
+ function check_for_update() {
+ if (defined("GIT_VERSION_TIMESTAMP")) {
+ $content = @fetch_file_contents("http://tt-rss.org/version.json");
+
+ if ($content) {
+ $content = json_decode($content, true);
+
+ if ($content && isset($content["changeset"])) {
+ if ((int)GIT_VERSION_TIMESTAMP < (int)$content["changeset"]["timestamp"] &&
+ GIT_VERSION_HEAD != $content["changeset"]["id"]) {
+
+ return $content["changeset"]["id"];
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+
function make_runtime_info() {
$data = array();
@@ -221,6 +241,15 @@
$data['dep_ts'] = calculate_dep_timestamp();
$data['reload_on_ts_change'] = !defined('_NO_RELOAD_ON_TS_CHANGE');
+
+ if (true || $_SESSION["last_version_check"] + 86400 + rand(-1000, 1000) < time()) {
+ $update_result = @check_for_update();
+
+ $data["update_result"] = $update_result;
+
+ $_SESSION["last_version_check"] = time();
+ }
+
if (file_exists(LOCK_DIRECTORY . "/update_daemon.lock")) {
$data['daemon_is_running'] = (int) file_is_locked("update_daemon.lock");
diff --git a/include/version.php b/include/version.php
index a7ca8a32b..34c11e6e7 100644
--- a/include/version.php
+++ b/include/version.php
@@ -8,6 +8,10 @@
if (is_dir("$root_dir/.git") && file_exists("$root_dir/.git/refs/heads/master")) {
$suffix = substr(trim(file_get_contents("$root_dir/.git/refs/heads/master")), 0, 7);
+ $timestamp = filemtime("$root_dir/.git/refs/heads/master");
+
+ define("GIT_VERSION_HEAD", $suffix);
+ define("GIT_VERSION_TIMESTAMP", $timestamp);
return VERSION_STATIC . ".$suffix";
} else {