function upload_ttf()
{
    $absolute_path = JPATH_ROOT;
    //echo $absolute_path;
    $userfile = JRequest::getVar('cufonfile', null, 'files', 'array');
    $success = 0;
    if (!$userfile) {
        exit;
    }
    $userfile_name = $userfile['name'];
    //echo $userfile_name;
    if (is_writable($absolute_path . '/modules/mod_swmenufree/fonts')) {
        if (substr($userfile_name, strlen($userfile_name) - 2) == "js") {
            move_uploaded_file($userfile['tmp_name'], $absolute_path . '/modules/mod_swmenufree/fonts/' . $userfile['name']);
            $filename = file_get_contents('' . $absolute_path . '/modules/mod_swmenufree/fonts/' . $userfile['name'] . '');
            if (stripos($filename, 'Cufon.registerFont') === false) {
                $message = "File is not a cufon font file";
                unlink($absolute_path . '/modules/mod_swmenufree/fonts/' . $userfile['name']);
            } else {
                $pos_start = strpos($filename, "font-family") + 14;
                $pos_end = strpos($filename, "\"", $pos_start) - $pos_start;
                $fontname = substr($filename, $pos_start, $pos_end);
                $message = "Sucessfully Installed the " . $fontname . " font file.";
                $success = 1;
            }
        } else {
            $message = "File is not a cufon javascript file";
        }
    } else {
        $message = '/modules/mod_swmenufree/fonts folder can not be written to.';
    }
    echo "<dl id=\"system-message\"><dt class=\"message\">Message</dt>\n\t\t<dd class=\"message message fade\"><ul><li>" . $message . "</li>\n\t   </ul></dd></dl>\n";
    if (!$success) {
        HTML_swmenufree::uploadCufon();
    } else {
        echo "<script language=\"javascript\" type=\"text/javascript\">\n";
        echo "window.parent.jInsertCufon('" . $userfile['name'] . "', '" . $fontname . "');\n";
        //  echo "alert(filename);\n";
        echo "</script>";
        echo "You may now choose the " . $fontname . " font from the True Type Font select boxes";
        echo "<br><input type='button' class='sw_get' onclick='window.parent.SqueezeBox.close();' value='close' />";
    }
    //echo $row->id;
    //editCSS($id, $option);
    //upgrade($option='com_swmenufree', $installdir='');
    // $mainframe->redirect("index.php?&option=com_swmenufree&task=upgrade", $message);
}
Exemple #2
0
function upgrade($option, $installdir = "")
{
    global $mainframe;
    //require_once( $absolute_path . '/includes/domit/xml_domit_lite_include.php' );
    //$componentBaseDir	= mosPathName( $absolute_path . '/administrator/components/' );
    //$componentDirs 		= mosReadDirectory( $componentBaseDir );
    $database =& JFactory::getDBO();
    $absolute_path = JPATH_ROOT;
    $config =& JFactory::getConfig();
    $dbprefix = $config->getValue('config.dbprefix');
    $db = $config->getValue('config.db');
    //echo $db;
    $row->message = "";
    $row->database_version = 1;
    $columncount = 0;
    if (TableExists($dbprefix . "swmenufree_config", $db)) {
        $query = "SELECT * FROM #__swmenufree_config WHERE id = 1";
        $database->setQuery($query);
        $result = $database->loadObjectList();
        $swmenufree = array();
        if ($result) {
            while (list($key, $val) = each($result[0])) {
                //echo "1";
                $columncount++;
                $swmenufree[$key] = $val;
            }
        }
        //echo count($swmenufree);
        if ($columncount < 42 && $columncount > 1) {
            $row->message .= sprintf(_SW_TABLE_UPGRADE, '#__swmenufree_config') . "<br />";
            $database->setQuery("ALTER TABLE `#__swmenufree_config` \r\r\n  \t\t\tADD `extra` mediumtext,\r\r\n  \t\t\tMODIFY orientation varchar(20)\r\r\n \t\t\t ");
            $database->query();
            $row->database_version = 0;
        }
    } else {
        $row->message .= sprintf(_SW_TABLE_CREATE, '#__swmenufree_config') . "<br />";
        $database->setQuery("CREATE TABLE `#__swmenufree_config` (\r\r\n  `id` int(11) NOT NULL default '0',\r\r\n  `main_top` smallint(8) default '0',\r\r\n  `main_left` smallint(8) default '0',\r\r\n  `main_height` smallint(8) default '20',\r\r\n  `sub_border_over` varchar(30) default '0',\r\r\n  `main_width` smallint(8) default '100',\r\r\n  `sub_width` smallint(8) default '100',\r\r\n  `main_back` varchar(7) default '#4682B4',\r\r\n  `main_over` varchar(7) default '#5AA7E5',\r\r\n  `sub_back` varchar(7) default '#4682B4',\r\r\n  `sub_over` varchar(7) default '#5AA7E5',\r\r\n  `sub_border` varchar(30) default '#FFFFFF',\r\r\n  `main_font_size` smallint(8) default '0',\r\r\n  `sub_font_size` smallint(8) default '0',\r\r\n  `main_border_over` varchar(30) default '0',\r\r\n  `sub_font_color` varchar(7) default '#000000',\r\r\n  `main_border` varchar(30) default '#FFFFFF',\r\r\n  `main_font_color` varchar(7) default '#000000',\r\r\n  `sub_font_color_over` varchar(7) default '#FFFFFF',\r\r\n  `main_font_color_over` varchar(7) default '#FFFFFF',\r\r\n  `main_align` varchar(8) default 'left',\r\r\n  `sub_align` varchar(8) default 'left',\r\r\n  `sub_height` smallint(7) default '20',\r\r\n  `position` varchar(10) default 'absolute',\r\r\n  `orientation` varchar(20) default NULL,\r\r\n  `font_family` varchar(50) default 'Arial',\r\r\n  `font_weight` varchar(10) default 'normal',\r\r\n  `font_weight_over` varchar(10) default 'normal',\r\r\n  `level2_sub_top` int(11) default '0',\r\r\n  `level2_sub_left` int(11) default '0',\r\r\n  `level1_sub_top` int(11) NOT NULL default '0',\r\r\n  `level1_sub_left` int(11) NOT NULL default '0',\r\r\n  `main_back_image` varchar(100) default NULL,\r\r\n  `main_back_image_over` varchar(100) default NULL,\r\r\n  `sub_back_image` varchar(100) default NULL,\r\r\n  `sub_back_image_over` varchar(100) default NULL,\r\r\n  `specialA` varchar(50) default '80',\r\r\n  `main_padding` varchar(40) default '0px 0px 0px 0px',\r\r\n  `sub_padding` varchar(40) default '0px 0px 0px 0px',\r\r\n  `specialB` varchar(100) default '50',\r\r\n  `sub_font_family` varchar(50) default 'Arial',\r\r\n  `extra` mediumtext,\r\r\n  PRIMARY KEY  (`id`)\r\r\n)");
        $database->query();
    }
    $database->setQuery("SELECT COUNT(*) FROM `#__extensions` WHERE element LIKE '%com_swmenufree%'");
    $com_entries = $database->loadResult();
    if ($com_entries != 1) {
        $row->message .= _SW_UPDATE_LINKS . "<br />";
        //$database->setQuery("DELETE FROM `#__components` WHERE admin_menu_link like '%com_swmenufree%'");
        //$database->query();
        $database->setQuery("INSERT INTO `#__extensions` VALUES ( '', 'swmenufree', 'component', 'com_swmenufree', '', 0, 1, 0, 0, '{\"legacy\":true,\"name\":\"swMenuFree\",\"type\":\"component\",\"creationDate\":\"06\\/09\\/2010\",\"author\":\"Sean White\",\"copyright\":\"This Component is Proprietry Software\",\"authorEmail\":\"sean@swmenupro.com\",\"authorUrl\":\"http:\\/\\/www.swmenupro.com\",\"version\":\"6.1\",\"description\":\"Joomla 1.5 DHTML Menu Component\",\"group\":\"\"}', '{}', '', '', 0, '0000-00-00 00:00:00', 0, 0','1')");
        $database->query();
    }
    $database->setQuery("SELECT COUNT(*) FROM `#__menu` WHERE title LIKE '%swMenuFree%' AND client_id='1'");
    $com_entries = $database->loadResult();
    if ($com_entries != 1) {
        $row->message .= _SW_UPDATE_LINKS . "<br />";
        //$database->setQuery("DELETE FROM `#__components` WHERE admin_menu_link like '%com_swmenufree%'");
        //$database->query();
        $database->setQuery("SELECT extension_id FROM `#__extensions` WHERE element LIKE '%com_swmenufree%'");
        $com_id = $database->loadResult();
        $database->setQuery("INSERT INTO `#__menu` VALUES ( '', 'main', 'swMenuFree', 'swmenufree', '', 'swmenufree', 'index.php?option=com_swmenufree', 'component', 0, 1, 1, " . $com_id . ", 0, 0, '0000-00-00 00:00:00', 0, 1, 'class:component', 0, '', 277, 278, 0, '', 1)");
        $database->query();
    }
    if (file_exists($absolute_path . '/modules/mod_swmenufree/mod_swmenufree.xml')) {
        $row->module_version = get_Version($absolute_path . '/modules/mod_swmenufree/mod_swmenufree.xml');
        $row->new_module_version = get_Version($absolute_path . '/administrator/components/com_swmenufree/modules/mod_swmenufree/mod_swmenufree.sw');
        if ($row->module_version < $row->new_module_version) {
            if (copydirr($absolute_path . "/administrator/components/com_swmenufree/modules", $absolute_path . "/modules", 0757, false)) {
                unlink($absolute_path . '/modules/mod_swmenufree/mod_swmenufree.xml');
                rename($absolute_path . "/modules/mod_swmenufree/mod_swmenufree.sw", $absolute_path . "/modules/mod_swmenufree/mod_swmenufree.xml");
                $row->message .= _SW_MODULE_SUCCESS . "<br />";
            } else {
                $row->message .= _SW_MODULE_FAIL . "<br />";
            }
        }
    } else {
        if (copydirr($absolute_path . "/administrator/components/com_swmenufree/modules", $absolute_path . "/modules", 0757, false)) {
            rename($absolute_path . "/modules/mod_swmenufree/mod_swmenufree.sw", $absolute_path . "/modules/mod_swmenufree/mod_swmenufree.xml");
            $row->message .= _SW_MODULE_SUCCESS . "<br />";
        } else {
            $row->message .= _SW_MODULE_FAIL . "<br />";
        }
    }
    $row->component_version = get_Version($absolute_path . '/administrator/components/com_swmenufree/swmenufree.xml');
    $row->module_version = get_Version($absolute_path . '/modules/mod_swmenufree/mod_swmenufree.xml');
    $langfile = "english.php";
    if (file_exists($absolute_path . '/administrator/components/com_swmenufree/language/default.ini')) {
        $filename = $absolute_path . '/administrator/components/com_swmenufree/language/default.ini';
        $handle = fopen($filename, "r");
        $langfile = fread($handle, filesize($filename));
        fclose($handle);
    }
    $basedir = $absolute_path . "/administrator/components/com_swmenufree/language/";
    $handle = opendir($basedir);
    $lang = array();
    $lists = array();
    while ($file = readdir($handle)) {
        if ($file == "." || $file == ".." || $file == "default.ini") {
        } else {
            $lang[] = JHTML::_('select.option', $file, $file);
        }
        $lists['langfiles'] = JHTML::_('select.genericlist', $lang, 'language', 'id="language" class="inputbox" size="1" style="width:200px"', 'value', 'text', $langfile);
    }
    closedir($handle);
    HTML_swmenufree::upgradeForm($row, $lists);
    HTML_swmenufree::footer();
}