diff --git a/contrib/numeric_score/main.php b/contrib/numeric_score/main.php index ca8aba57..dee4cab3 100644 --- a/contrib/numeric_score/main.php +++ b/contrib/numeric_score/main.php @@ -28,48 +28,32 @@ class NumericScore extends Extension { if($config->get_int("ext_numeric_score_version", 0) < 1) { $this->install(); } - $config->set_default_bool("numeric_score_anon", true); - } - - if(is_a($event, 'PageRequestEvent') && $event->page_name == "numeric_score" && - $event->get_arg(0) == "vote" && - isset($_POST['score']) && isset($_POST['image_id'])) { - $i_score = int_escape($_POST['score']); - $i_image_id = int_escape($_POST['image_id']); - - if($i_score >= -1 || $i_score <= 1) { - send_event(new NumericScoreSetEvent($i_image_id, $event->user, $i_score)); - } - - $event->page->set_mode("redirect"); - $event->page->set_redirect(make_link("post/view/$i_image_id")); } - if(is_a($event, 'NumericScoreSetEvent')) { - if(!$event->user->is_anonymous() || $config->get_bool("numeric_score_anon")) { - $this->add_vote($event->image_id, $event->user->id, $event->score); - } - } - if(is_a($event, 'ImageInfoBoxBuildingEvent')) { global $user; global $config; - if(!$user->is_anonymous() || $config->get_bool("numeric_score_anon")) { + if(!$user->is_anonymous()) { $event->add_part($this->theme->get_voter_html($event->image)); } } + if(is_a($event, 'ImageInfoSetEvent')) { + global $user; + $char = $_POST['numeric_score']; + if($char == "u") $score = 1; + else if($char == "d") $score = -1; + send_event(new NumericScoreSetEvent($event->image_id, $user, $score)); + } + if(is_a($event, 'NumericScoreSetEvent')) { + $this->add_vote($event->image_id, $event->user->id, $event->score); + } + if(is_a($event, 'ImageDeletionEvent')) { global $database; $database->execute("DELETE FROM numeric_score_votes WHERE image_id=?", array($event->image->id)); } - - if(is_a($event, 'SetupBuildingEvent')) { - $sb = new SetupBlock("Numeric Score"); - $sb->add_bool_option("numeric_score_anon", "Allow anonymous votes: "); - $event->panel->add_block($sb); - } if(is_a($event, 'ParseLinkTemplateEvent')) { $event->replace('$score', $event->image->numeric_score); diff --git a/contrib/numeric_score/theme.php b/contrib/numeric_score/theme.php index fbe45fd7..3a621a33 100644 --- a/contrib/numeric_score/theme.php +++ b/contrib/numeric_score/theme.php @@ -6,26 +6,14 @@ class NumericScoreTheme extends Themelet { $i_score = int_escape($image->numeric_score); $html = " - - - - - -
Current score is $i_score - -
+ + Score ($i_score) + + + + + + "; return $html; } diff --git a/contrib/text_score/main.php b/contrib/text_score/main.php deleted file mode 100644 index 55aaaebe..00000000 --- a/contrib/text_score/main.php +++ /dev/null @@ -1,105 +0,0 @@ - - * Link: http://trac.shishnet.org/shimmie2/ - * License: GPLv2 - * Description: Allow users to score images - */ - -class TextScoreSetEvent extends Event { - var $image_id, $user, $score; - - public function TextScoreSetEvent($image_id, $user, $score) { - $this->image_id = $image_id; - $this->user = $user; - $this->score = $score; - } -} - -class TextScore extends Extension { - var $theme; - - public function receive_event($event) { - if(is_null($this->theme)) $this->theme = get_theme_object("text_score", "TextScoreTheme"); - - if(is_a($event, 'InitExtEvent')) { - global $config; - if($config->get_int("ext_text_score_version", 0) < 1) { - $this->install(); - } - $config->set_default_bool("text_score_anon", true); - } - - if(is_a($event, 'ImageInfoBoxBuildingEvent')) { - global $user; - global $config; - if(!$user->is_anonymous() || $config->get_bool("text_score_anon")) { - $event->add_part($this->theme->get_scorer_html($event->image)); - } - } - - if(is_a($event, 'ImageInfoSetEvent')) { - global $user; - $i_score = int_escape($_POST['text_score__score']); - - if($i_score >= -2 || $i_score <= 2) { - send_event(new TextScoreSetEvent($event->image_id, $user, $i_score)); - } - } - - if(is_a($event, 'TextScoreSetEvent')) { - if(!$event->user->is_anonymous() || $config->get_bool("text_score_anon")) { - $this->add_vote($event->image_id, $event->user->id, $event->score); - } - } - - if(is_a($event, 'ImageDeletionEvent')) { - global $database; - $database->execute("DELETE FROM text_score_votes WHERE image_id=?", array($event->image->id)); - } - - if(is_a($event, 'SetupBuildingEvent')) { - $sb = new SetupBlock("Text Score"); - $sb->add_bool_option("text_score_anon", "Allow anonymous votes: "); - $event->panel->add_block($sb); - } - - if(is_a($event, 'ParseLinkTemplateEvent')) { - $event->replace('$text_score', $this->theme->score_to_name($event->image->text_score)); - } - } - - private function install() { - global $database; - global $config; - - if($config->get_int("ext_text_score_version") < 1) { - $database->Execute("ALTER TABLE images ADD COLUMN text_score INTEGER NOT NULL DEFAULT 0"); - $database->Execute("CREATE INDEX images__text_score ON images(text_score)"); - $database->Execute(" - CREATE TABLE text_score_votes ( - image_id INTEGER NOT NULL, - user_id INTEGER NOT NULL, - score INTEGER NOT NULL, - UNIQUE(image_id, user_id), - INDEX(image_id) - ) - "); - $config->set_int("ext_text_score_version", 1); - } - } - - private function add_vote($image_id, $user_id, $score) { - global $database; - // TODO: update if already voted - $database->Execute( - "REPLACE INTO text_score_votes(image_id, user_id, score) VALUES(?, ?, ?)", - array($image_id, $user_id, $score)); - $database->Execute( - "UPDATE images SET text_score=(SELECT AVG(score) FROM text_score_votes WHERE image_id=?) WHERE id=?", - array($image_id, $image_id)); - } -} -add_event_listener(new TextScore()); -?> diff --git a/contrib/text_score/theme.php b/contrib/text_score/theme.php deleted file mode 100644 index 5e61d3a2..00000000 --- a/contrib/text_score/theme.php +++ /dev/null @@ -1,33 +0,0 @@ -id); - - $s_score = $this->score_to_name($image->text_score); - $html = " - Current score is \"$s_score\" -
- - - - - - - "; - return $html; - } - - public function score_to_name($score) { - $words = array(); - $words[-2] = "Delete"; - $words[-1] = "Bad"; - $words[ 0] = "Ok"; - $words[ 1] = "Good"; - $words[ 2] = "Favourite"; - $s_score = $words[$score]; - return $s_score; - } -} - -?> diff --git a/ext/tag_edit/theme.php b/ext/tag_edit/theme.php index 1725048d..2e32c426 100644 --- a/ext/tag_edit/theme.php +++ b/ext/tag_edit/theme.php @@ -34,10 +34,8 @@ class TagEditTheme extends Themelet { } $html .= " - $source_edit -
Tags
"; } diff --git a/ext/view/theme.php b/ext/view/theme.php index 3b657b99..53cbe9bb 100644 --- a/ext/view/theme.php +++ b/ext/view/theme.php @@ -93,12 +93,14 @@ class ViewTheme extends Themelet {
+ "; foreach($editor_parts as $part) { $html .= $part; } $html .= " -
+ +

diff --git a/themes/default/style.css b/themes/default/style.css index 24acd579..329c3cac 100644 --- a/themes/default/style.css +++ b/themes/default/style.css @@ -43,7 +43,9 @@ TD { background: #DDD; } #body SELECT {width: 150px;} -TD>INPUT {width: 100%;} +TD>INPUT[type="submit"] {width: 100%;} +TD>INPUT[type="text"] {width: 100%;} +TD>INPUT[type="password"] {width: 100%;} TD>SELECT {width: 100%;} #footer {