Zeile 26 | Zeile 26 |
---|
admin_redirect("index.php?module=config-mycode"); }
|
admin_redirect("index.php?module=config-mycode"); }
|
$query = $db->simple_select("mycode", "*", "cid='".$mybb->get_input('cid', 1)."'");
| $query = $db->simple_select("mycode", "*", "cid='".$mybb->get_input('cid', MyBB::INPUT_INT)."'");
|
$mycode = $db->fetch_array($query);
if(!$mycode['cid'])
| $mycode = $db->fetch_array($query);
if(!$mycode['cid'])
|
Zeile 51 | Zeile 51 |
---|
'active' => $new_status, );
|
'active' => $new_status, );
|
$db->update_query("mycode", $mycode_update, "cid='".$mybb->get_input('cid', 1)."'");
| $plugins->run_hooks("admin_config_mycode_toggle_status_commit");
$db->update_query("mycode", $mycode_update, "cid='{$mycode['cid']}'");
|
$cache->update_mycode();
|
$cache->update_mycode();
|
$plugins->run_hooks("admin_config_mycode_toggle_status_commit");
|
|
// Log admin action log_admin_action($mycode['cid'], $mycode['title'], $new_status);
| // Log admin action log_admin_action($mycode['cid'], $mycode['title'], $new_status);
|
Zeile 86 | Zeile 86 |
---|
if($mybb->input['action'] == "add") { $plugins->run_hooks("admin_config_mycode_add");
|
if($mybb->input['action'] == "add") { $plugins->run_hooks("admin_config_mycode_add");
|
if($mybb->request_method == "post") { if(!trim($mybb->input['title'])) { $errors[] = $lang->error_missing_title; }
if(!trim($mybb->input['regex'])) { $errors[] = $lang->error_missing_regex; }
| if($mybb->request_method == "post") { if(!trim($mybb->input['title'])) { $errors[] = $lang->error_missing_title; }
if(!trim($mybb->input['regex'])) { $errors[] = $lang->error_missing_regex; }
$regex = str_replace("\x0", "", $mybb->input['regex']);
if(check_existing_regex($regex)) { $errors[] = $lang->error_regex_already_available; }
|
if(!trim($mybb->input['replacement'])) { $errors[] = $lang->error_missing_replacement;
| if(!trim($mybb->input['replacement'])) { $errors[] = $lang->error_missing_replacement;
|
Zeile 115 | Zeile 122 |
---|
$new_mycode = array( 'title' => $db->escape_string($mybb->input['title']), 'description' => $db->escape_string($mybb->input['description']),
|
$new_mycode = array( 'title' => $db->escape_string($mybb->input['title']), 'description' => $db->escape_string($mybb->input['description']),
|
'regex' => $db->escape_string(str_replace("\x0", "", $mybb->input['regex'])),
| 'regex' => $db->escape_string($regex),
|
'replacement' => $db->escape_string($mybb->input['replacement']),
|
'replacement' => $db->escape_string($mybb->input['replacement']),
|
'active' => $db->escape_string($mybb->input['active']), 'parseorder' => (int)$mybb->input['parseorder']
| 'active' => $mybb->get_input('active', MyBB::INPUT_INT), 'parseorder' => $mybb->get_input('parseorder', MyBB::INPUT_INT)
|
);
$cid = $db->insert_query("mycode", $new_mycode);
|
);
$cid = $db->insert_query("mycode", $new_mycode);
|
$cache->update_mycode();
|
|
$plugins->run_hooks("admin_config_mycode_add_commit");
|
$plugins->run_hooks("admin_config_mycode_add_commit");
|
| $cache->update_mycode();
|
// Log admin action log_admin_action($cid, $mybb->input['title']);
| // Log admin action log_admin_action($cid, $mybb->input['title']);
|
Zeile 145 | Zeile 152 |
---|
'title' => $lang->add_new_mycode, 'link' => "index.php?module=config-mycode&action=add", 'description' => $lang->add_new_mycode_desc
|
'title' => $lang->add_new_mycode, 'link' => "index.php?module=config-mycode&action=add", 'description' => $lang->add_new_mycode_desc
|
);
$page->extra_header .= "
| );
$page->extra_header .= "
|
<script type=\"text/javascript\"> var my_post_key = '".$mybb->post_code."'; lang.mycode_sandbox_test_error = \"{$lang->mycode_sandbox_test_error}\";
| <script type=\"text/javascript\"> var my_post_key = '".$mybb->post_code."'; lang.mycode_sandbox_test_error = \"{$lang->mycode_sandbox_test_error}\";
|
Zeile 156 | Zeile 163 |
---|
$page->add_breadcrumb_item($lang->add_new_mycode); $page->output_header($lang->custom_mycode." - ".$lang->add_new_mycode); $page->output_nav_tabs($sub_tabs, 'add_new_mycode');
|
$page->add_breadcrumb_item($lang->add_new_mycode); $page->output_header($lang->custom_mycode." - ".$lang->add_new_mycode); $page->output_nav_tabs($sub_tabs, 'add_new_mycode');
|
|
|
if($errors) { $page->output_inline_error($errors);
| if($errors) { $page->output_inline_error($errors);
|
Zeile 165 | Zeile 172 |
---|
{ $mybb->input['active'] = 1; }
|
{ $mybb->input['active'] = 1; }
|
|
|
$form = new Form("index.php?module=config-mycode&action=add", "post", "add"); $form_container = new FormContainer($lang->add_mycode);
|
$form = new Form("index.php?module=config-mycode&action=add", "post", "add"); $form_container = new FormContainer($lang->add_mycode);
|
$form_container->output_row($lang->title." <em>*</em>", '', $form->generate_text_box('title', $mybb->input['title'], array('id' => 'title')), 'title'); $form_container->output_row($lang->short_description, '', $form->generate_text_box('description', $mybb->input['description'], array('id' => 'description')), 'description'); $form_container->output_row($lang->regular_expression." <em>*</em>", $lang->regular_expression_desc.'<br /><strong>'.$lang->example.'</strong> \[b\](.*?)\[/b\]', $form->generate_text_area('regex', $mybb->input['regex'], array('id' => 'regex')), 'regex'); $form_container->output_row($lang->replacement." <em>*</em>", $lang->replacement_desc.'<br /><strong>'.$lang->example.'</strong> <strong>$1</strong>', $form->generate_text_area('replacement', $mybb->input['replacement'], array('id' => 'replacement')), 'replacement'); $form_container->output_row($lang->enabled." <em>*</em>", '', $form->generate_yes_no_radio('active', $mybb->input['active'])); $form_container->output_row($lang->parse_order, $lang->parse_order_desc, $form->generate_text_box('parseorder', $mybb->input['parseorder'], array('id' => 'parseorder')), 'parseorder'); $form_container->end();
$buttons[] = $form->generate_submit_button($lang->save_mycode); $form->output_submit_wrapper($buttons);
// Sandbox echo "<br />\n"; $form_container = new FormContainer($lang->sandbox); $form_container->output_row($lang->sandbox_desc); $form_container->output_row($lang->test_value, $lang->test_value_desc, $form->generate_text_area('test_value', $mybb->input['test_value'], array('id' => 'test_value'))."<br />".$form->generate_submit_button($lang->test, array('id' => 'test', 'name' => 'test')), 'test_value'); $form_container->output_row($lang->result_html, $lang->result_html_desc, $form->generate_text_area('result_html', $sandbox['html'], array('id' => 'result_html', 'disabled' => 1)), 'result_html'); $form_container->output_row($lang->result_actual, $lang->result_actual_desc, "<div id=\"result_actual\">{$sandbox['actual']}</div>"); $form_container->end(); echo '<script type="text/javascript" src="./jscripts/mycode_sandbox.js"></script>'; echo '<script type="text/javascript"> //<![CDATA[ $(function(){ new MyCodeSandbox("./index.php?module=config-mycode&action=xmlhttp_test_mycode", $("#test"), $("#regex"), $("#replacement"), $("#test_value"), $("#result_html"), $("#result_actual")); }); //]]> </script>';
| $form_container->output_row($lang->title." <em>*</em>", '', $form->generate_text_box('title', $mybb->input['title'], array('id' => 'title')), 'title'); $form_container->output_row($lang->short_description, '', $form->generate_text_box('description', $mybb->input['description'], array('id' => 'description')), 'description'); $form_container->output_row($lang->regular_expression." <em>*</em>", $lang->regular_expression_desc.'<br /><strong>'.$lang->example.'</strong> \[b\](.*?)\[/b\]', $form->generate_text_area('regex', $mybb->input['regex'], array('id' => 'regex')), 'regex'); $form_container->output_row($lang->replacement." <em>*</em>", $lang->replacement_desc.'<br /><strong>'.$lang->example.'</strong> <strong>$1</strong>', $form->generate_text_area('replacement', $mybb->input['replacement'], array('id' => 'replacement')), 'replacement'); $form_container->output_row($lang->enabled." <em>*</em>", '', $form->generate_yes_no_radio('active', $mybb->input['active'])); $form_container->output_row($lang->parse_order, $lang->parse_order_desc, $form->generate_numeric_field('parseorder', $mybb->input['parseorder'], array('id' => 'parseorder', 'min' => 0)), 'parseorder'); $form_container->end();
$buttons[] = $form->generate_submit_button($lang->save_mycode); $form->output_submit_wrapper($buttons);
// Sandbox echo "<br />\n"; $form_container = new FormContainer($lang->sandbox); $form_container->output_row($lang->sandbox_desc); $form_container->output_row($lang->test_value, $lang->test_value_desc, $form->generate_text_area('test_value', $mybb->input['test_value'], array('id' => 'test_value'))."<br />".$form->generate_submit_button($lang->test, array('id' => 'test', 'name' => 'test')), 'test_value'); $form_container->output_row($lang->result_html, $lang->result_html_desc, $form->generate_text_area('result_html', $sandbox['html'], array('id' => 'result_html', 'disabled' => 1)), 'result_html'); $form_container->output_row($lang->result_actual, $lang->result_actual_desc, "<div id=\"result_actual\">{$sandbox['actual']}</div>"); $form_container->end(); echo '<script type="text/javascript" src="./jscripts/mycode_sandbox.js"></script>'; echo '<script type="text/javascript"> //<![CDATA[ $(function(){ new MyCodeSandbox("./index.php?module=config-mycode&action=xmlhttp_test_mycode", $("#test"), $("#regex"), $("#replacement"), $("#test_value"), $("#result_html"), $("#result_actual")); }); //]]> </script>';
|
$form->end();
| $form->end();
|
Zeile 203 | Zeile 210 |
---|
if($mybb->input['action'] == "edit") {
|
if($mybb->input['action'] == "edit") {
|
$query = $db->simple_select("mycode", "*", "cid='".$mybb->get_input('cid', 1)."'");
| $query = $db->simple_select("mycode", "*", "cid='".$mybb->get_input('cid', MyBB::INPUT_INT)."'");
|
$mycode = $db->fetch_array($query);
if(!$mycode['cid'])
| $mycode = $db->fetch_array($query);
if(!$mycode['cid'])
|
Zeile 213 | Zeile 220 |
---|
}
$plugins->run_hooks("admin_config_mycode_edit");
|
}
$plugins->run_hooks("admin_config_mycode_edit");
|
|
|
if($mybb->request_method == "post") { if(!trim($mybb->input['title']))
| if($mybb->request_method == "post") { if(!trim($mybb->input['title']))
|
Zeile 221 | Zeile 228 |
---|
$errors[] = $lang->error_missing_title; }
|
$errors[] = $lang->error_missing_title; }
|
if(!trim($mybb->input['regex']))
| if(!trim($mybb->input['regex'])) { $errors[] = $lang->error_missing_regex; }
$regex = str_replace("\x0", "", $mybb->input['regex']);
if(check_existing_regex($regex, $mycode))
|
{
|
{
|
$errors[] = $lang->error_missing_regex;
| $errors[] = $lang->error_regex_already_available;
|
}
if(!trim($mybb->input['replacement']))
| }
if(!trim($mybb->input['replacement']))
|
Zeile 242 | Zeile 256 |
---|
$updated_mycode = array( 'title' => $db->escape_string($mybb->input['title']), 'description' => $db->escape_string($mybb->input['description']),
|
$updated_mycode = array( 'title' => $db->escape_string($mybb->input['title']), 'description' => $db->escape_string($mybb->input['description']),
|
'regex' => $db->escape_string(str_replace("\x0", "", $mybb->input['regex'])),
| 'regex' => $db->escape_string($regex),
|
'replacement' => $db->escape_string($mybb->input['replacement']),
|
'replacement' => $db->escape_string($mybb->input['replacement']),
|
'active' => $db->escape_string($mybb->input['active']), 'parseorder' => (int)$mybb->input['parseorder']
| 'active' => $mybb->get_input('active', MyBB::INPUT_INT), 'parseorder' => $mybb->get_input('parseorder', MyBB::INPUT_INT)
|
);
|
);
|
$db->update_query("mycode", $updated_mycode, "cid='".$mybb->get_input('cid', 1)."'");
| $plugins->run_hooks("admin_config_mycode_edit_commit");
$db->update_query("mycode", $updated_mycode, "cid='{$mycode['cid']}'");
|
$cache->update_mycode();
|
$cache->update_mycode();
|
$plugins->run_hooks("admin_config_mycode_edit_commit");
| |
// Log admin action log_admin_action($mycode['cid'], $mybb->input['title']);
| // Log admin action log_admin_action($mycode['cid'], $mybb->input['title']);
|
Zeile 296 | Zeile 310 |
---|
$form_container->output_row($lang->regular_expression." <em>*</em>", $lang->regular_expression_desc.'<br /><strong>'.$lang->example.'</strong> \[b\](.*?)\[/b\]', $form->generate_text_area('regex', $mybb->input['regex'], array('id' => 'regex')), 'regex'); $form_container->output_row($lang->replacement." <em>*</em>", $lang->replacement_desc.'<br /><strong>'.$lang->example.'</strong> <strong>$1</strong>', $form->generate_text_area('replacement', $mybb->input['replacement'], array('id' => 'replacement')), 'replacement'); $form_container->output_row($lang->enabled." <em>*</em>", '', $form->generate_yes_no_radio('active', $mybb->input['active']));
|
$form_container->output_row($lang->regular_expression." <em>*</em>", $lang->regular_expression_desc.'<br /><strong>'.$lang->example.'</strong> \[b\](.*?)\[/b\]', $form->generate_text_area('regex', $mybb->input['regex'], array('id' => 'regex')), 'regex'); $form_container->output_row($lang->replacement." <em>*</em>", $lang->replacement_desc.'<br /><strong>'.$lang->example.'</strong> <strong>$1</strong>', $form->generate_text_area('replacement', $mybb->input['replacement'], array('id' => 'replacement')), 'replacement'); $form_container->output_row($lang->enabled." <em>*</em>", '', $form->generate_yes_no_radio('active', $mybb->input['active']));
|
$form_container->output_row($lang->parse_order, $lang->parse_order_desc, $form->generate_text_box('parseorder', $mybb->input['parseorder'], array('id' => 'parseorder')), 'parseorder');
| $form_container->output_row($lang->parse_order, $lang->parse_order_desc, $form->generate_numeric_field('parseorder', $mybb->input['parseorder'], array('id' => 'parseorder', 'min' => 0)), 'parseorder');
|
$form_container->end();
$buttons[] = $form->generate_submit_button($lang->save_mycode);
| $form_container->end();
$buttons[] = $form->generate_submit_button($lang->save_mycode);
|
Zeile 328 | Zeile 342 |
---|
if($mybb->input['action'] == "delete") {
|
if($mybb->input['action'] == "delete") {
|
$query = $db->simple_select("mycode", "*", "cid='".$mybb->get_input('cid', 1)."'");
| $query = $db->simple_select("mycode", "*", "cid='".$mybb->get_input('cid', MyBB::INPUT_INT)."'");
|
$mycode = $db->fetch_array($query);
if(!$mycode['cid'])
| $mycode = $db->fetch_array($query);
if(!$mycode['cid'])
|
Zeile 348 | Zeile 362 |
---|
if($mybb->request_method == "post") { $db->delete_query("mycode", "cid='{$mycode['cid']}'");
|
if($mybb->request_method == "post") { $db->delete_query("mycode", "cid='{$mycode['cid']}'");
|
$cache->update_mycode();
| |
$plugins->run_hooks("admin_config_mycode_delete_commit");
|
$plugins->run_hooks("admin_config_mycode_delete_commit");
|
| $cache->update_mycode();
|
// Log admin action log_admin_action($mycode['cid'], $mycode['title']);
| // Log admin action log_admin_action($mycode['cid'], $mycode['title']);
|
Zeile 404 | Zeile 418 |
---|
if($mycode['description']) {
|
if($mycode['description']) {
|
$mycode['description'] = "<small>{$mycode['description']}</small>";
| $mycode['description'] = "<small>".htmlspecialchars_uni($mycode['description'])."</small>";
|
}
|
}
|
$table->construct_cell("<div>{$icon}<strong><a href=\"index.php?module=config-mycode&action=edit&cid={$mycode['cid']}\">{$mycode['title']}</a></strong><br />{$mycode['description']}</div>");
| $table->construct_cell("<div>{$icon}<strong><a href=\"index.php?module=config-mycode&action=edit&cid={$mycode['cid']}\">".htmlspecialchars_uni($mycode['title'])."</a></strong><br />{$mycode['description']}</div>");
|
$popup = new PopupMenu("mycode_{$mycode['cid']}", $lang->options); $popup->add_item($lang->edit_mycode, "index.php?module=config-mycode&action=edit&cid={$mycode['cid']}");
| $popup = new PopupMenu("mycode_{$mycode['cid']}", $lang->options); $popup->add_item($lang->edit_mycode, "index.php?module=config-mycode&action=edit&cid={$mycode['cid']}");
|
Zeile 428 | Zeile 442 |
---|
$page->output_footer(); }
|
$page->output_footer(); }
|
| /** * @param string $regex * @param string $replacement * @param string $test * * @return array */
|
function test_regex($regex, $replacement, $test) { $array = array(); $array['actual'] = @preg_replace("#".str_replace("\x0", "", $regex)."#si", $replacement, $test); $array['html'] = htmlspecialchars_uni($array['actual']); return $array;
|
function test_regex($regex, $replacement, $test) { $array = array(); $array['actual'] = @preg_replace("#".str_replace("\x0", "", $regex)."#si", $replacement, $test); $array['html'] = htmlspecialchars_uni($array['actual']); return $array;
|
| }
/** * Checks if a regex is already available * * @param string $regex The regex to check * @param array $current The currently edited MyCode * * @return bool True if already available, false otherwise */ function check_existing_regex($regex='', $current=array()) { global $cache;
if(!empty($current) && $current['regex'] == $regex) { return false; }
$mycodes = $cache->read('mycode');
foreach($mycodes as $mycode) { if($mycode['regex'] == $regex) { return true; } }
return false;
|
}
| }
|