Zeile 20 | Zeile 20 |
---|
if($mybb->input['action'] == "toggle_status") {
|
if($mybb->input['action'] == "toggle_status") {
|
if(!verify_post_check($mybb->input['my_post_key']))
| if(!verify_post_check($mybb->get_input('my_post_key')))
|
{ flash_message($lang->invalid_post_verify_key2, 'error'); admin_redirect("index.php?module=config-mycode");
| { flash_message($lang->invalid_post_verify_key2, 'error'); admin_redirect("index.php?module=config-mycode");
|
Zeile 53 | Zeile 53 |
---|
$plugins->run_hooks("admin_config_mycode_toggle_status_commit");
|
$plugins->run_hooks("admin_config_mycode_toggle_status_commit");
|
$db->update_query("mycode", $mycode_update, "cid='".$mybb->get_input('cid', MyBB::INPUT_INT)."'");
| $db->update_query("mycode", $mycode_update, "cid='{$mycode['cid']}'");
|
$cache->update_mycode();
| $cache->update_mycode();
|
Zeile 85 | Zeile 85 |
---|
if($mybb->input['action'] == "add") {
|
if($mybb->input['action'] == "add") {
|
$plugins->run_hooks("admin_config_mycode_add");
| $sandbox = array();
|
|
|
| $plugins->run_hooks("admin_config_mycode_add");
|
if($mybb->request_method == "post") { if(!trim($mybb->input['title']))
|
if($mybb->request_method == "post") { if(!trim($mybb->input['title']))
|
{
| {
|
$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))
|
{
|
{
|
$errors[] = $lang->error_missing_regex;
| $errors[] = $lang->error_regex_already_available;
|
}
if(!trim($mybb->input['replacement']))
| }
if(!trim($mybb->input['replacement']))
|
Zeile 104 | Zeile 113 |
---|
$errors[] = $lang->error_missing_replacement; }
|
$errors[] = $lang->error_missing_replacement; }
|
if($mybb->input['test'])
| if($mybb->get_input('test'))
|
{ $errors[] = $lang->changes_not_saved; $sandbox = test_regex($mybb->input['regex'], $mybb->input['replacement'], $mybb->input['test_value']);
| { $errors[] = $lang->changes_not_saved; $sandbox = test_regex($mybb->input['regex'], $mybb->input['replacement'], $mybb->input['test_value']);
|
Zeile 115 | Zeile 124 |
---|
$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']),
| 'active' => $mybb->get_input('active', MyBB::INPUT_INT),
|
'parseorder' => $mybb->get_input('parseorder', MyBB::INPUT_INT) );
| 'parseorder' => $mybb->get_input('parseorder', MyBB::INPUT_INT) );
|
Zeile 128 | Zeile 137 |
---|
$cache->update_mycode();
// Log admin action
|
$cache->update_mycode();
// Log admin action
|
log_admin_action($cid, htmlspecialchars_uni($mybb->input['title']));
| log_admin_action($cid, $mybb->input['title']);
|
flash_message($lang->success_added_mycode, 'success'); admin_redirect('index.php?module=config-mycode');
| flash_message($lang->success_added_mycode, 'success'); admin_redirect('index.php?module=config-mycode');
|
Zeile 168 | Zeile 177 |
---|
$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_numeric_field('parseorder', $mybb->input['parseorder'], array('id' => 'parseorder', 'min' => 0)), 'parseorder');
| $form_container->output_row($lang->title." <em>*</em>", '', $form->generate_text_box('title', $mybb->get_input('title'), array('id' => 'title')), 'title'); $form_container->output_row($lang->short_description, '', $form->generate_text_box('description', $mybb->get_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->get_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->get_input('replacement'), array('id' => 'replacement')), 'replacement'); $form_container->output_row($lang->enabled." <em>*</em>", '', $form->generate_yes_no_radio('active', $mybb->get_input('active'))); $form_container->output_row($lang->parse_order, $lang->parse_order_desc, $form->generate_numeric_field('parseorder', $mybb->get_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
|
$form_container->end();
$buttons[] = $form->generate_submit_button($lang->save_mycode); $form->output_submit_wrapper($buttons);
// Sandbox
|
| $sandbox_actual = isset($sandbox['actual']) ? $sandbox['actual'] : null;
|
echo "<br />\n"; $form_container = new FormContainer($lang->sandbox); $form_container->output_row($lang->sandbox_desc);
|
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->output_row($lang->test_value, $lang->test_value_desc, $form->generate_text_area('test_value', $mybb->get_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', isset($sandbox['html']) ? $sandbox['html'] : null, 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">
| $form_container->end(); echo '<script type="text/javascript" src="./jscripts/mycode_sandbox.js"></script>'; echo '<script type="text/javascript">
|
Zeile 197 | Zeile 208 |
---|
</script>';
$form->end();
|
</script>';
$form->end();
|
|
|
$page->output_footer(); }
| $page->output_footer(); }
|
Zeile 211 | Zeile 222 |
---|
flash_message($lang->error_invalid_mycode, 'error'); admin_redirect("index.php?module=config-mycode"); }
|
flash_message($lang->error_invalid_mycode, 'error'); admin_redirect("index.php?module=config-mycode"); }
|
| $sandbox = array();
|
$plugins->run_hooks("admin_config_mycode_edit");
| $plugins->run_hooks("admin_config_mycode_edit");
|
Zeile 224 | Zeile 237 |
---|
if(!trim($mybb->input['regex'])) { $errors[] = $lang->error_missing_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_regex_already_available;
|
}
if(!trim($mybb->input['replacement']))
| }
if(!trim($mybb->input['replacement']))
|
Zeile 231 | Zeile 251 |
---|
$errors[] = $lang->error_missing_replacement; }
|
$errors[] = $lang->error_missing_replacement; }
|
if($mybb->input['test'])
| if($mybb->get_input('test'))
|
{ $errors[] = $lang->changes_not_saved; $sandbox = test_regex($mybb->input['regex'], $mybb->input['replacement'], $mybb->input['test_value']);
| { $errors[] = $lang->changes_not_saved; $sandbox = test_regex($mybb->input['regex'], $mybb->input['replacement'], $mybb->input['test_value']);
|
Zeile 242 | Zeile 262 |
---|
$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']),
| 'active' => $mybb->get_input('active', MyBB::INPUT_INT),
|
'parseorder' => $mybb->get_input('parseorder', MyBB::INPUT_INT) );
$plugins->run_hooks("admin_config_mycode_edit_commit");
|
'parseorder' => $mybb->get_input('parseorder', MyBB::INPUT_INT) );
$plugins->run_hooks("admin_config_mycode_edit_commit");
|
$db->update_query("mycode", $updated_mycode, "cid='".$mybb->get_input('cid', MyBB::INPUT_INT)."'");
| $db->update_query("mycode", $updated_mycode, "cid='{$mycode['cid']}'");
|
$cache->update_mycode();
// Log admin action
|
$cache->update_mycode();
// Log admin action
|
log_admin_action($mycode['cid'], htmlspecialchars_uni($mybb->input['title']));
| log_admin_action($mycode['cid'], $mybb->input['title']);
|
flash_message($lang->success_updated_mycode, 'success'); admin_redirect('index.php?module=config-mycode');
| flash_message($lang->success_updated_mycode, 'success'); admin_redirect('index.php?module=config-mycode');
|
Zeile 304 | Zeile 324 |
---|
$form->output_submit_wrapper($buttons);
// Sandbox
|
$form->output_submit_wrapper($buttons);
// Sandbox
|
| $sandbox_actual = isset($sandbox['actual']) ? $sandbox['actual'] : null;
|
echo "<br />\n"; $form_container = new FormContainer($lang->sandbox); $form_container->output_row($lang->sandbox_desc);
|
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->output_row($lang->test_value, $lang->test_value_desc, $form->generate_text_area('test_value', $mybb->get_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', isset($sandbox['html']) ? $sandbox['html'] : null, 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">
| $form_container->end(); echo '<script type="text/javascript" src="./jscripts/mycode_sandbox.js"></script>'; echo '<script type="text/javascript">
|
Zeile 340 | Zeile 362 |
---|
$plugins->run_hooks("admin_config_mycode_delete");
// User clicked no
|
$plugins->run_hooks("admin_config_mycode_delete");
// User clicked no
|
if($mybb->input['no'])
| if($mybb->get_input('no'))
|
{ admin_redirect("index.php?module=config-mycode"); }
| { admin_redirect("index.php?module=config-mycode"); }
|
Zeile 354 | Zeile 376 |
---|
$cache->update_mycode();
// Log admin action
|
$cache->update_mycode();
// Log admin action
|
log_admin_action($mycode['cid'], htmlspecialchars_uni($mycode['title']));
| log_admin_action($mycode['cid'], $mycode['title']);
|
flash_message($lang->success_deleted_mycode, 'success'); admin_redirect("index.php?module=config-mycode");
| flash_message($lang->success_deleted_mycode, 'success'); admin_redirect("index.php?module=config-mycode");
|
Zeile 383 | Zeile 405 |
---|
);
$page->output_nav_tabs($sub_tabs, 'mycode');
|
);
$page->output_nav_tabs($sub_tabs, 'mycode');
|
| $query = $db->simple_select("mycode", "COUNT(cid) AS mycode"); $total_rows = $db->fetch_field($query, "mycode");
$pagenum = $mybb->get_input('page', MyBB::INPUT_INT); if($pagenum) { $start = ($pagenum - 1) * 20; $pages = ceil($total_rows / 20); if($pagenum > $pages) { $start = 0; $pagenum = 1; } } else { $start = 0; $pagenum = 1; }
|
$table = new Table; $table->construct_header($lang->title); $table->construct_header($lang->controls, array('class' => 'align_center', 'width' => 150));
|
$table = new Table; $table->construct_header($lang->title); $table->construct_header($lang->controls, array('class' => 'align_center', 'width' => 150));
|
$query = $db->simple_select("mycode", "*", "", array('order_by' => 'parseorder'));
| $query = $db->simple_select("mycode", "*", "", array('limit_start' => $start, 'limit' => 20, 'order_by' => 'parseorder'));
|
while($mycode = $db->fetch_array($query)) { if($mycode['active'] == 1)
|
while($mycode = $db->fetch_array($query)) { if($mycode['active'] == 1)
|
{
| {
|
$phrase = $lang->deactivate_mycode; $icon = "<img src=\"styles/{$page->style}/images/icons/bullet_on.png\" alt=\"({$lang->alt_enabled})\" title=\"{$lang->alt_enabled}\" style=\"vertical-align: middle;\" /> "; }
| $phrase = $lang->deactivate_mycode; $icon = "<img src=\"styles/{$page->style}/images/icons/bullet_on.png\" alt=\"({$lang->alt_enabled})\" title=\"{$lang->alt_enabled}\" style=\"vertical-align: middle;\" /> "; }
|
Zeile 403 | Zeile 445 |
---|
}
if($mycode['description'])
|
}
if($mycode['description'])
|
{
| {
|
$mycode['description'] = "<small>".htmlspecialchars_uni($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']}\">".htmlspecialchars_uni($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->add_item($phrase, "index.php?module=config-mycode&action=toggle_status&cid={$mycode['cid']}&my_post_key={$mybb->post_code}");
| $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->add_item($phrase, "index.php?module=config-mycode&action=toggle_status&cid={$mycode['cid']}&my_post_key={$mybb->post_code}");
|
Zeile 418 | Zeile 460 |
---|
}
if($table->num_rows() == 0)
|
}
if($table->num_rows() == 0)
|
{
| {
|
$table->construct_cell($lang->no_mycode, array('colspan' => 2)); $table->construct_row();
|
$table->construct_cell($lang->no_mycode, array('colspan' => 2)); $table->construct_row();
|
}
$table->output($lang->custom_mycode);
| }
$table->output($lang->custom_mycode);
echo "<br />".draw_admin_pagination($pagenum, "20", $total_rows, "index.php?module=config-mycode&page={page}");
|
$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;
|
}
| }
|