public static function init() { $apps = \Lobby\Apps::getApps(); foreach ($apps as $app => $null) { $module_name = 'apps/' . $app . '/module'; $loc = APPS_DIR . "/{$app}/module"; if (self::valid($module_name, $loc)) { self::$app_modules[$module_name] = $loc; } } self::$core_modules = self::dirModules("/includes/lib/modules"); self::$custom_modules = self::dirModules("/contents/modules"); self::$modules = array_merge(self::$core_modules, self::$custom_modules, self::$app_modules); }
/** * Get updates */ public static function check() { $url = self::$apiURL . "/lobby/updates"; $apps = Apps::getApps(); try { $response = \Requests::post($url, array(), self::makeData(array("apps" => implode(",", $apps))))->body; } catch (\Requests_Exception $error) { \Lobby::log("Checkup with server failed ({$url}) : {$error}"); $response = false; } if ($response) { $response = json_decode($response, true); if (is_array($response)) { DB::saveOption("lobby_latest_version", $response['version']); DB::saveOption("lobby_latest_version_release", $response['released']); DB::saveOption("lobby_latest_version_release_notes", $response['release_notes']); if (isset($response['apps']) && count($response['apps']) != 0) { $AppUpdates = array(); foreach ($response['apps'] as $appID => $version) { $App = new \Lobby\Apps($appID); if ($App->hasUpdate($version)) { $AppUpdates[$appID] = $version; } } DB::saveOption("app_updates", json_encode($AppUpdates)); } if (isset($response["notify"])) { foreach ($response["notify"]["items"] as $itemID => $item) { if (isset($item["href"])) { $item["href"] = \Lobby::u($item["href"]); } Panel::addNotifyItem("lobby_server_msg_" . $itemID, $item); } foreach ($response["notify"]["remove_items"] as $itemID) { Panel::removeNotifyItem("lobby_server_msg_" . $itemID); } } } } }
/** * Get updates */ public static function check() { $apps = array_keys(\Lobby\Apps::getApps()); $response = \Lobby::loadURL(L_SERVER . "/updates", array("apps" => implode(",", $apps)), "POST"); if ($response) { $response = json_decode($response, true); if (is_array($response)) { saveOption("lobby_latest_version", $response['version']); saveOption("lobby_latest_version_release", $response['released']); if (isset($response['apps']) && count($response['apps']) != 0) { $AppUpdates = array(); foreach ($response['apps'] as $appID => $version) { $App = new \Lobby\Apps($appID); if ($App->info['version'] != $version) { $AppUpdates[$appID] = $version; } } saveOption("app_updates", json_encode($AppUpdates)); } } } }
?> ">No, I'm Not</a> <?php exit; } else { if ($action == "enable") { if ($App->enableApp()) { sss("Enabled", "App has been enabled."); } else { ser("Error", "The App couldn't be enabled. Try again.", false); } } } } } $Apps = \Lobby\Apps::getApps(); if (count($Apps) == 0) { ser("No Enabled Apps", "Lobby didn't find any apps that has been enabled", false); } if (count($Apps) != 0) { ?> <table style="width: 100%;margin-top:5px"> <thead> <tr> <td>Name</td> <td>Version</td> <td>Description</td> <td>Actions</td> </tr> </thead> <tbody>
<style> .tab-contents{ padding: 10px 0; } </style> <?php } } else { ?> <h2>Apps</h2> <p>Manage <b>installed apps</b>. You can find and install more Apps from <a href="<?php echo L_URL; ?> /admin/lobby-store.php">Lobby Store</a>.</p> <?php $apps = Apps::getApps(); if (empty($apps)) { echo ser("No Apps", "You haven't installed any apps. <br/>Get great Apps from " . \Lobby::l("/admin/lobby-store.php", "Lobby Store")); } else { echo '<div class="apps row">'; foreach ($apps as $app) { $App = new Apps($app); ?> <div class="app col s12 m6 l4"> <div class="app-inner card row"> <div class="lpane col s4 m5 l5"> <a href="<?php echo \Lobby::u("/admin/apps.php?app={$app}"); ?> "> <img src="<?php