function upgrade() { require_once $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "classes" . DIRECTORY_SEPARATOR . "common.class.php"; require_once $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "classes" . DIRECTORY_SEPARATOR . "settings.class.php"; $common = new common(); $settings = new settings(); try { // Change tables containing datetime data to datetime. if ($settings::db_driver != "mysql") { $dbh = $common->pdoOpen(); $sql = "ALTER TABLE " . $settings::db_prefix . "aircraft MODIFY firstSeen DATETIME NOT NULL"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $sql = "ALTER TABLE adsb_aircraft MODIFY lastSeen DATETIME NOT NULL"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $sql = "ALTER TABLE adsb_blogPosts MODIFY date DATETIME NOT NULL"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $sql = "ALTER TABLE adsb_flights MODIFY firstSeen DATETIME NOT NULL"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $sql = "ALTER TABLE adsb_flights MODIFY firstSeen DATETIME NOT NULL"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $sql = "ALTER TABLE adsb_positions MODIFY time DATETIME NOT NULL"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $dbh = NULL; } // Add timezone setting. $common->addSetting("timeZone", date_default_timezone_get()); // update the version and patch settings. $common->updateSetting("version", "2.0.1"); $common->updateSetting("patch", ""); // The upgrade process completed successfully. $results['success'] = TRUE; $results['message'] = "Upgrade to v2.0.1 successful."; return $results; } catch (Exception $e) { // Something went wrong during this upgrade process. $results['success'] = FALSE; $results['message'] = $e->getMessage(); return $results; } }
function upgrade() { require_once $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "classes" . DIRECTORY_SEPARATOR . "common.class.php"; $common = new common(); try { // Add new setting to allow displaying either the dump1090-mutability map and dump1090-fa map. $common->addSetting('useDump1090FaMap', FALSE); // Update the version and patch settings.. $common->updateSetting("version", "2.2.0"); $common->updateSetting("patch", ""); // The upgrade process completed successfully. $results['success'] = TRUE; $results['message'] = "Upgrade to v2.2.0 successful."; return $results; } catch (Exception $e) { // Something went wrong during this upgrade process. $results['success'] = FALSE; $results['message'] = $e->getMessage(); return $results; } }
function upgrade() { require_once $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "classes" . DIRECTORY_SEPARATOR . "common.class.php"; require_once $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "classes" . DIRECTORY_SEPARATOR . "settings.class.php"; $common = new common(); $settings = new settings(); try { if ($settings::db_driver == "xml") { // Create XML files used to store links data. $xml = new XMLWriter(); $xml->openMemory(); $xml->setIndent(true); $xml->startDocument('1.0', 'UTF-8'); $xml->startElement("links"); $xml->endElement(); file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "data" . DIRECTORY_SEPARATOR . "links.xml", $xml->flush(true)); } if ($settings::db_driver == "mysql") { $dbh = $common->pdoOpen(); // Add the links table. $sql = "CREATE TABLE " . $settings::db_prefix . "links(id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, address VARCHAR(250) NOT NULL);"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $dbh = NULL; } if ($settings::db_driver == "sqlite") { // Create a new settings.class.php file adding the path to the SQLite database as the value for the db_host constant. $content = <<<EOF <?php ///////////////////////////////////////////////////////////////////////////////////// // ADS-B RECEIVER PORTAL // // =============================================================================== // // Copyright and Licensing Information: // // // // The MIT License (MIT) // // // // Copyright (c) 2015-2016 Joseph A. Prochazka // // // // Permission is hereby granted, free of charge, to any person obtaining a copy // // of this software and associated documentation files (the "Software"), to deal // // in the Software without restriction, including without limitation the rights // // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // // copies of the Software, and to permit persons to whom the Software is // // furnished to do so, subject to the following conditions: // // // // The above copyright notice and this permission notice shall be included in all // // copies or substantial portions of the Software. // // // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE // // SOFTWARE. // ///////////////////////////////////////////////////////////////////////////////////// class settings { // Database Settings const db_driver = 'sqlite'; const db_database = ''; const db_username = ''; const db_password = ''; const db_host = '/var/www/html/data/portal.sqlite'; const db_prefix = 'adsb_'; // Security Settings const sec_length = 6; // PDO Settings const pdo_debug = TRUE; } ?> EOF; file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . "classes" . DIRECTORY_SEPARATOR . "settings.class.php", $content); // Open a connection to the database. $dbh = $common->pdoOpen(); // Add the links table. $sql = "CREATE TABLE " . $settings::db_prefix . "links(INTEGER PRIMARY KEY, name TEXT NOT NULL, address TEXT NOT NULL);"; $sth = $dbh->prepare($sql); $sth->execute(); $sth = NULL; $dbh = NULL; } // Rename the enableFlightNotifications to enableWebNotifications. $enableWebNotifications = $common->getSetting('enableFlightNotifications'); $common->addSetting('enableWebNotifications', $enableWebNotifications); $common->deleteSetting('enableFlightNotifications'); // Add Google Maps API Key setting. $common->addSetting('googleMapsApiKey', ''); // Add enable custom links setting. $common->addSetting('enableLinks', FALSE); // Update the version and patch settings.. $common->updateSetting("version", "2.5.0"); $common->updateSetting("patch", ""); // The upgrade process completed successfully. $results['success'] = TRUE; $results['message'] = "Upgrade to v2.5.0 successful."; return $results; } catch (Exception $e) { // Something went wrong during this upgrade process. $results['success'] = FALSE; $results['message'] = $e->getMessage(); return $results; } }
$sth = $dbh->prepare($flightNotificationsSql); $sth->execute(); $sth = NULL; $sth = $dbh->prepare($flightsSql); $sth->execute(); $sth = NULL; $sth = $dbh->prepare($positionsSql); $sth->execute(); $sth = NULL; $sth = $dbh->prepare($settingsSql); $sth->execute(); $sth = NULL; $dbh = NULL; } // Add settings. $common->addSetting('siteName', 'ADS-B Receiver'); $common->addSetting('template', 'default'); $common->addSetting('defaultPage', 'blog.php'); $common->addSetting('dateFormat', 'F jS, Y'); $common->addSetting('enableBlog', TRUE); $common->addSetting('enableInfo', TRUE); $common->addSetting('enableGraphs', TRUE); $common->addSetting('enableDump1090', TRUE); $common->addSetting('enableDump978', FALSE); $common->addSetting('enablePfclient', FALSE); $common->addSetting('enableFlightAwareLink', FALSE); $common->addSetting('flightAwareLogin', ''); $common->addSetting('flightAwareSite', ''); $common->addSetting('enablePlaneFinderLink', FALSE); $common->addSetting('planeFinderReceiver', ''); $common->addSetting('enableFlightRadar24Link', '');