Fixed things Shish pointed out

This commit is contained in:
Daniel Oaks 2013-06-23 10:07:12 +10:00
parent bf0146cc41
commit 2a51a9d6ba
2 changed files with 30 additions and 23 deletions

View File

@ -14,11 +14,22 @@ class TagCategories extends Extension {
// note: only takes effect if /post/view shows the image's exact tags
$config->set_default_bool("tag_categories_split_on_view", true);
$database->execute('CREATE TABLE IF NOT EXISTS image_tag_categories (category TEXT PRIMARY KEY, display_singular TEXT, display_multiple SINGULAR, color TEXT(7));');
if($config->get_int("ext_tag_categories_version") < 1) {
// primary extension database, holds all our stuff!
$database->create_table('image_tag_categories',
'category VARCHAR(60) PRIMARY KEY,
display_singular TEXT(60),
display_multiple TEXT(60),
color TEXT(7)');
$number_of_db_rows = $database->execute('SELECT COUNT(*) FROM image_tag_categories;')->fetchColumn();
$config->set_int("ext_tag_categories_version", 1);
log_info("tag_categories", "extension installed");
}
// if empty, add our default values
$number_of_db_rows = $database->execute('SELECT COUNT(*) FROM image_tag_categories;')->fetchColumn();
if ($number_of_db_rows == 0) {
$database->execute('INSERT INTO image_tag_categories VALUES ("artist", "Artist", "Artists", "#BB6666");');
$database->execute('INSERT INTO image_tag_categories VALUES ("series", "Series", "Series", "#AA00AA");');
@ -29,14 +40,10 @@ class TagCategories extends Extension {
public function onPageRequest(PageRequestEvent $event) {
global $page, $database, $user;
if($event->page_matches("tags")) {
switch($event->get_arg(0)) {
case 'categories':
if(class_exists("TagCategories") and ($user->is_admin())) {
$this->page_update();
$this->show_tag_categories($page);
}
break;
if($event->page_matches("tags/categories")) {
if($user->is_admin()) {
$this->page_update();
$this->show_tag_categories($page);
}
}
}
@ -83,27 +90,27 @@ class TagCategories extends Extension {
color=:color
WHERE category=:category',
array(
'category' => html_escape($_POST['tc_category']),
'display_singular' => html_escape($_POST['tc_display_singular']),
'display_multiple' => html_escape($_POST['tc_display_multiple']),
'color' => html_escape($_POST['tc_color']),
'category' => $_POST['tc_category'],
'display_singular' => $_POST['tc_display_singular'],
'display_multiple' => $_POST['tc_display_multiple'],
'color' => $_POST['tc_color'],
));
}
else if($_POST['tc_status'] == 'new') {
$is_success = $database->execute('INSERT INTO image_tag_categories
VALUES (:category, :display_singular, :display_multiple, :color)',
array(
'category' => html_escape($_POST['tc_category']),
'display_singular' => html_escape($_POST['tc_display_singular']),
'display_multiple' => html_escape($_POST['tc_display_multiple']),
'color' => html_escape($_POST['tc_color']),
'category' => $_POST['tc_category'],
'display_singular' => $_POST['tc_display_singular'],
'display_multiple' => $_POST['tc_display_multiple'],
'color' => $_POST['tc_color'],
));
}
else if($_POST['tc_status'] == 'delete') {
$is_success = $database->execute('DELETE FROM image_tag_categories
WHERE category=:category',
array(
'category' => html_escape($_POST['tc_category'])
'category' => $_POST['tc_category']
));
}

View File

@ -67,10 +67,10 @@ class TagListTheme extends Themelet {
foreach(array_keys($tag_categories_html) as $category) {
if($tag_categories_count[$category] < 2) {
$category_display_name = $tag_category_dict[$category]['display_singular'];
$category_display_name = html_escape($tag_category_dict[$category]['display_singular']);
}
else{
$category_display_name = $tag_category_dict[$category]['display_multiple'];
$category_display_name = html_escape($tag_category_dict[$category]['display_multiple']);
}
$page->add_block(new Block($category_display_name, $tag_categories_html[$category], "left", 9));
}
@ -199,7 +199,7 @@ class TagListTheme extends Themelet {
$category = $h_tag_split[0];
$h_tag = $h_tag_split[1];
$tag_category_css .= ' tag_category_'.$category;
$tag_category_style .= 'style="color:'.$tag_category_dict[$category]['color'].';" ';
$tag_category_style .= 'style="color:'.html_escape($tag_category_dict[$category]['color']).';" ';
}
$h_tag_no_underscores = str_replace("_", " ", $h_tag);