function no_group_test() { $form = new Forge("test/controller", "", "post", array("id" => "g-test-group-form")); $form->input("title")->label(t("Title")); $form->textarea("description")->label(t("Text Area")); $form->submit("")->value(t("Submit")); $csrf = access::csrf_token(); $expected = "<form action=\"http://./index.php/test/controller\" method=\"post\" " . "id=\"g-test-group-form\">\n" . "<input type=\"hidden\" name=\"csrf\" value=\"{$csrf}\" />" . " <ul>\n" . " <li>\n" . " <label for=\"title\" >Title</label>\n" . " <input type=\"text\" name=\"title\" value=\"\" " . "class=\"textbox\" />\n" . " </li>\n" . " <li>\n" . " <label for=\"description\" >Text Area</label>\n" . " <textarea name=\"description\" rows=\"\" cols=\"\" " . "class=\"textarea\" ></textarea>\n" . " </li>\n" . " <li>\n" . " <input type=\"submit\" value=\"Submit\" class=\"submit\" />\n" . " </li>\n" . " </ul>\n" . "</form>"; $this->assert_same($expected, (string) $form); }
static function get_tag_form($itemids) { $tagPane = new Forge("organize/__FUNCTION__", "", "post", array("id" => "gEditTags", "ref" => "edit_tags")); $tagPane->hidden("item")->value(implode("|", $itemids)); $item_count = count($itemids); $ids = implode(", ", $itemids); $tags = Database::instance()->query("SELECT t.name, COUNT(it.item_id) as count\n FROM {items_tags} it, {tags} t\n WHERE it.tag_id = t.id\n AND it.item_id in({$ids})\n GROUP BY it.tag_id\n ORDER BY t.name ASC"); $taglist = array(); foreach ($tags as $tag) { $taglist[] = $tag->name . ($item_count > $tag->count ? "*" : ""); } $taglist = implode("; ", $taglist); $tagPane->textarea("tags")->label(t("Tags"))->value($taglist); return $tagPane; }
static function get_tag_form($itemids) { $tagPane = new Forge("organize/__FUNCTION__", "", "post", array("id" => "gEditTags", "ref" => "edit_tags")); $tagPane->hidden("item")->value(implode("|", $itemids)); $item_count = count($itemids); $ids = implode(", ", $itemids); // Lame stopgap security check. This code is going to get rewritten anyway. foreach ($itemids as $id) { $item = ORM::factory("item", $id); access::required("view", $item); access::required("edit", $item); } $tags = Database::instance()->query("SELECT t.name, COUNT(it.item_id) as count\n FROM {items_tags} it, {tags} t\n WHERE it.tag_id = t.id\n AND it.item_id in({$ids})\n GROUP BY it.tag_id\n ORDER BY t.name ASC"); $taglist = array(); foreach ($tags as $tag) { $taglist[] = $tag->name . ($item_count > $tag->count ? "*" : ""); } $taglist = implode("; ", $taglist); $tagPane->textarea("tags")->label(t("Tags"))->value($taglist); return $tagPane; }