06.07.2014, 12:09
Chciałem dodać do dwóch ostatnich pluginów o których pisałem, coś jak jest w Fit on Page. Jeśli plugin ma zaznaczone off to nie pokazuje opcji natomiast jeśli on to je pokazuje. Próbowałem się doszukać tej opcji ale bez skutku.
$settinggroups = array(
"name" => "reputationlevels",
"title" => $db->escape_string($lang->reputationlevels_setting),
"description" => $db->escape_string($lang->reputationlevels_setting_desc),
"disporder" => $max_disporder + 1,
"isdefault" => "0",
);
$gid = $db->insert_query("settinggroups", $settinggroups);
$disporder = 0;
$gid = $db->insert_id();
$setting = array(
"sid" => "NULL",
"name" => "reputationlevels_onoff",
"title" => $db->escape_string($lang->reputationlevels_setting_onoff),
"description" => $db->escape_string($lang->reputationlevels_setting_onoff_desc),
"optionscode" => "onoff",
"value" => "1",
"disporder" => $disporder++,
"gid" => $gid,
);
$db->insert_query("settings", $setting);
rebuild_settings();
if($mybb->settings['reputationlevels_onoff'] == '1')
{
// jest na jeden wiec tu kod wlasciwy
}
function phpcolors_activate()
{
require MYBB_ROOT."inc/adminfunctions_templates.php";
global $db;
$result = $db->simple_select('settinggroups', 'MAX(disporder) AS max_disporder');
$max_disporder = $db->fetch_field($result, 'max_disporder');
$disporter = 1;
$insertarray = array(
'gid' => 'NULL',
'name' => 'phpcolors',
'title' => 'PHP Highlight',
'description' => 'Ten plugin pomoże zmienić kolory składni PHP.',
'disporder' => $max_disporder + 1,
'isdefault' => 'no'
);
$db->insert_query("settinggroups", $insertarray);
$group['gid'] = $db->insert_id();
$settings = array(
'name' => 'phpcolors',
'title' => 'PHP Highlight',
'description' => 'Chcesz włączyć?',
'optionscode' => 'yesno',
'value' => 'yes',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings);
$settings1 = array(
'name' => 'highlight.string',
'title' => 'Kolor string',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#C0FF21',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings1);
$settings2 = array(
'name' => 'highlight.comment',
'title' => 'Kolor comment',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#1E90FF',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings2);
$settings3 = array(
'name' => 'highlight.keyword',
'title' => 'Kolor keyword',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#FFC0CB',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings3);
$settings4 = array(
'name' => 'highlight.default',
'title' => 'Kolor default',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#cecece',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings4);
rebuild_settings();
}
function phpcolors_deactivate(){
global $db;
$db->delete_query("settings", "name='phpcolors'");
$db->delete_query("settings", "name='highlight.string'");
$db->delete_query("settings", "name='highlight.comment'");
$db->delete_query("settings", "name='highlight.keyword'");
$db->delete_query("settings", "name='highlight.default'");
$db->delete_query("settinggroups", "name='phpcolors'");
rebuild_settings();
}
function phpcolors_start(){
global $mybb;
if(intval($mybb->settings['phpcolors']) == 1){
ini_set('highlight.string', ''.$mybb->settings['highlight.string'].'');
ini_set('highlight.comment', ''.$mybb->settings['highlight.comment'].'');
ini_set('highlight.keyword', ''.$mybb->settings['highlight.keyword'].'');
ini_set('highlight.default', ''.$mybb->settings['highlight.default'].'');
}
}
(06.07.2014, 12:24)MEXXIO napisał(a): [ -> ]No mam coś takiego:opcje są normalnie w acp?
Kod PHP:function phpcolors_activate()
{
require MYBB_ROOT."inc/adminfunctions_templates.php";
global $db;
$result = $db->simple_select('settinggroups', 'MAX(disporder) AS max_disporder');
$max_disporder = $db->fetch_field($result, 'max_disporder');
$disporter = 1;
$insertarray = array(
'gid' => 'NULL',
'name' => 'phpcolors',
'title' => 'PHP Highlight',
'description' => 'Ten plugin pomoże zmienić kolory składni PHP.',
'disporder' => $max_disporder + 1,
'isdefault' => 'no'
);
$db->insert_query("settinggroups", $insertarray);
$group['gid'] = $db->insert_id();
$settings = array(
'name' => 'phpcolors',
'title' => 'PHP Highlight',
'description' => 'Chcesz włączyć?',
'optionscode' => 'yesno',
'value' => 'yes',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings);
$settings1 = array(
'name' => 'highlight.string',
'title' => 'Kolor string',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#C0FF21',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings1);
$settings2 = array(
'name' => 'highlight.comment',
'title' => 'Kolor comment',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#1E90FF',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings2);
$settings3 = array(
'name' => 'highlight.keyword',
'title' => 'Kolor keyword',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#FFC0CB',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings3);
$settings4 = array(
'name' => 'highlight.default',
'title' => 'Kolor default',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#cecece',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings4);
rebuild_settings();
}
function phpcolors_deactivate(){
global $db;
$db->delete_query("settings", "name='phpcolors'");
$db->delete_query("settings", "name='highlight.string'");
$db->delete_query("settings", "name='highlight.comment'");
$db->delete_query("settings", "name='highlight.keyword'");
$db->delete_query("settings", "name='highlight.default'");
$db->delete_query("settinggroups", "name='phpcolors'");
rebuild_settings();
}
function phpcolors_start(){
global $mybb;
if(intval($mybb->settings['phpcolors']) == 1){
ini_set('highlight.string', ''.$mybb->settings['highlight.string'].'');
ini_set('highlight.comment', ''.$mybb->settings['highlight.comment'].'');
ini_set('highlight.keyword', ''.$mybb->settings['highlight.keyword'].'');
ini_set('highlight.default', ''.$mybb->settings['highlight.default'].'');
}
}
no i właśnie nie wiem czy pierwsza część któą podałeś jest dobrze i gdzie usadowić drugą.
if($mybb->settings['phpcolors'] == 1){
$settings = array(
'name' => 'phpcolors',
'title' => 'PHP Highlight',
'description' => 'Chcesz włączyć?',
'optionscode' => 'yesno',
'value' => '0',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings);
$settings1 = array(
'name' => 'highlight.string',
'title' => 'Kolor string',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#C0FF21',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings1);
$settings2 = array(
'name' => 'highlight.comment',
'title' => 'Kolor comment',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#1E90FF',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings2);
$settings3 = array(
'name' => 'highlight.keyword',
'title' => 'Kolor keyword',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#FFC0CB',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings3);
$settings4 = array(
'name' => 'highlight.default',
'title' => 'Kolor default',
'description' => 'Tu podaj kolor HEX',
'optionscode' => 'text',
'value' => '#cecece',
'disporder' => $disporter++,
'gid' => $group['gid'],
);
$db->insert_query('settings', $settings4);
rebuild_settings();
function fitonpage_settings_page()
{
global $db, $mybb, $g33k_settings_peeker;
$codename = basename(__FILE__, ".php");
$prefix = 'g33k_'.$codename.'_';
$query = $db->simple_select("settinggroups", "gid", "name='{$prefix}settings'", array('limit' => 1));
$group = $db->fetch_array($query);
$g33k_settings_peeker = ($mybb->input["gid"] == $group["gid"]) && ($mybb->request_method != "post");
}
function fitonpage_settings_peeker()
{
global $g33k_settings_peeker;
$codename = basename(__FILE__, ".php");
$prefix = 'g33k_'.$codename.'_';
if($g33k_settings_peeker)
echo '<script type="text/javascript">
Event.observe(window,"load",function(){
load'.$prefix.'Peekers();
});
function load'.$prefix.'Peekers(){
new Peeker($$(".setting_'.$prefix.'enabled"), $("row_setting_'.$prefix.'resize"), /1/, true);
new Peeker($$(".setting_'.$prefix.'enabled"), $("row_setting_'.$prefix.'fluid"), /1/, true);
new Peeker($$(".setting_'.$prefix.'enabled"), $("row_setting_'.$prefix.'topbar_text_class"), /1/, true);
new Peeker($$(".setting_'.$prefix.'enabled"), $("row_setting_'.$prefix.'topbar_bground"), /1/, true);
new Peeker($$(".setting_'.$prefix.'enabled"), $("row_setting_'.$prefix.'topbar_icon"), /1/, true);
}
</script>';
}