1
0

Added the possibility to either convert favicons to PNG or leave them in ICO format. New favicon.php and install.php

This commit is contained in:
Stefan Frech
2008-04-20 18:44:24 +00:00
committed by Jonas Kattendick
parent 03dca2fcae
commit 210a5f99a0
3 changed files with 36 additions and 21 deletions

View File

@@ -5,3 +5,7 @@
- Added the possibility to mark bookmarks and folders public/private - Added the possibility to mark bookmarks and folders public/private
when importing them. when importing them.
20.04.2008, Version 0.8.9 beat
- Added the possibility to either convert favicon using ImageMagick or
leave them in the ICO format. Updating favicon.php and install.php
accordingly.

View File

@@ -4,19 +4,24 @@ if (basename ($_SERVER['SCRIPT_NAME']) == basename (__FILE__)) {
} }
class favicon { class favicon {
function favicon ($url) { function favicon ($url) {
global $settings; global $settings, $convert_favicons;
if ($settings['show_bookmark_icon']) { if ($settings['show_bookmark_icon']) {
if ($this->parsed_url = $this->return_parse_url ($url)) { if ($this->parsed_url = $this->return_parse_url ($url)) {
if ($this->favicon_url = $this->get_favicon_url ()) { if ($this->favicon_url = $this->get_favicon_url ()) {
$this->icon_name = rand () . basename ($this->favicon_url); $this->icon_name = rand () . basename ($this->favicon_url);
if ($this->get_favicon_image ()) { if ($this->get_favicon_image ()) {
$this->convert_favicon (); if ($convert_favicons) {
} $this->favicon = $this->convert_favicon ();
} }
} else {
} $this->favicon = "./favicons/" . $this->icon_name;
} }
}
}
}
}
}
### ###
### check the image type and convert & resize it if required ### check the image type and convert & resize it if required
### returns the absolute path of the (converted) .png file ### returns the absolute path of the (converted) .png file
@@ -38,9 +43,8 @@ class favicon {
# convert image in any case to 16x16 and .png # convert image in any case to 16x16 and .png
system ("$convert $file_to_convert -resize 16x16 $tmp_file.png"); system ("$convert $file_to_convert -resize 16x16 $tmp_file.png");
$this->favicon = $tmp_file . ".png";
@unlink ($tmp_file); @unlink ($tmp_file);
return true; return $tmp_file . ".png";
} }
else { else {
@unlink ($tmp_file); @unlink ($tmp_file);

View File

@@ -33,7 +33,7 @@ $submit = set_post_bool_var ('submit', false);
$admin_message = ''; $admin_message = '';
if (intval(str_replace('.', '', phpversion())) < 430) { if (intval(str_replace('.', '', phpversion())) < 430) {
print_msg ('You are running PHP version '.PHP_VERSION.'. Online-Bookmarks requires at least PHP 4.3.0 to run properly. You must upgrade your PHP installation before you can continue.', "error"); print_msg ('You are running PHP version '.PHP_VERSION.'. Online-Bookmarks requires at least PHP 4.1.0 to run properly. You must upgrade your PHP installation before you can continue.', "error");
} }
############## database control ############## ############## database control ##############
@@ -97,7 +97,7 @@ function create_table_user () {
show_bookmark_description enum('0','1') NOT NULL default '1', show_bookmark_description enum('0','1') NOT NULL default '1',
show_bookmark_icon enum('0','1') NOT NULL default '1', show_bookmark_icon enum('0','1') NOT NULL default '1',
show_column_date enum('0','1') NOT NULL default '1', show_column_date enum('0','1') NOT NULL default '1',
date_format CHAR(10) NOT NULL DEFAULT 'd.m.Y', date_format SMALLINT(6) NOT NULL DEFAULT '0',
show_column_edit enum('0','1') NOT NULL default '1', show_column_edit enum('0','1') NOT NULL default '1',
show_column_move enum('0','1') NOT NULL default '1', show_column_move enum('0','1') NOT NULL default '1',
show_column_delete enum('0','1') NOT NULL default '1', show_column_delete enum('0','1') NOT NULL default '1',
@@ -404,7 +404,7 @@ if ($submit) {
print_msg ("Table user exists, checking for version:", "notice"); print_msg ("Table user exists, checking for version:", "notice");
# check for date_format field in table # check for date_format field in table
upgrade_table ("user", "date_format", "ALTER TABLE user ADD COLUMN date_format CHAR(10) NOT NULL DEFAULT 'd.m.Y' AFTER show_column_date"); upgrade_table ("user", "date_format", "ALTER TABLE user ADD COLUMN date_format SMALLINT(6) NOT NULL DEFAULT '0' AFTER show_column_date");
# check for show_public field in table # check for show_public field in table
upgrade_table ("user", "show_public", "ALTER TABLE user ADD COLUMN show_public ENUM('0','1') DEFAULT 1 NOT NULL"); upgrade_table ("user", "show_public", "ALTER TABLE user ADD COLUMN show_public ENUM('0','1') DEFAULT 1 NOT NULL");
@@ -416,19 +416,23 @@ if ($submit) {
############## favicon support ############## ############## favicon support ##############
if ($convert = @exec ('which convert')) { if ($convert = @exec ('which convert')) {
$convert_favicons = "true";
print_msg ("ImageMagick convert found: $convert", "success"); print_msg ("ImageMagick convert found: $convert", "success");
} }
else { else {
$convert = ""; $convert = "";
print_msg ("ImageMagick convert not found. Make sure ImageMagick is installed and specify location of convert manually in ./config/config.php", "error"); $convert_favicons = "false";
print_msg ("ImageMagick convert not found. Make sure ImageMagick is installed and specify location of convert manually or set \$convert_favicons to false.", "error");
} }
if ($identify = @exec ('which identify')) { if ($identify = @exec ('which identify')) {
$convert_favicons = "true";
print_msg ("ImageMagick identify found: $identify", "success"); print_msg ("ImageMagick identify found: $identify", "success");
} }
else { else {
$identify = ""; $identify = "";
print_msg ("ImageMagick identify not found. Make sure ImageMagick is installed and specify location of identify manually in ./config/config.php", "error"); $convert_favicons = "false";
print_msg ("ImageMagick identify not found. Make sure ImageMagick is installed and specify location of identify manually or set \$convert_favicons to false.", "error");
} }
if (is_writable ("./favicons/")) { if (is_writable ("./favicons/")) {
@@ -482,6 +486,7 @@ $date_formats = array (
\'m.d.y\', \'m.d.y\',
); );
$convert_favicons = ' . $convert_favicons . ';
$convert = \'' . $convert . '\'; $convert = \'' . $convert . '\';
$identify = \'' . $identify . '\'; $identify = \'' . $identify . '\';
$timeout = 5; $timeout = 5;
@@ -507,7 +512,9 @@ $delimiter = "/";
echo '<pre style="background-color: #E0E0E0; border: 1px black solid; padding: 20px">'; echo '<pre style="background-color: #E0E0E0; border: 1px black solid; padding: 20px">';
echo $config; echo $config;
echo "</pre>\n"; echo "</pre>\n";
echo '<a href="./index.php">Now go Bookmark...</a>'; echo "After completing the configuration, create useraccounts with the following MySQL command:\n";
echo "<pre>mysql> INSERT INTO user (username, password) VALUES ('johndoe', MD5('johndoes_password'));</pre>\n";
echo '<a href="./index.php">Go Bookmark...</a>';
} }
} }
} }