Webboard

Pełna wersja: Poprawność kodu
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Czy ten kod jest poprawny?
Dlaczego, mimo domyślnej opcji, po włączeniu pluginu, nie wyświetla tego co jest? Działa, dopiero po wejściu w ustawienia i nawet nie zmieniając zapisując je?

Kod PHP:
<?php


define
("IN_MYBB"1);

$plugins->add_hook('index_start''plugin');

function 
plugin_info() {



    return array(
        
"name"            =>    "Kontakt w panelu bocznym",
        
"description"    =>    "Dodaje przyjemną tabelę kontaktu do panelu bocznego.",
        
"website"        =>    "https://webboard.pl/",
        
"author"        =>    "Poftorek",
        
"authorsite"    =>    "https://webboard.pl/",
        
"version"        =>    "1.0",
        
"compatibility" =>  "18*"
    
);
}

function 
plugin_activate() {
    global 
$db$mybb;
    
    
//nazwa pluginu w zakladce pluginow
    
$plugin_group_settings = array(
        
"gid"               => NULL,
        
"name"              => "plugin_option_category",
        
"title"             => "Kontakt w panelu bocznym",
        
"description"       => "Skonfiguruj swój panel kontaktu.",
        
"disporder"         => "50",
        
"isdefault"         => "no"
 
                       );
    
$db->insert_query("settinggroups"$plugin_group_settings);
    
    
$gid $db->insert_id();
    
// Włącz/Wyłącz
    
$option_1 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_enabled",
 
       "title"             => "Włączyć/Wyłączyć wtyczkę?",
 
       "description"       => "Włącz lub wyłącz kontakt w panelu bocznym.",
 
       "optionscode"       => "yesno",
 
       "value"             => "yes",
        
"isdefault"         => "yes",
 
       "disporder"         => "1",
 
       "gid"               => intval($gid)
                        );
                        
                        
// Nazwa panelu kontaktu
    
$option_2 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_nwm",
 
       "title"             => "Nazwa panelu kontaktu",
 
       "description"       => "Wpisz nazwą swojego panelu kontaktu.",
 
       "optionscode"       => "text",
 
       "value"             => 'Kontakt',
        
"isdefault"         => "yes",
 
       "disporder"         => "2",
 
       "gid"               => intval($gid)
                        );
                        
                        
// ID pierwszego administratora
    
$option_3 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_nwm2",
 
       "title"             => "ID profilu administratora pierwszego",
 
       "description"       => "Wpisz UID użytkownika, wyświetlanego jako pierwszy administrator.",
 
       "optionscode"       => "text",
 
       "value"             => '1',
        
"isdefault"         => "yes",
 
       "disporder"         => "3",
 
       "gid"               => intval($gid)
                        );
                        
// style dla nazwy admi. 1.
    
$option_4 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_nwm3",
 
       "title"             => "Format nazwy administratora pierwszego",
 
       "description"       => "Wpisz style dla sformatowania nazwy użytkownika administratora pierwszego (nie usuwaj font-size:18px)",
 
       "optionscode"       => "text",
 
       "value"             => 'color:red;font-weight:bold;',
        
"isdefault"         => "yes",
 
       "disporder"         => "4",
 
       "gid"               => intval($gid)
                        );
                                            
// nick dla nazwy admi. 1.
    
$option_4 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_nwm4",
 
       "title"             => "Nazwa administratora pierwszego",
 
       "description"       => "Wpisz nick administratora pierwszego.",
 
       "optionscode"       => "text",
 
       "value"             => 'Administrator',
        
"isdefault"         => "yes",
 
       "disporder"         => "5",
 
       "gid"               => intval($gid)
                        );
                        
                        
                        
// tytuł administratora 1.
                        
$option_5 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_nwm5",
 
       "title"             => "Tytuł administratora pierwszego",
 
       "description"       => "Wpisz tytuł administratora pierwszego.",
 
       "optionscode"       => "text",
 
       "value"             => 'Właściciel',
        
"isdefault"         => "yes",
 
       "disporder"         => "6",
 
       "gid"               => intval($gid)
                        );
                        
                        
// gg administratora 1.
                        
$option_6 = array(
 
       "sid"               => NULL,
 
       "name"              => "plugin_nwm6",
 
       "title"             => "Numer GG administratora pierwszego",
 
       "description"       => "Wpisz gg administratora pierwszego.",
 
       "optionscode"       => "text",
 
       "value"             => '12345678',
        
"isdefault"         => "yes",
 
       "disporder"         => "7",
 
       "gid"               => intval($gid)
                        );
                        
                        

    
$db->insert_query("settings"$option_1);
    
$db->insert_query("settings"$option_2);
    
$db->insert_query("settings"$option_3);
    
$db->insert_query("settings"$option_4);
    
$db->insert_query("settings"$option_5);
    
$db->insert_query("settings"$option_6);
    
$db->insert_query("settings"$option_7);

    
                         
  
    
require MYBB_ROOT."/inc/adminfunctions_templates.php";
    
}

function 
plugin_deactivate() {

    global 
$db$mybb;
    
    
$db->delete_query('settinggroups''name = "plugin_option_category"');
    
$db->delete_query('settings''name IN("plugin_enabled, plugin_nwm, plugin_nwm2, plugin_nwm3, plugin_nwm4, plugin_nwm5, plugin_nwm6")');

    require 
MYBB_ROOT."/inc/adminfunctions_templates.php";
    
find_replace_templatesets('index''#(\n?){\$plugin}#'''0);
}

function 
plugin() 
{
    global 
$db$mybb$templates$plugin;

    
    
        
$plugin '<table border="0" cellspacing="0" cellpadding="5" class="tborder"><tbody><tr><td class="thead">'.$mybb->settings['plugin_nwm'].'</td></tr><tr><td class="trow1"><center>
<a href="member.php?action=profile&amp;uid='
.$mybb->settings['plugin_nwm2'].'">
<span style="'
.$mybb->settings['plugin_nwm3'].'"><strong>'.$mybb->settings['plugin_nwm4'].'</strong></span>
<p><span style="font-size: 11px;">'
.$mybb->settings['plugin_nwm5'].'</span></p></a>
<div class="gg"><a href="gg:'
.$mybb->settings['plugin_nwm6'].'">
<img src="http://status.gadu-gadu.pl/users/status.asp?id='
.$mybb->settings['plugin_nwm6'].'&amp;styl=3" style="height: 32px; width:143;"></a></div>
</center></td>
</tr>
</tbody></table>'
;
            }
        
?>
A czy po wejściu w ustawienia są te opcje, które masz domyślnie w kod wbite?
Tj. czy zaraz po instalacji widać, że faktycznie je zapisało?

Aha, polecam zmienić nazwy funkcji na względnie unikalne. Np. function plugin - to proszenie się o problemy, najlepiej zamykać to w swoich klasach, lub jeżeli wolisz funkcje, stosować jakieś unikalne nazwy np.:

Kod:
function FyeemFirstPlugin_firstFunction ()

;)
rebuild_settings(); po dodaniu usunieciu ustawien do/z bazy

Dziwne ze one sie tam pokazaly
(21.08.2016, 10:55)Łukasz Tkacz napisał(a): [ -> ]A czy po wejściu w ustawienia są te opcje, które masz domyślnie w kod wbite?
Tj. czy zaraz po instalacji widać, że faktycznie je zapisało?

Aha, polecam zmienić nazwy funkcji na względnie unikalne. Np. function plugin - to proszenie się o problemy, najlepiej zamykać to w swoich klasach, lub jeżeli wolisz funkcje, stosować jakieś unikalne nazwy np.:

Kod:
function FyeemFirstPlugin_firstFunction ()

;)
Tak, sa.

(21.08.2016, 11:19)Supryk napisał(a): [ -> ]rebuild_settings(); po dodaniu usunieciu ustawien do/z bazy

Dziwne ze one sie tam pokazaly
To znaczy ?