+\r
+/**\r
+ * listplug_input_yesno()\r
+ *\r
+ * @param string $name name of input element with radio type attribute\r
+ * @param string $checkedval value which should be checked\r
+ * @param integer $tabindex tabindex number\r
+ * @param string $value1 value of radio 1\r
+ * @param string $value2 value of radio 2\r
+ * @param string $yesval label for yes\r
+ * @param string $noval label for no\r
+ * @param boolean $isAdmin super admin or not\r
+ * @param string $template_name name of template\r
+ * @param boolean $showlist used in showlist or not\r
+ * @return string marked-up string\r
+ */\r
+function listplug_input_yesno($name, $checkedval, $tabindex = 0,\r
+ $value1 = 1, $value2 = 0, $yesval = _YES, $noval = _NO,\r
+ $isAdmin = 0, $template_name = '', $showlist = FALSE)\r
+{\r
+ global $manager;\r
+ \r
+ $templates = array();\r
+ if ( $template_name )\r
+ {\r
+ $templates =& $manager->getTemplate($template_name);\r
+ }\r
+ \r
+ if ( $name == 'admin' )\r
+ {\r
+ if ( !array_key_exists('INPUTYESNO_TEMPLATE_ADMIN', $templates) || empty($templates['INPUTYESNO_TEMPLATE_ADMIN']) )\r
+ {\r
+ $template = "<input type=\"radio\" id=\"<%yesid%>\" name=\"<%name%>\" value=\"<%yesval%>\" <%yescheckedval%> onclick=\"selectCanLogin(true);\" />\n"\r
+ . "<label for=\"<%yesid%>\"><%yesvaltext%></label>\n"\r
+ . "<input type=\"radio\" id=\"<%noid%>\" name=\"<%name%>\" value=\"<%noval%>\" <%nocheckedval%> <%disabled%> onclick=\"selectCanLogin(false);\" />\n"\r
+ . "<label for=\"<%noid%>\"><%novaltext%></label>\n";\r
+ }\r
+ else\r
+ {\r
+ $template = $templates['INPUTYESNO_TEMPLATE_ADMIN'];\r
+ }\r
+ }\r
+ else\r
+ {\r
+ if ( array_key_exists('INPUTYESNO_TEMPLATE_NORMAL', $templates) && !empty($templates['INPUTYESNO_TEMPLATE_NORMAL']) )\r
+ {\r
+ $template = $templates['INPUTYESNO_TEMPLATE_NORMAL'];\r
+ }\r
+ else if ( $showlist && array_key_exists('SHOWLIST_LISTPLUG_TABLE_PLGOPT_OYESNO', $templates) && !empty($templates['SHOWLIST_LISTPLUG_TABLE_PLGOPT_OYESNO']) )\r
+ {\r
+ $template = $templates['SHOWLIST_LISTPLUG_TABLE_PLGOPT_OYESNO'];\r
+ }\r
+ else\r
+ {\r
+ $template = "<input type=\"radio\" id=\"<%yesid%>\" name=\"<%name%>\" value=\"<%yesval%>\" <%yescheckedval%> />\n"\r
+ . "<label for=\"<%yesid%>\"><%yesvaltext%></label>\n"\r
+ . "<input type=\"radio\" id=\"<%noid%>\" name=\"<%name%>\" value=\"<%noval%>\" <%nocheckedval%> <%disabled%> />\n"\r
+ . "<label for=\"<%noid%>\"><%novaltext%></label>\n";\r
+ }\r
+ }\r
+ \r
+ $id = preg_replace('#[|]#', '-', $name);\r
+ $id1 = $id . $value1;\r
+ $id2 = $id . $value2;\r
+ $dat = array(\r
+ 'name' => Entity::hsc($name),\r
+ 'yesval' => Entity::hsc($value1),\r
+ 'noval' => Entity::hsc($value2),\r
+ 'yesid' => Entity::hsc($id1),\r
+ 'noid' => Entity::hsc($id2),\r
+ 'yesvaltext' => $yesval,\r
+ 'novaltext' => $noval,\r
+ 'yescheckedval' => ($checkedval == $value1) ? 'checked="checked" tabindex="' . $tabindex . '"': '',\r
+ 'nocheckedval' => ($checkedval != $value1) ? 'checked="checked" tabindex="' . $tabindex . '"': '',\r
+ 'disabled' => ($isAdmin && $name == 'canlogin') ? ' disabled="disabled"' : '',\r
+ );\r
+ \r
+ return Template::fill($template, $dat);\r
+}\r
+\r
+/**\r
+ * listplug_batchlist()\r
+ * \r
+ * @param string $attr item/member/team/category/comment\r
+ * @param resource $query SQL resorce\r
+ * @param string $type type for showlist()\r
+ * @param array $vars array for variables\r
+ */\r
+function listplug_batchlist($attr, $query, $type, $vars, $template_name)\r
+{\r
+ global $manager;\r
+ \r
+ /* HEAD */\r
+ $content = "<form method=\"post\" action=\"index.php\">\n";\r
+ \r
+ /* BODY */\r
+ $content .= showlist($query, $type, $vars, $template_name);\r
+ \r
+ /* FOOT */\r
+ switch ( $attr )\r
+ {\r
+ case 'item':\r
+ $options = array(\r
+ 'delete' => _BATCH_ITEM_DELETE,\r
+ 'move' => _BATCH_ITEM_MOVE\r
+ );\r
+ break;\r
+ case 'member':\r
+ $options = array(\r
+ 'delete' => _BATCH_MEMBER_DELETE,\r
+ 'setadmin' => _BATCH_MEMBER_SET_ADM,\r
+ 'unsetadmin' => _BATCH_MEMBER_UNSET_ADM\r
+ );\r
+ break;\r
+ case 'team':\r
+ $options = array(\r
+ 'delete' => _BATCH_TEAM_DELETE,\r
+ 'setadmin' => _BATCH_TEAM_SET_ADM,\r
+ 'unsetadmin' => _BATCH_TEAM_UNSET_ADM,\r
+ );\r
+ break;\r
+ case 'category':\r
+ $options = array(\r
+ 'delete' => _BATCH_CAT_DELETE,\r
+ 'move' => _BATCH_CAT_MOVE,\r
+ );\r
+ break;\r
+ case 'comment':\r
+ $options = array(\r
+ 'delete' => _BATCH_COMMENT_DELETE,\r
+ );\r
+ break;\r
+ default:\r
+ $options = array();\r
+ break;\r
+ }\r
+ \r
+ $content .= "<p class=\"batchoperations\">\n"\r
+ . _BATCH_WITH_SEL\r
+ . "<select name=\"batchaction\">\n";\r
+ \r
+ foreach ( $options as $option => $label )\r
+ {\r
+ $content .= "<option value=\"{$option}\">{$label}</option>\n";\r
+ }\r
+ $content .= "</select>\n";\r
+ \r
+ if ( $attr == 'team' )\r
+ {\r
+ $content .= '<input type="hidden" name="blogid" value="' . intRequestVar('blogid') . '" />';\r
+ }\r
+ else if ( $attr == 'comment' )\r
+ {\r
+ $content .= '<input type="hidden" name="itemid" value="' . intRequestVar('itemid') . '" />';\r
+ }\r
+ \r
+ $content .= '<input type="submit" value="' . _BATCH_EXEC . '" />'\r
+ . "("\r
+ . "<a href=\"\" onclick=\"if( event && event.preventDefault ) event.preventDefault(); return batchSelectAll(1); \">" . _BATCH_SELECTALL . "</a>"\r
+ . " - "\r
+ . "<a href=\"\" onclick=\"if( event && event.preventDefault ) event.preventDefault(); return batchSelectAll(0); \">" . _BATCH_DESELECTALL . "</a>"\r
+ . ")\n"\r
+ . "<input type=\"hidden\" name=\"action\" value=\"batch{$attr}\" />\n"\r
+ . '<input type="hidden" name="ticket" value="' . Entity::hsc($manager->getNewTicket()) . '" />' . "\n"\r
+ . "</p>\n"\r
+ . "</form>\n";\r
+ \r
+ return $content;\r
+}\r
+\r
+/**\r
+ * listplug_navlist()\r
+ * \r
+ * @param string $attr item/member/team/category/comment\r
+ * @param resource $query SQL resorce\r
+ * @param string $type type for showlist()\r
+ * @param array $vars array for variables\r
+ * @param string $template_name name of template\r
+ * @return string contents\r
+ */\r
+function listplug_navlist($attribute, $query, $type, $vars, $template_name)\r
+{\r
+ global $CONF;\r
+ \r
+ $prev = $vars['start'] - $vars['amount'];\r
+ if ( $prev < $vars['minamount'] )\r
+ {\r
+ $prev = $vars['minamount'];\r
+ }\r
+ \r
+ $next = $vars['start'] + $vars['amount'];\r
+ \r
+ $navi = "\n";\r
+ $navi .= "<table frame=\"box\" rules=\"all\" sumamry=\"navigation actions\" class=\"navigation\">\n"\r
+ . "<tr>\n";\r
+ $navi .= "<td>\n"\r
+ . "<form method=\"post\" action=\"{$CONF['AdminURL']}\">\n"\r
+ . "<input type=\"hidden\" name=\"start\" value=\"{$prev}\" />\n"\r
+ . "<button type=\"submit\" name=\"action\" value=\"{$vars['action']}\">< < " . _LISTS_PREV . "</button>\n"\r
+ . "<input type=\"hidden\" name=\"blogid\" value=\"{$vars['blogid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"itemid\" value=\"{$vars['itemid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"search\" value=\"{$vars['search']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"amount\" value=\"{$vars['amount']}\" />\n"\r
+ . "</form>\n"\r
+ . "</td>\n";\r
+ $navi .= "<td>\n"\r
+ . "<form method=\"post\" action=\"{$CONF['AdminURL']}\">\n"\r
+ . "<input type=\"text\" name=\"amount\" size=\"3\" value=\"{$vars['amount']}\" />\n"\r
+ . _LISTS_PERPAGE\r
+ . "<input type=\"hidden\" name=\"start\" value=\"0\" />\n"\r
+ . "<button type=\"submit\" name=\"action\" value=\"{$vars['action']}\">> " . _LISTS_CHANGE . "</button>\n"\r
+ . "<input type=\"hidden\" name=\"blogid\" value=\"{$vars['blogid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"itemid\" value=\"{$vars['itemid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"search\" value=\"{$vars['search']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"amount\" value=\"{$vars['amount']}\" />\n"\r
+ . "</form>\n"\r
+ . "</td>\n";\r
+ $navi .= "<td>\n"\r
+ . "<form method=\"post\" action=\"{$CONF['AdminURL']}\">\n"\r
+ . "<input type=\"text\" name=\"search\" value=\"{$vars['search']}\" size=\"7\" />\n"\r
+ . "<input type=\"hidden\" name=\"start\" value=\"0\" />\n"\r
+ . "<button type=\"submit\" name=\"action\" value=\"{$vars['action']}\">> " . _LISTS_SEARCH . "</button>\n"\r
+ . "<input type=\"hidden\" name=\"blogid\" value=\"{$vars['blogid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"itemid\" value=\"{$vars['itemid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"search\" value=\"{$vars['search']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"amount\" value=\"{$vars['amount']}\" />\n"\r
+ . "</form>\n"\r
+ . "</td>\n";\r
+ $navi .= "<td>\n"\r
+ . "<form method=\"post\" action=\"{$CONF['AdminURL']}\">\n"\r
+ . "<input type=\"hidden\" name=\"start\" value=\"{$next}\" />\n"\r
+ . "<button type=\"submit\" name=\"action\" value=\"{$vars['action']}\">" . _LISTS_NEXT . "> > </button>\n"\r
+ . "<input type=\"hidden\" name=\"blogid\" value=\"{$vars['blogid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"itemid\" value=\"{$vars['itemid']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"search\" value=\"{$vars['search']}\" />\n"\r
+ . "<input type=\"hidden\" name=\"amount\" value=\"{$vars['amount']}\" />\n"\r
+ . "</form>\n"\r
+ . "</td>\n";\r
+ $navi .= "</tr>\n"\r
+ . "</table>\n";\r
+ \r
+ /* HEAD */\r
+ $template = $navi;\r
+ \r
+ /* BODY */\r
+ $template .= listplug_batchlist($attribute, $query, $type, $vars, $template_name);\r
+ \r
+ /* FOOT */\r
+ $template .= $navi;\r
+ \r
+ return $template;\r
+}\r