aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs/Module/Siteinfo.php
diff options
context:
space:
mode:
Diffstat (limited to 'Zotlabs/Module/Siteinfo.php')
-rw-r--r--Zotlabs/Module/Siteinfo.php94
1 files changed, 94 insertions, 0 deletions
diff --git a/Zotlabs/Module/Siteinfo.php b/Zotlabs/Module/Siteinfo.php
new file mode 100644
index 000000000..ccca6ab43
--- /dev/null
+++ b/Zotlabs/Module/Siteinfo.php
@@ -0,0 +1,94 @@
+<?php
+namespace Zotlabs\Module;
+
+
+class Siteinfo extends \Zotlabs\Web\Controller {
+
+ function init() {
+ if (argv(1) === 'json') {
+ $data = get_site_info();
+ json_return_and_die($data);
+ }
+ }
+
+
+
+ function get() {
+
+ if(! get_config('system','hidden_version_siteinfo')) {
+ $version = sprintf( t('Version %s'), \Zotlabs\Project\System::get_project_version());
+ if(@is_dir('.git') && function_exists('shell_exec')) {
+ $commit = @shell_exec('git log -1 --format="%h"');
+ $tag = \Zotlabs\Project\System::get_std_version(); // @shell_exec('git describe --tags --abbrev=0');
+ }
+ if(! isset($commit) || strlen($commit) > 16)
+ $commit = '';
+ }
+ else {
+ $version = $commit = '';
+ }
+ $visible_plugins = array();
+ if(is_array(\App::$plugins) && count(\App::$plugins)) {
+ $r = q("select * from addon where hidden = 0");
+ if(count($r))
+ foreach($r as $rr)
+ $visible_plugins[] = $rr['name'];
+ }
+
+ $plugins_list = '';
+ if(count($visible_plugins)) {
+ $plugins_text = t('Installed plugins/addons/apps:');
+ $sorted = $visible_plugins;
+ $s = '';
+ sort($sorted);
+ foreach($sorted as $p) {
+ if(strlen($p)) {
+ if(strlen($s)) $s .= ', ';
+ $s .= $p;
+ }
+ }
+ $plugins_list .= $s;
+ }
+ else
+ $plugins_text = t('No installed plugins/addons/apps');
+
+ $txt = get_config('system','admininfo');
+ $admininfo = bbcode($txt);
+
+ if(file_exists('doc/site_donate.html'))
+ $donate .= file_get_contents('doc/site_donate.html');
+
+ if(function_exists('sys_getloadavg'))
+ $loadavg = sys_getloadavg();
+
+ $o = replace_macros(get_markup_template('siteinfo.tpl'), array(
+ '$title' => t('$Projectname'),
+ '$description' => t('This is a hub of $Projectname - a global cooperative network of decentralized privacy enhanced websites.'),
+ '$version' => $version,
+ '$tag_txt' => t('Tag: '),
+ '$tag' => $tag,
+ '$polled' => t('Last background fetch: '),
+ '$lastpoll' => get_poller_runtime(),
+ '$load_average' => t('Current load average: '),
+ '$loadavg_all' => $loadavg[0] . ', ' . $loadavg[1] . ', ' . $loadavg[2],
+ '$commit' => $commit,
+ '$web_location' => t('Running at web location') . ' ' . z_root(),
+ '$visit' => t('Please visit <a href="http://hubzilla.org">hubzilla.org</a> to learn more about $Projectname.'),
+ '$bug_text' => t('Bug reports and issues: please visit'),
+ '$bug_link_url' => 'https://github.com/redmatrix/hubzilla/issues',
+ '$bug_link_text' => t('$projectname issues'),
+ '$contact' => t('Suggestions, praise, etc. - please email "redmatrix" at librelist - dot com'),
+ '$donate' => $donate,
+ '$adminlabel' => t('Site Administrators'),
+ '$admininfo' => $admininfo,
+ '$plugins_text' => $plugins_text,
+ '$plugins_list' => $plugins_list
+ ));
+
+ call_hooks('about_hook', $o);
+
+ return $o;
+
+ }
+
+}