Пример #1
0
 function __construct($extension = false)
 {
     $this->Extension = $extension;
     // See if local will work
     $path = $extension ? SERVER_ROOT . "extensions/{$extension}/" : SERVER_ROOT . "core/";
     if (is_writable(SERVER_ROOT) && is_writable($path)) {
         $this->Method = "Local";
     } else {
         // Can't use local, see what FTP methods are available
         $ftp = new BigTreeFTP();
         $sftp = new BigTreeSFTP();
         if ($ftp->connect("localhost")) {
             $this->Connection = $ftp;
             $this->Method = "FTP";
         } elseif ($sftp->connect("localhost")) {
             $this->Connection = $ftp;
             $this->Method = "SFTP";
         }
     }
 }
Пример #2
0
         if (is_dir($file)) {
             rmdir($file);
         } else {
             unlink($file);
         }
     }
     rmdir(SERVER_ROOT . "cache/update/");
     unlink(SERVER_ROOT . "cache/update.zip");
     BigTree::redirect(DEVELOPER_ROOT . "upgrade/database/");
 } else {
     // If we had to set a directory path we lost the POST
     if (!count($_POST)) {
         $_POST = $_SESSION["bigtree_admin"]["ftp"];
     }
     // Make sure FTP login works
     $ftp = new BigTreeFTP();
     if (!$ftp->connect("localhost")) {
         BigTree::redirect(DEVELOPER_ROOT . "upgrade/failed/");
     }
     if (!$ftp->login($_POST["username"], $_POST["password"])) {
         $admin->growl("Developer", "FTP Login Failed", "error");
         BigTree::redirect(DEVELOPER_ROOT . "upgrade/login/?type=" . $_POST["type"]);
     }
     // Try to determine the FTP root.
     $ftp_root = false;
     if ($admin->settingExists("bigtree-internal-ftp-upgrade-root") && $ftp->changeDirectory($cms->getSetting("bigtree-internal-ftp-upgrade-root") . "core/inc/bigtree/")) {
         $ftp_root = $cms->getSetting("bigtree-internal-ftp-upgrade-root");
     } elseif ($ftp->changeDirectory(SERVER_ROOT . "inc/bigtree/")) {
         $ftp_root = SERVER_ROOT;
     } elseif ($ftp->changeDirectory("/core/inc/bigtree")) {
         $ftp_root = "/";