30-11-2012, 14:43
Bonjour,
Voila je trouve plusieurs plugin sympas que je me suis inspire pour créer un plugin pour affichiez un favicon.
Mais mon problème et que dans la partie admin la traduction ne veux pas se faire.
Voici le code :
Le plugin :
Code PHP :
<?php
// interdiction d'accéder au module si non présent dans mybb
if(!defined("IN_MYBB")) {
die("Direct initialization of this file is not allowed.<br>\n<br>\nPlease make sure IN_MYBB is defined.<br>\n<br>\n
L'initialisation directe de ce fichier n'est pas autorisé.<br>\n<br>\nS'il vous plaît assurez IN_MYBB est défini");
}
// ajout des autoload
$plugins->add_hook('global_end','favicon_insert');
// informations sur le module
function favicon_info() {
global $lang;
$lang->load('favicon');
return array(
"name" => "Favicon",
"description" => $lang->favicon_desc,
"website" => "http://community-sg-g.olympe.in/index.php",
"author" => "Angelus",
"authorsite" => "http://community-sg-g.olympe.in/index.php",
"version" => "1.2.1",
"compatibility" => "14*,16*"
);
}
// ajout de l'objet du menu dans l'admin cp
function favicon_activate() {
require '../inc/adminfunctions_templates.php';
global $db, $lang;
$lang->load('favicon');
$query = $db->simple_select("settinggroups", "COUNT(*) as rows");
$rows = $db->fetch_field($query, "rows");
$insertarray = array(
'gid' => 'NULL',
'name' => 'Favicon',
'title' => 'Favicon',
'description' => $lang->favicon_desc,
'disporder' => $rows+1,
'isdefault' => 'no'
);
$db->insert_query("settinggroups", $insertarray);
$group['gid'] = $db->insert_id();
$settings = array(
'name' => 'favicon',
'title' => $lang->favicon_setting_title,
'description' => $lang->favicon_setting_desc,
'optionscode' => 'yesno',
'value' => 'yes',
'disporder' => '100',
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings);
$settings1 = array(
'name' => 'favicon_url',
'title' => $lang->favicon_settingdeux_title,
'description' => $lang->favicon_settingdeux_desc,
'optionscode' => 'text',
'value' => 'http://',
'disporder' => '100',
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings1);
}
function favicon_deactivate() {
global $db;
$db->delete_query("settings", "name='favicon'");
$db->delete_query("settings", "name='favicon_url'");
$db->delete_query("settinggroups", "name='favicon'");
}
// ajout de l'objet dans le code html
function favicon_insert() {
global $headerinclude, $mybb;
if(intval($mybb->settings['favicon']) == 1) {
$extension = explode('.', $mybb->settings['favicon_url']);
$extension = array_reverse($extension);
$extension = $extension[0];
if ($extension == "gif") {
$rel = "icon";
$type = "image/gif";
}
elseif ($extension == "png") {
$rel = "icon";
$type = "image/png";
}
elseif ($extension == "jpg" AND "jpeg") {
$rel = "icon";
$type = "image/jpg";
}
elseif ($extension == "ico") {
$rel = "shortcut icon";
$type = "image/x-icon";
}
else {
$rel = "EXTENTION";
$type = "NOT VALID";
}
$headerinclude = '<link rel="' . $rel . '" type="' . $type . '" href="' . $mybb->settings['favicon_url'] . '" />'.$headerinclude;
}
}
?>
la lang fr :
Code PHP :
<?php
$l['favicon_desc'] = "Ce plugin ajoute un favicon dans la barre d'adresse de votre forum";
$l['favicon_setting_title'] = "Favicon dans la barre d'adresse";
$l['favicon_setting_desc'] = "Activer l'ajout du favicon dans la barre d'adresse ?";
$l['favicon_settingdeux_title'] = "Lien vers le favicon";
$l['favicon_settingdeux_desc'] = "Entrez le lien du favicon";
// end
?>
la lang en :
Code PHP :
<?php
$l['favicon_desc'] = "This plugin adds a favicon in the address bar of your forum";
$l['favicon_setting_title'] = "Favicon in the address bar";
$l['favicon_setting_desc'] = "Enable adding the favicon in the address bar?";
$l['favicon_settingdeux_title'] = "Link to the favicon";
$l['favicon_settingdeux_desc'] = "Enter the link to favicon";
// end
?>