Comparing revisions for PageAdminAction
- [20256] 2008-09-21 13:54:22 by DarTar (unregistered user) [rv]
- [20255] 2008-09-21 05:36:05 by QzqLe4 (unregistered user)
Additions:
=====Page Administration Action=====
This is the development page for the Page Administration action. The Page Administration module has been committed to the [[http://wush.net/websvn/wikka/listing.php?repname=wikka&path=%2Fbranches%2F1.1.6.4%2F 1.1.6.4 branch]] and will be available with the [[http://blog.wikkawiki.org/2007/11/23/pre-release-announcement-for-securityantispam-release-1164/ 1.1.6.4 release]]. **Documentation** http://docs.wikkawiki.org/PageAdministration
This action, inspired by the UserAdmin action, is meant to allow Wikka Administrators to manage pages and perform several maintenance operations.
It displays the standard PageIndex to non-admins.
>>**See also:**
~-AdminModules
~-RefactorWiki
~-MovePages
~-PageAdminPrune
~-Are you an administrator of this site ? --- Give it a [[PageAdminTest try]]
>><<**Table of Contents:**
~-""<a href="PageAdminAction#hn_Current_version">Current version</a>""
~-""<a href="PageAdminAction#hn_To_do">To do</a>""
~-""<a href="PageAdminAction#hn_The_code">The code</a>""
~-""<a href="PageAdminAction#hn_Styling_options">Styling options</a>""<<
::c::
----
== Sample output ==
=====Page Administration=====
""
<form action="#" method="post" id="form_page_admin_panel">
<fieldset><legend>Filter view:</legend>
<label for="q">Search page:</label> <input type ="text" id="q" name="q" title="Enter a search string" size="20" maxlength="50" value=" "/> <input type="submit" value="Submit" /><br />
<label for="l">Show</label>
<select name="l" id="l" title="Select records-per-page limit">
<option value="5">5</option>
<option value="10">10</option>
<option value="20" selected="selected">20</option>
<option value="30">30</option>
<option value="40">40</option>
<option value="50">50</option>
<option value="100">100</option>
<option value="200">200</option>
<option value="300">300</option>
<option value="400">400</option>
<option value="500">500</option>
<option value="912">912</option>
</select> <label for="l">records per page</label> <input type="submit" value="Apply" /><br />
Records (912): 1-20 | <a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=desc&s=20&q=" title="Show records from 21 to 40">21-40</a>
<br />
(Sorted by:<em>time, desc</em>)
</fieldset></form>
<form action="http://wikka.jsnx.com/PageAdminTest" id="form_b5eda0a745">
<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number c1" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number c2" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number c3" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number c4" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number c5" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10344" title="Select UserMap"/></td>
<td><a href="http://wikka.jsnx.com/UserMap">UserMap</a></td>
<td><a href="http://wikka.jsnx.com/NilsLindenberg" title=" ">NilsLindenberg</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 13:28:40</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserMap/revisions" title="Display revisions for UserMap (28)">28</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserMap/backlinks" title="Display pages linking to UserMap (5)">5</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserMap/referrers" title="Display external sites linking to UserMap (121)">121</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserMap/edit" title="Edit UserMap">edit</a> :: <a href="http://wikka.jsnx.com/UserMap/delete" title="Delete UserMap">delete</a> :: <a href="http://wikka.jsnx.com/UserMap/clone" title="Clone UserMap">clone</a> :: <a href="http://wikka.jsnx.com/UserMap/acls" title="Change Access Control List for UserMap">acl</a> :: <a href="http://wikka.jsnx.com/UserMap/info" title="Display information and statistics for UserMap">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10343" title="Select DennyShimkoski"/></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title="DennyShimkoski">DennyShimkos…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 13:21:31</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/DennyShimkoski/revisions" title="Display revisions for DennyShimkoski (11)">11</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/DennyShimkoski?show_comments=1#comments" title="Display comments for DennyShimkoski (2)">2</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/DennyShimkoski/backlinks" title="Display pages linking to DennyShimkoski (7)">7</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/DennyShimkoski/edit" title="Edit DennyShimkoski">edit</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/delete" title="Delete DennyShimkoski">delete</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/clone" title="Clone DennyShimkoski">clone</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/acls" title="Change Access Control List for DennyShimkoski">acl</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/info" title="Display information and statistics for DennyShimkoski">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10341" title="Select TestSkin"/></td>
<td><a href="http://wikka.jsnx.com/TestSkin">TestSkin</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[announcing latest addition]">2005-08-01 13:04:34</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TestSkin/revisions" title="Display revisions for TestSkin (34)">34</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/TestSkin?show_comments=1#comments" title="Display comments for TestSkin (21)">21</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/TestSkin/backlinks" title="Display pages linking to TestSkin (31)">31</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/TestSkin/referrers" title="Display external sites linking to TestSkin (257)">257</a></td>
<td class="center "><a href="http://wikka.jsnx.com/TestSkin/edit" title="Edit TestSkin">edit</a> :: <a href="http://wikka.jsnx.com/TestSkin/delete" title="Delete TestSkin">delete</a> :: <a href="http://wikka.jsnx.com/TestSkin/clone" title="Clone TestSkin">clone</a> :: <a href="http://wikka.jsnx.com/TestSkin/acls" title="Change Access Control List for TestSkin">acl</a> :: <a href="http://wikka.jsnx.com/TestSkin/info" title="Display information and statistics for TestSkin">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10339" title="Select HypeXR"/></td>
<td><a href="http://wikka.jsnx.com/HypeXR">HypeXR</a></td>
<td><a href="http://wikka.jsnx.com/HypeXR" title=" ">HypeXR</a></td>
<td><a href="http://wikka.jsnx.com/HypeXR" title=" ">HypeXR</a></td>
<td class="time" title="[No edit note]">2005-08-01 09:09:40</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/HypeXR/revisions" title="Display revisions for HypeXR (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4">0</td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/HypeXR/edit" title="Edit HypeXR">edit</a> :: <a href="http://wikka.jsnx.com/HypeXR/delete" title="Delete HypeXR">delete</a> :: <a href="http://wikka.jsnx.com/HypeXR/clone" title="Clone HypeXR">clone</a> :: <a href="http://wikka.jsnx.com/HypeXR/acls" title="Change Access Control List for HypeXR">acl</a> :: <a href="http://wikka.jsnx.com/HypeXR/info" title="Display information and statistics for HypeXR">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10337" title="Select CustomCSS"/></td>
<td><a href="http://wikka.jsnx.com/CustomCSS">CustomCSS</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 05:39:11</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/CustomCSS/revisions" title="Display revisions for CustomCSS (3)">3</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/CustomCSS/backlinks" title="Display pages linking to CustomCSS (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/CustomCSS/edit" title="Edit CustomCSS">edit</a> :: <a href="http://wikka.jsnx.com/CustomCSS/delete" title="Delete CustomCSS">delete</a> :: <a href="http://wikka.jsnx.com/CustomCSS/clone" title="Clone CustomCSS">clone</a> :: <a href="http://wikka.jsnx.com/CustomCSS/acls" title="Change Access Control List for CustomCSS">acl</a> :: <a href="http://wikka.jsnx.com/CustomCSS/info" title="Display information and statistics for CustomCSS">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10335" title="Select OnPageLoadWithGlobalActions"/></td>
<td><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions" title="OnPageLoadWithGlobalActions">OnPageLoadWi…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 05:32:33</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/revisions" title="Display revisions for OnPageLoadWithGlobalActions (5)">5</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/backlinks" title="Display pages linking to OnPageLoadWithGlobalActions (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/edit" title="Edit OnPageLoadWithGlobalActions">edit</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/delete" title="Delete OnPageLoadWithGlobalActions">delete</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/clone" title="Clone OnPageLoadWithGlobalActions">clone</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/acls" title="Change Access Control List for OnPageLoadWithGlobalActions">acl</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/info" title="Display information and statistics for OnPageLoadWithGlobalActions">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10334" title="Select UncamelAction"/></td>
<td><a href="http://wikka.jsnx.com/UncamelAction" title="UncamelAction">UncamelActio…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 05:30:38</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UncamelAction/revisions" title="Display revisions for UncamelAction (4)">4</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/UncamelAction/backlinks" title="Display pages linking to UncamelAction (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/UncamelAction/edit" title="Edit UncamelAction">edit</a> :: <a href="http://wikka.jsnx.com/UncamelAction/delete" title="Delete UncamelAction">delete</a> :: <a href="http://wikka.jsnx.com/UncamelAction/clone" title="Clone UncamelAction">clone</a> :: <a href="http://wikka.jsnx.com/UncamelAction/acls" title="Change Access Control List for UncamelAction">acl</a> :: <a href="http://wikka.jsnx.com/UncamelAction/info" title="Display information and statistics for UncamelAction">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10321" title="Select ChristianBarthelemy"/></td>
<td><a href="http://wikka.jsnx.com/ChristianBarthelemy" title="ChristianBarthelemy">ChristianBar…</a></td>
<td><a href="http://wikka.jsnx.com/ChristianBarthelemy" title=" ">ChristianBarthelemy</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[Added remark on workflows item]">2005-07-31 14:39:37</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/ChristianBarthelemy/revisions" title="Display revisions for ChristianBarthelemy (39)">39</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/ChristianBarthelemy?show_comments=1#comments" title="Display comments for ChristianBarthelemy (8)">8</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/ChristianBarthelemy/backlinks" title="Display pages linking to ChristianBarthelemy (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/ChristianBarthelemy/referrers" title="Display external sites linking to ChristianBarthelemy (49)">49</a></td>
<td class="center "><a href="http://wikka.jsnx.com/ChristianBarthelemy/edit" title="Edit ChristianBarthelemy">edit</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/delete" title="Delete ChristianBarthelemy">delete</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/clone" title="Clone ChristianBarthelemy">clone</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/acls" title="Change Access Control List for ChristianBarthelemy">acl</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/info" title="Display information and statistics for ChristianBarthelemy">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10320" title="Select WikkaSites"/></td>
<td><a href="http://wikka.jsnx.com/WikkaSites">WikkaSites</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding fresh sites]">2005-07-31 09:30:11</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/WikkaSites/revisions" title="Display revisions for WikkaSites (419)">419</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/WikkaSites?show_comments=1#comments" title="Display comments for WikkaSites (31)">31</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/WikkaSites/backlinks" title="Display pages linking to WikkaSites (17)">17</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/WikkaSites/referrers" title="Display external sites linking to WikkaSites (470)">470</a></td>
<td class="center "><a href="http://wikka.jsnx.com/WikkaSites/edit" title="Edit WikkaSites">edit</a> :: <a href="http://wikka.jsnx.com/WikkaSites/delete" title="Delete WikkaSites">delete</a> :: <a href="http://wikka.jsnx.com/WikkaSites/clone" title="Clone WikkaSites">clone</a> :: <a href="http://wikka.jsnx.com/WikkaSites/acls" title="Change Access Control List for WikkaSites">acl</a> :: <a href="http://wikka.jsnx.com/WikkaSites/info" title="Display information and statistics for WikkaSites">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10316" title="Select HomePage"/></td>
<td><a href="http://wikka.jsnx.com/HomePage">HomePage</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[updating languages]">2005-07-31 09:13:49</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/HomePage/revisions" title="Display revisions for HomePage (183)">183</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/HomePage?show_comments=1#comments" title="Display comments for HomePage (96)">96</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/HomePage/backlinks" title="Display pages linking to HomePage (49)">49</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/HomePage/referrers" title="Display external sites linking to HomePage (33437)">33437</a></td>
<td class="center "><a href="http://wikka.jsnx.com/HomePage/edit" title="Edit HomePage">edit</a> :: <a href="http://wikka.jsnx.com/HomePage/delete" title="Delete HomePage">delete</a> :: <a href="http://wikka.jsnx.com/HomePage/clone" title="Clone HomePage">clone</a> :: <a href="http://wikka.jsnx.com/HomePage/acls" title="Change Access Control List for HomePage">acl</a> :: <a href="http://wikka.jsnx.com/HomePage/info" title="Display information and statistics for HomePage">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10313" title="Select InfoHandler"/></td>
<td><a href="http://wikka.jsnx.com/InfoHandler">InfoHandler</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[small code change]">2005-07-31 08:28:43</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/InfoHandler/revisions" title="Display revisions for InfoHandler (20)">20</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/InfoHandler/backlinks" title="Display pages linking to InfoHandler (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/InfoHandler/edit" title="Edit InfoHandler">edit</a> :: <a href="http://wikka.jsnx.com/InfoHandler/delete" title="Delete InfoHandler">delete</a> :: <a href="http://wikka.jsnx.com/InfoHandler/clone" title="Clone InfoHandler">clone</a> :: <a href="http://wikka.jsnx.com/InfoHandler/acls" title="Change Access Control List for InfoHandler">acl</a> :: <a href="http://wikka.jsnx.com/InfoHandler/info" title="Display information and statistics for InfoHandler">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10312" title="Select DennysCalendarExperiments"/></td>
<td><a href="http://wikka.jsnx.com/DennysCalendarExperiments" title="DennysCalendarExperiments">DennysCalend…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[Fixed a bug in the code]">2005-07-31 06:52:55</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/DennysCalendarExperiments/revisions" title="Display revisions for DennysCalendarExperiments (5)">5</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/DennysCalendarExperiments/backlinks" title="Display pages linking to DennysCalendarExperiments (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/DennysCalendarExperiments/edit" title="Edit DennysCalendarExperiments">edit</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/delete" title="Delete DennysCalendarExperiments">delete</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/clone" title="Clone DennysCalendarExperiments">clone</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/acls" title="Change Access Control List for DennysCalendarExperiments">acl</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/info" title="Display information and statistics for DennysCalendarExperiments">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10310" title="Select JwCalendarWithPageCreation"/></td>
<td><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation" title="JwCalendarWithPageCreation">JwCalendarWi…</a></td>
<td><a href="http://wikka.jsnx.com/ChristianBarthelemy" title=" ">ChristianBarthelemy</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-07-31 06:43:47</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/revisions" title="Display revisions for JwCalendarWithPageCreation (8)">8</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation?show_comments=1#comments" title="Display comments for JwCalendarWithPageCreation (6)">6</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/backlinks" title="Display pages linking to JwCalendarWithPageCreation (3)">3</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/referrers" title="Display external sites linking to JwCalendarWithPageCreation (52)">52</a></td>
<td class="center "><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/edit" title="Edit JwCalendarWithPageCreation">edit</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/delete" title="Delete JwCalendarWithPageCreation">delete</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/clone" title="Clone JwCalendarWithPageCreation">clone</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/acls" title="Change Access Control List for JwCalendarWithPageCreation">acl</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/info" title="Display information and statistics for JwCalendarWithPageCreation">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10304" title="Select SandBox"/></td>
<td><a href="http://wikka.jsnx.com/SandBox">SandBox</a></td>
<td>(Public)</td>
<td>PaulWittenbraker</td>
<td class="time" title="[No edit note]">2005-07-31 03:37:29</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/SandBox/revisions" title="Display revisions for SandBox (1116)">1116</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/SandBox?show_comments=1#comments" title="Display comments for SandBox (13)">13</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/SandBox/backlinks" title="Display pages linking to SandBox (34)">34</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/SandBox/referrers" title="Display external sites linking to SandBox (108)">108</a></td>
<td class="center "><a href="http://wikka.jsnx.com/SandBox/edit" title="Edit SandBox">edit</a> :: <a href="http://wikka.jsnx.com/SandBox/delete" title="Delete SandBox">delete</a> :: <a href="http://wikka.jsnx.com/SandBox/clone" title="Clone SandBox">clone</a> :: <a href="http://wikka.jsnx.com/SandBox/acls" title="Change Access Control List for SandBox">acl</a> :: <a href="http://wikka.jsnx.com/SandBox/info" title="Display information and statistics for SandBox">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10302" title="Select TonExtraWiki"/></td>
<td><a href="http://wikka.jsnx.com/TonExtraWiki">TonExtraWiki</a></td>
<td>PaulWittenbraker</td>
<td>PaulWittenbraker</td>
<td class="time" title="[No edit note]">2005-07-31 03:10:51</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TonExtraWiki/revisions" title="Display revisions for TonExtraWiki (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TonExtraWiki/backlinks" title="Display pages linking to TonExtraWiki (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TonExtraWiki/edit" title="Edit TonExtraWiki">edit</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/delete" title="Delete TonExtraWiki">delete</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/clone" title="Clone TonExtraWiki">clone</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/acls" title="Change Access Control List for TonExtraWiki">acl</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/info" title="Display information and statistics for TonExtraWiki">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10301" title="Select CodeContributions"/></td>
<td><a href="http://wikka.jsnx.com/CodeContributions" title="CodeContributions">CodeContribu…</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[Added link to DennysAttachmentsActionInfo]">2005-07-31 02:23:42</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/CodeContributions/revisions" title="Display revisions for CodeContributions (124)">124</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/CodeContributions?show_comments=1#comments" title="Display comments for CodeContributions (4)">4</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/CodeContributions/backlinks" title="Display pages linking to CodeContributions (28)">28</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/CodeContributions/referrers" title="Display external sites linking to CodeContributions (144)">144</a></td>
<td class="center "><a href="http://wikka.jsnx.com/CodeContributions/edit" title="Edit CodeContributions">edit</a> :: <a href="http://wikka.jsnx.com/CodeContributions/delete" title="Delete CodeContributions">delete</a> :: <a href="http://wikka.jsnx.com/CodeContributions/clone" title="Clone CodeContributions">clone</a> :: <a href="http://wikka.jsnx.com/CodeContributions/acls" title="Change Access Control List for CodeContributions">acl</a> :: <a href="http://wikka.jsnx.com/CodeContributions/info" title="Display information and statistics for CodeContributions">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10298" title="Select DennysAttachmentsActionInfo"/></td>
<td><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo" title="DennysAttachmentsActionInfo">DennysAttach…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-07-31 01:24:04</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/revisions" title="Display revisions for DennysAttachmentsActionInfo (4)">4</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/backlinks" title="Display pages linking to DennysAttachmentsActionInfo (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/edit" title="Edit DennysAttachmentsActionInfo">edit</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/delete" title="Delete DennysAttachmentsActionInfo">delete</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/clone" title="Clone DennysAttachmentsActionInfo">clone</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/acls" title="Change Access Control List for DennysAttachmentsActionInfo">acl</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/info" title="Display information and statistics for DennysAttachmentsActionInfo">info</a></td>
</tr>
</tbody>
</table>
<fieldset><legend>Mass-action</legend>[<a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=desc&s=0&q=&selectall=1" title="Check all records">Check all</a> | <a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=desc&s=0&q=&selectall=0" title="Uncheck all records">Uncheck all</a>]<br /><label for="action" >With selected</label> <select title="Choose action to apply to selected records (DISABLED)" id="action" name="action"><option value=" " selected="selected">---</option><option value="massdelete">Delete all</option><option value="massclone">Clone all</option><option value="massrename">Rename all</option><option value="massacls">Change Access Control List</option></select> <input type="submit" value="Submit" /></fieldset></form>
""
----
=== Current version ===
Latest available version: **0.4**.
**Features:**
~-displays a pageable, sortable and searchable list of pages;
~-displays detailed and clickable page statistics (revisions, comments, backlinks, referrers)
~-generates links to different handlers with titles;
~-shortens long pagenames and hostnames;
~-shows last edit notes (if available);
~-adds 'claim' links to pages with no owner;
~-shows plain-text username in owner/lastauthor fields if user has no homepage;
~-supports a bunch of configurable options (including max. length of displayed pagename, max. length of hostname, symbol for truncated text).
**Bugfixes and modifications:**
~-added constant section;
~-added titles to different form elements;
~-added configurable hostname and pagename length limit;
~-fixed problem with search keyword not read by pager;
~-added submit buttons after menus;
~-fixed invalid markup resulting in green text on the whole page.
~-using getCount() to retrieve the various counts --JW
~-various changes to prevent NOTICEs --JW
~-removed accesskey attributes (cause more problems than they solve) --JW
~-various other minor tweaks --JW
~-added icons and UI strings;
~-added several configurable options, including styling options (see below);
=== To do===
~-Mass-operations (mass-page deletion (''done as of 1.1.6.4''), mass-page rename, mass-page ACLs etc.);
~~-I have included a first MassaclsAction as a preview/draft/beta, like you want --AndreasTengicki
~-Handlers: add rename handler;
~-Page statistics: add page hits;
~~& Can I advocate for a "Page Hide/Unhide" option here?....H instead of Y or N for most recent works well. In some communities, particularly where there might be legal/administrative follow-ups to what was posted, it is quite useful to be able to "keep" the contents of the page in the database, but make them inaccessible to the wiki users. --GmBowen
~~~& Mike, as you can see this interface does not add any specific handler or page feature which is not already supported by Wikka: it is just a //hub// for existing handlers (the multiple-page operations will require new handlers, though). So if you want to propose something like a 'hide/unhide' handler, I suggest you open a dedicated page. -- DarTar
~~~&To be more precise, this action //does// include two forthcoming features (rename handler, page hits) but only as //placeholders//. The development of each of these functionalities should be take place elsewhere, not on this page. -- DarTar
~~~~&There might as well be a placeholer for a future "hide" or "lock" handler then. :) We certainly need //something// like that - see comments.--JavaWoman.
===The code ===
Save the code below as ##actions/pageadmin.php## and use it as ##""{{pageadmin}}""##.
**Note:** The code has been adapted to take advantage of the ##[[WikkaCountingRecords getCount()]]## and ##[[FormatUserMethod FormatUser()]]## methods, which are required for the action to work.
%%(php;1)
<?php
/**
* Display a module for page management.
*
* This action allows admins to display information and perform operations
* on wiki pages. Pages can be sorted, searched, paged, filtered. Page-related
* statistics are given, displaying the number of comments, revisions, backlinks
* and referrers. Several handlers allow admins to perform specific operation on
* single pages. If the current user is not an administrator, the pageindex action
* is displayed instead.
*
* @package Actions
* @name PageAdmin
*
* @author {@link http://wikka.jsnx.com/DarTar Dario Taraborelli}
* @author {@link http://wikka.jsnx.com/JavaWoman JavaWoman} (using getCount(); minor tweaks)
* @version 0.4
* @since Wikka 1.1.X.X
*
* @input integer $colcolor optional: enables color for statistics columns
* 1: enables colored columns;
* 0: disables colored columns;
* default: 1;
* @input integer $rowcolor optional: enables alternate row colors
* 1: enables colored rows;
* 0: disables colored rows;
* default: 1;
*
* @output A list of pages available on the current server.
*
* @todo
* - mass-operations;
* - handlers: rename handler;
* - statistics: page hits;
* - full-text page search;
* - integrate with other admin modules.
*/
//utilities
/**
* Build an array of numbers consisting of 'ranges' with increasing step size in each 'range'.
*
* A list of numbers like this is useful for instance for a dropdown to choose
* a period expressed in number of days: a difference between 2 and 5 days may
* be significant while that between 92 and 95 may not be.
*
* @author {@link http://wikka.jsnx.com/JavaWoman JavaWoman}
* @copyright Copyright (c) 2005, Marjolein Katsma
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
* @version 1.0
*
* @param mixed $limits required: single integer or array of integers;
* defines the upper limits of the ranges as well as the next step size
* @param int $max required: upper limit for the whole list
* (will be included if smaller than the largest limit)
* @param int $firstinc optional: increment for the first range; default 1
* @return array resulting list of numbers
*/
function optionRanges($limits, $max, $firstinc = 1)
{
// initializations
if (is_int($limits)) $limits = array($limits);
if ($firstinc < 1) $firstinc = 1;
$opts = array();
$inc = $firstinc;
// first element is the first increment
$opts[] = $inc;
// each $limit is the upper limit of a 'range'
foreach ($limits as $limit)
{
for ($i = $inc + $inc; $i <= $limit && $i < $max; $i += $inc)
{
$opts[] = $i;
}
// we quit at $max, even if there are more $limit elements
if ($limit >= $max)
{
// add $max to the list; then break out of the loop
$opts[] = $max;
break;
}
// when $limit is reached, it becomes the new start and increment for the next 'range'
$inc = $limit;
}
return $opts;
}
// restrict access to admins
if ($this->IsAdmin($this->GetUser())) {
// -------------------------------------
// set default values as constants
define('DEFAULT_RECORDS_LIMIT', '20'); # number of records per page
define('DEFAULT_MIN_RECORDS_DISPLAY', '5'); # min number of records
define('DEFAULT_RECORDS_RANGE',serialize(array('10','50','100','500','1000'))); #range array for records pager
define('DEFAULT_SORT_FIELD', 'time'); # sort field
define('DEFAULT_SORT_ORDER', 'desc'); # sort order, ascendant or descendant
define('DEFAULT_START', '0'); # start record
define('DEFAULT_SEARCH', ''); # keyword to restrict page search
define('DEFAULT_TAG_LENGTH', '12'); # max. length of displayed pagename
define('DEFAULT_URL_LENGTH', '15'); # max. length of displayed user host
define('DEFAULT_TERMINATOR', '…'); # standard symbol replacing truncated text (ellipsis) JW 2005-07-19
define('ALTERNATE_ROW_COLOR', '1'); # switch alternate row color
define('STAT_COLUMN_COLOR', '1'); # switch color for statistics columns
// -------------------------------------
// User-interface: icons
define('HITS_ICON', 'images/icons/16x16/stock_about.png');
define('REVISIONS_ICON', 'images/icons/16x16/stock_book_open.png');
define('COMMENTS_ICON', 'images/icons/16x16/stock_help-agent.png');
define('BACKLINKS_ICON', 'images/icons/16x16/stock_link.png');
define('REFERRERS_ICON', 'images/icons/16x16/stock_internet.png');
// -------------------------------------
// User-interface: strings
define('PAGE_TITLE','Page Administration');
define('FORM_LEGEND','Filter view:');
define('FORM_SEARCH_STRING_LABEL','Search page:');
define('FORM_SEARCH_STRING_TITLE','Enter a search string');
define('FORM_SEARCH_SUBMIT','Submit');
define('FORM_PAGER_LABEL_BEFORE','Show');
define('FORM_PAGER_TITLE','Select records-per-page limit');
define('FORM_PAGER_LABEL_AFTER','records per page');
define('FORM_PAGER_SUBMIT','Apply');
define('FORM_PAGER_LINK','Show records from %d to %d');
define('FORM_RESULT_INFO','Records');
define('FORM_RESULT_SORTED_BY','Sorted by:');
define('TABLE_HEADING_PAGENAME','Page Name');
define('TABLE_HEADING_PAGENAME_TITLE','Sort by page name');
define('TABLE_HEADING_OWNER','Owner');
define('TABLE_HEADING_OWNER_TITLE','Sort by page owner');
define('TABLE_HEADING_LASTAUTHOR','Last Author');
define('TABLE_HEADING_LASTAUTHOR_TITLE','Sort by last author');
define('TABLE_HEADING_LASTEDIT','Last Edit');
define('TABLE_HEADING_LASTEDIT_TITLE','Sort by edit time');
define('TABLE_SUMMARY','List of pages on this server');
define('TABLE_HEADING_HITS_TITLE','Hits');
define('TABLE_HEADING_REVISIONS_TITLE','Sort by number of revisions (DEBUG ONLY)');
define('TABLE_HEADING_COMMENTS_TITLE','Comments');
define('TABLE_HEADING_BACKLINKS_TITLE','Backlinks');
define('TABLE_HEADING_REFERRERS_TITLE','Referrers');
define('TABLE_HEADING_HITS_ALT','Hits');
define('TABLE_HEADING_REVISIONS_ALT','Revisions');
define('TABLE_HEADING_COMMENTS_ALT','Comments');
define('TABLE_HEADING_BACKLINKS_ALT','Backlinks');
define('TABLE_HEADING_REFERRERS_ALT','Referrers');
define('TABLE_HEADING_ACTIONS','Actions');
define('ACTION_EDIT_LINK_TITLE','Edit %s');
define('ACTION_DELETE_LINK_TITLE','Delete %s');
define('ACTION_CLONE_LINK_TITLE','Clone %s');
define('ACTION_RENAME_LINK_TITLE','Rename %s (DISABLED)');
define('ACTION_ACL_LINK_TITLE','Change Access Control List for %s');
define('ACTION_INFO_LINK_TITLE','Display information and statistics for %s');
define('ACTION_EDIT_LINK','edit');
define('ACTION_DELETE_LINK','delete');
define('ACTION_CLONE_LINK','clone');
define('ACTION_RENAME_LINK','rename');
define('ACTION_ACL_LINK','acl');
define('ACTION_INFO_LINK','info');
define('TAKE_OWNERSHIP_LINK','Take ownership of');
define('NO_OWNER','(Nobody)');
define('TABLE_CELL_HITS_TITLE','Hits for %s (%d)');
define('TABLE_CELL_REVISIONS_TITLE','Display revisions for %s (%d)');
define('TABLE_CELL_COMMENTS_TITLE','Display comments for %s (%d)');
define('TABLE_CELL_BACKLINKS_TITLE','Display pages linking to %s (%d)');
define('TABLE_CELL_REFERRERS_TITLE','Display external sites linking to %s (%d)');
define('SELECT_RECORD_TITLE','Select %s');
define('NO_EDIT_NOTE','[No edit note]');
define('CHECK_ALL_TITLE','Check all records');
define('CHECK_ALL','Check all');
define('UNCHECK_ALL_TITLE','Uncheck all records');
define('UNCHECK_ALL','Uncheck all');
define('FORM_MASSACTION_LEGEND','Mass-action');
define('FORM_MASSACTION_LABEL','With selected');
define('FORM_MASSACTION_SELECT_TITLE','Choose action to apply to selected records (DISABLED)');
define('FORM_MASSACTION_OPT_DELETE','Delete all');
define('FORM_MASSACTION_OPT_CLONE','Clone all');
define('FORM_MASSACTION_OPT_RENAME','Rename all');
define('FORM_MASSACTION_OPT_ACL','Change Access Control List');
define('FORM_MASSACTION_SUBMIT','Submit');
define('ERROR_NO_MATCHES','Sorry, there are no pages matching "%s"');
// -------------------------------------
// Initialize variables
$r = 1; #initialize row counter
$r_color = ALTERNATE_ROW_COLOR; #get alternate row color option
$c_color = STAT_COLUMN_COLOR; #get column color option
// record dropdown
$page_limits = unserialize(DEFAULT_RECORDS_RANGE);
// pager
$prev = '';
$next = '';
//override defaults with action parameters
if (is_array($vars)) {
foreach ($vars as $param => $value){
switch ($param) {
case 'colcolor':
$c_color = (preg_match('/[01]/',$value))? $value : STAT_COLUMN_COLOR;
break;
case 'rowcolor':
$r_color = (preg_match('/[01]/',$value))? $value : ALTERNATE_ROW_COLOR;
break;
}
}
}
//perform mass-operations if required (forthcoming)
if (isset($_GET['action']))
{
if ($_GET['action'] == 'massdelete')
{
echo $this->Action('massdelete');
}
elseif ($_GET['action'] == 'massrename')
{
echo $this->Action('massrename');
}
elseif ($_GET['action'] == 'massacls')
{
echo $this->Action('massacls');
}
}
else
{
// process URL variables
# JW 2005-07-19 some modifications to avoid notices but these are still not actually secure
// number of records per page
if (isset($_POST['l']))
$l = $_POST['l'];
elseif (isset($_GET['l']))
$l = $_GET['l'];
else
$l = DEFAULT_RECORDS_LIMIT;
// sort field
$sort = (isset($_GET['sort'])) ? $_GET['sort'] : DEFAULT_SORT_FIELD;
// sort order
$d = (isset($_GET['d'])) ? $_GET['d'] : DEFAULT_SORT_ORDER;
// start record
$s = (isset($_GET['s'])) ? $_GET['s'] : DEFAULT_START;
// search string
if (isset($_POST['q']))
$q = $_POST['q'];
elseif (isset($_GET['q']))
$q = $_GET['q'];
else
$q = DEFAULT_SEARCH;
// select all added JW 2005-07-19
$checked = '';
if (isset($_GET['selectall']))
{
$checked = (1 == $_GET['selectall']) ? ' checked="checked"' : '';
}
// restrict MySQL query by search string modified JW 2005-07-19
$where = ('' == $q) ? "`latest` = 'Y'" : "`tag` LIKE '%".$q."%' AND `latest` = 'Y'";
// get total number of pages
$numpages = $this->getCount('pages',$where);
// print page header
echo $this->Format('==== '.PAGE_TITLE.' ==== --- ');
// build pager form
$form1 = $this->FormOpen('','','post','page_admin_panel');
$form1 .= '<fieldset><legend>'.FORM_LEGEND.'</legend>'."\n";
$form1 .= '<label for="q">'.FORM_SEARCH_STRING_LABEL.'</label> <input type ="text" id="q" name="q" title="'.FORM_SEARCH_STRING_TITLE.'" size="20" maxlength="50" value="'.$q.'"/> <input type="submit" value="'.FORM_SEARCH_SUBMIT.'" /><br />'."\n";
// ranged drop-down
$pages_opts = optionRanges($page_limits,$numpages,DEFAULT_MIN_RECORDS_DISPLAY);
$form1 .= '<label for="l">'.FORM_PAGER_LABEL_BEFORE.'</label> '."\n";
$form1 .= '<select name="l" id="l" title="'.FORM_PAGER_TITLE.'">'."\n";
// build drop-down
foreach ($pages_opts as $opt) {
$selected = ($opt == $l) ? ' selected="selected"' : '';
$form1 .= '<option value="'.$opt.'"'.$selected.'>'.$opt.'</option>'."\n";
}
$form1 .= '</select> <label for="l">'.FORM_PAGER_LABEL_AFTER.'</label> <input type="submit" value="'.FORM_PAGER_SUBMIT.'" /><br />'."\n";
// build pager links
if ($s > 0)
$prev = '<a href="' .$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.($s-$l)).'&q='.$q.'" title="'.sprintf(FORM_PAGER_LINK, ($s-$l+1), $s).'">'.($s-$l+1).'-'.$s.'</a> | '."\n";
if ($numpages > ($s + $l))
$next = ' | <a href="'.$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.($s+$l)).'&q='.$q.'" title="'.sprintf(FORM_PAGER_LINK, ($s+$l+1), ($s+2*$l)).'">'.($s+$l+1).'-'.($s+2*$l).'</a>'."\n";
$form1 .= FORM_RESULT_INFO.' ('.$numpages.'): '.$prev.($s+1).'-'.($s+$l).$next.'<br />'."\n";
$form1 .= '('.FORM_RESULT_SORTED_BY.'<em>'.$sort.', '.$d.'</em>)'."\n";
$form1 .= '</fieldset>'.$this->FormClose()."\n";
// print form
echo $form1;
// sort by counted values
switch($sort)
{
case 'edits': #alpha --- 'latest' needs to be disabled
//sample query:
//SELECT *, COUNT(*) as edits FROM `wikka1160_pages` GROUP BY tag ORDER BY edits DESC
$count = ', COUNT(*) as edits';
$group = 'GROUP BY tag';
$where = '1';
//$where = ('' == $q) ? "1" : "`tag` LIKE '%".$q."%'";
$table = 'pages';
break;
case 'comments': #to implement
/*
// SELECT wikka1160_pages.tag, COUNT( * ) AS comments FROM wikka1160_pages, wikka1160_comments WHERE wikka1160_pages.tag = wikka1160_comments.page_tag GROUP BY wikka1160_pages.tag ORDER BY comments DESC
$count = ', COUNT(*) as edits';
$group = 'GROUP BY tag';
$where = '1';
*/
break;
default:
$table = 'pages';
}
// get page list
$pagedata = $this->LoadAll("SELECT *".$count." FROM ".$this->config["table_prefix"].$table." WHERE ".
$where." ".$group." ORDER BY ".$sort." ".$d." LIMIT ".$s.", ".$l);
if ($pagedata)
{
// build table headers
$tagheader = '<a href="'.$this->Href('','', (($sort == 'tag' && $d == 'asc')? 'l='.$l.'&sort=tag&d=desc&q='.$q : 'l='.$l.'&sort=tag&d=asc&q='.$q)).'" title="'.TABLE_HEADING_PAGENAME_TITLE.'">'.TABLE_HEADING_PAGENAME.'</a>';
$ownerheader = '<a href="'.$this->Href('','', (($sort == 'owner' && $d == 'asc')? 'l='.$l.'&sort=owner&d=desc&q='.$q : 'l='.$l.'&sort=owner&d=asc&q='.$q)).'" title="'.TABLE_HEADING_OWNER_TITLE.'">'.TABLE_HEADING_OWNER.'</a>';
$userheader = '<a href="'.$this->Href('','', (($sort == 'user' && $d == 'asc')? 'l='.$l.'&sort=user&d=desc&q='.$q : 'l='.$l.'&sort=user&d=asc&q='.$q)).'" title="'.TABLE_HEADING_LASTAUTHOR_TITLE.'">'.TABLE_HEADING_LASTAUTHOR.'</a>';
$lasteditheader = '<a href="'.$this->Href('','', (($sort == 'time' && $d == 'desc')? 'l='.$l.'&sort=time&d=asc&q='.$q : 'l='.$l.'&sort=time&d=desc&q='.$q)).'" title="'.TABLE_HEADING_LASTEDIT_TITLE.'">'.TABLE_HEADING_LASTEDIT.'</a>';
$revisionsheader = '<a href="'.$this->Href('','', (($sort == 'edits' && $d == 'desc')? 'l='.$l.'&sort=edits&d=asc&q='.$q : 'l='.$l.'&sort=edits&d=desc&q='.$q)).'" title="'.TABLE_HEADING_REVISIONS_TITLE.'"><img src="'.REVISIONS_ICON.'" alt="'.TABLE_HEADING_REVISIONS_ALT.'"/></a>';
$htmlout = "<table summary=\"".TABLE_SUMMARY."\" border=\"1px\" id=\"admin_table\">\n".
"<thead>\n<tr>\n".
" <th> </th>\n".
" <th>".$tagheader."</th>\n".
" <th>".$ownerheader."</th>\n".
" <th>".$userheader."</th>\n".
" <th>".$lasteditheader."</th>\n".
" <th class=\"number ".(($c_color == 1)? ' c1' : '')."\" title=\"".TABLE_HEADING_HITS_TITLE."\"><img src=\"".HITS_ICON."\" alt=\"".TABLE_HEADING_HITS_ALT."\"/></th>\n".
" <th class=\"number ".(($c_color == 1)? ' c2' : '')."\" title=\"".TABLE_HEADING_REVISIONS_TITLE."\">".$revisionsheader."</th>\n".
" <th class=\"number ".(($c_color == 1)? ' c3' : '')."\" title=\"".TABLE_HEADING_COMMENTS_TITLE."\"><img src=\"".COMMENTS_ICON."\" alt=\"".TABLE_HEADING_COMMENTS_ALT."\"/></th>\n".
" <th class=\"number ".(($c_color == 1)? ' c4' : '')."\" title=\"".TABLE_HEADING_BACKLINKS_TITLE."\"><img src=\"".BACKLINKS_ICON."\" alt=\"".TABLE_HEADING_BACKLINKS_ALT."\"/></th>\n".
" <th class=\"number ".(($c_color == 1)? ' c5' : '')."\" title=\"".TABLE_HEADING_REFERRERS_TITLE."\"><img src=\"".REFERRERS_ICON."\" alt=\"".TABLE_HEADING_REFERRERS_ALT."\"/></th>\n".
" <th class=\"center\">".TABLE_HEADING_ACTIONS."</th>\n".
" </tr>\n</thead>\n";
// feed table with data
foreach($pagedata as $page)
{
// truncate long page names
$pagename = (strlen($page['tag']) > DEFAULT_TAG_LENGTH) ? substr($page['tag'], 0, DEFAULT_TAG_LENGTH).DEFAULT_TERMINATOR : $page['tag'];
// build handler links
$lastedit = $page['time'];
if ($pagename != $page['tag'])
{
$showpage = '<a href="'.$this->Href('',$page['tag'], '').'" title="'.$page['tag'].'">'.$pagename.'</a>';
}
else
{
$showpage = '<a href="'.$this->Href('',$page['tag'], '').'">'.$pagename.'</a>';
}
$editpage = '<a href="'.$this->Href('edit',$page['tag'], '').'" title="'.sprintf(ACTION_EDIT_LINK_TITLE, $page['tag']).'">'.ACTION_EDIT_LINK.'</a>';
$deletepage = '<a href="'.$this->Href('delete',$page['tag'], '').'" title="'.sprintf(ACTION_DELETE_LINK_TITLE, $page['tag']).'">'.ACTION_DELETE_LINK.'</a>';
$clonepage = '<a href="'.$this->Href('clone',$page['tag'], '').'" title="'.sprintf(ACTION_CLONE_LINK_TITLE, $page['tag']).'">'.ACTION_CLONE_LINK.'</a>';
// renaming disabled
$renamepage = '<a href="'.$this->Href('rename',$page['tag'], '').'" title="'.sprintf(ACTION_RENAME_LINK_TITLE, $page['tag']).'">'.ACTION_RENAME_LINK.'</a>';
$aclpage = '<a href="'.$this->Href('acls',$page['tag'], '').'" title="'.sprintf(ACTION_ACL_LINK_TITLE, $page['tag']).'">'.ACTION_ACL_LINK.'</a>';
$infopage = '<a href="'.$this->Href('info',$page['tag'], '').'" title="'.sprintf(ACTION_INFO_LINK_TITLE, $page['tag']).'">'.ACTION_INFO_LINK.'</a>';
// get page owner
if ($page['owner'])
{
// is the owner a registered user?
if ($this->LoadUser($page['owner']))
{
// does user's homepage exist?
if ($this->ExistsPage($page['owner']))
{
$owner = $this->Link($page['owner']);
}
else
{
$owner = $page['owner'];
}
}
else
{
$owner = $page['owner'];
}
}
else
{
// page has empty owner field: print claim link
$owner = $this->Link($page['tag'], 'claim','(Nobody)','','',TAKE_OWNERSHIP_LINK.' '.$page['tag']);
}
// get last author
if ($page['user'])
{
// is the author a registered user?
if ($this->LoadUser($page['user']))
{
// does user's homepage exist?
if ($this->ExistsPage($page['user']))
{
$user = $this->Link($page['user']);
}
else
{
$user = $page['user'];
}
}
else
{
// truncate long host names
$user = (strlen($page['user']) > DEFAULT_URL_LENGTH) ? substr($page['user'], 0, DEFAULT_URL_LENGTH).DEFAULT_TERMINATOR : $page['user'];
# added JW 2005-07-19
if ($user != $page['user'])
{
$user = '<span title="'.$page['user'].'">'.$user.'</span>';
}
}
}
else
{
// page has empty user field
$user = NO_OWNER;
}
// get counts - JW 2005-07-19
$whereTag = "`tag` = '".$page['tag']."'";
$wherePageTag = "`page_tag` = '".$page['tag']."'";
$whereToTag = "`to_tag` = '".$page['tag']."'";
$hn = 0;
$rv = $this->getCount('pages',$whereTag);
$cn = $this->getCount('comments',$wherePageTag);
$bn = $this->getCount('links',$whereToTag);
$rn = $this->getCount('referrers',$wherePageTag);
// get page hits (forthcoming)
$hitspage = ($hn > 0) ? '<a href="'.$this->Href('hits',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_HITS_TITLE, $page['tag'], $hn).'">'.$hn.'</a>' : '0';
// get page revisions and create revision link if needed
$revpage = ($rv > 0) ? '<a href="'.$this->Href('revisions',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_REVISIONS_TITLE, $page['tag'], $rv).'">'.$rv.'</a>' : '0';
// get page comments and create comments link if needed
$commentspage = ($cn > 0) ? '<a href="'.$this->Href('',$page['tag'], 'show_comments=1#comments').'" title="'.sprintf(TABLE_CELL_COMMENTS_TITLE, $page['tag'], $cn).'">'.$cn.'</a>' : '0';
// get page backlinks and create backlinks link
$backlinkpage = ($bn > 0) ? '<a href="'.$this->Href('backlinks',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_BACKLINKS_TITLE, $page['tag'], $bn).'">'.$bn.'</a>' : '0';
// get page referrers and create referrer link
$refpage = ($rn > 0) ? '<a href="'.$this->Href('referrers',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_REFERRERS_TITLE, $page['tag'], $rn).'">'.$rn.'</a>' : '0';
// build table body
$htmlout .= "<tbody>\n";
if ($r_color == 1) {
$htmlout .= "<tr ".(($r%2)? '' : 'class="alt"').">\n"; #enable alternate row color
} else {
$htmlout .= "<tr>\n"; #disable alternate row color
}
$htmlout .=" <td><input type=\"checkbox\" name=\"id_".$page['id']."\"".$checked." title=\"".sprintf(SELECT_RECORD_TITLE, $page['tag'])."\"/></td>\n". # modified JW 2005-07-19
" <td>".$showpage."</td>\n".
" <td>".$owner."</td>\n".
" <td>".$user."</td>\n".
" <td class=\"time\" ".((strlen($page['note'])>0)? 'title="['.$page['note'].']"' : 'title="'.NO_EDIT_NOTE.'"').">".$lastedit."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c1' : '')."\">".$hitspage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c2' : '')."\">".$revpage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c3' : '')."\">".$commentspage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c4' : '')."\">".$backlinkpage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c5' : '')."\">".$refpage."</td>\n".
" <td class=\"center \">".$editpage." :: ".$deletepage." :: ".$clonepage." :: "./*$renamepage*." :: ".*/$aclpage." :: ".$infopage."</td>\n".
" </tr>\n</tbody>\n";
//increase row counter ----- alternate row colors
if ($r_color == 1) $r++;
}
$htmlout .= '</table>'."\n";
// print the table
echo $this->FormOpen('','','get');
echo $htmlout;
// multiple-page operations (forthcoming) JW 2005-07-19 accesskey removed (causes more problems than it solves)
echo '<fieldset><legend>'.FORM_MASSACTION_LEGEND.'</legend>';
echo '[<a href="'.$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.$s.'&q='.$q.'&selectall=1').'" title="'.CHECK_ALL_TITLE.'">'.CHECK_ALL.'</a> | <a href="'.$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.$s.'&q='.$q.'&selectall=0').'" title="'.UNCHECK_ALL_TITLE.'">'.UNCHECK_ALL.'</a>]<br />';
echo '<label for="action" >'.FORM_MASSACTION_LABEL.'</label> <select title="'.FORM_MASSACTION_SELECT_TITLE.'" id="action" name="action">';
echo '<option value="" selected="selected">---</option>';
echo '<option value="massdelete">'.FORM_MASSACTION_OPT_DELETE.'</option>';
echo '<option value="massclone">'.FORM_MASSACTION_OPT_CLONE.'</option>';
echo '<option value="massrename">'.FORM_MASSACTION_OPT_RENAME.'</option>';
echo '<option value="massacls">'.FORM_MASSACTION_OPT_ACL.'</option>';
echo '</select> <input type="submit" value="'.FORM_MASSACTION_SUBMIT.'" />';
echo '</fieldset>';
echo $this->FormClose();
}
else
{
// no records matching the search string: print error message
echo '<p><span class="error">'.sprintf(ERROR_NO_MATCHES, $q).'</span></p>';
}
}
}
else
{
// current user is not admin: show plain page index
echo $this->Action('pageindex');
}
?>
%%
===New CSS classes===
The styling of the tables requires a bunch of [[TableStyling new CSS classes]].
----
==== Styling options ====
The ##pageadmin## action accepts two optional styling parameters:
##colcolor##
Enables color for statistics columns
1: enables colored columns (default);
0: disables colored columns;
##rowcolor##
Enables alternate row colors
1: enables colored rows (default);
0: disables colored rows;
The following examples show how the table is rendered using these two parameters:
**No styling:** ##""{{pageadmin colcolor="0" rowcolor="0"}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr>
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
**Alternate rows only:** ##""{{pageadmin colcolor="0"}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
**Colored columns only:** ##""{{pageadmin rowcolor="0"}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number c1" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number c2" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number c3" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number c4" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number c5" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr>
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
**Alternate rows and colored columns:** ##""{{pageadmin}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number c1" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number c2" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number c3" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number c4" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number c5" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
----
CategoryDevelopmentActions CategoryDevelopmentAdmin
This is the development page for the Page Administration action. The Page Administration module has been committed to the [[http://wush.net/websvn/wikka/listing.php?repname=wikka&path=%2Fbranches%2F1.1.6.4%2F 1.1.6.4 branch]] and will be available with the [[http://blog.wikkawiki.org/2007/11/23/pre-release-announcement-for-securityantispam-release-1164/ 1.1.6.4 release]]. **Documentation** http://docs.wikkawiki.org/PageAdministration
This action, inspired by the UserAdmin action, is meant to allow Wikka Administrators to manage pages and perform several maintenance operations.
It displays the standard PageIndex to non-admins.
>>**See also:**
~-AdminModules
~-RefactorWiki
~-MovePages
~-PageAdminPrune
~-Are you an administrator of this site ? --- Give it a [[PageAdminTest try]]
>><<**Table of Contents:**
~-""<a href="PageAdminAction#hn_Current_version">Current version</a>""
~-""<a href="PageAdminAction#hn_To_do">To do</a>""
~-""<a href="PageAdminAction#hn_The_code">The code</a>""
~-""<a href="PageAdminAction#hn_Styling_options">Styling options</a>""<<
::c::
----
== Sample output ==
=====Page Administration=====
""
<form action="#" method="post" id="form_page_admin_panel">
<fieldset><legend>Filter view:</legend>
<label for="q">Search page:</label> <input type ="text" id="q" name="q" title="Enter a search string" size="20" maxlength="50" value=" "/> <input type="submit" value="Submit" /><br />
<label for="l">Show</label>
<select name="l" id="l" title="Select records-per-page limit">
<option value="5">5</option>
<option value="10">10</option>
<option value="20" selected="selected">20</option>
<option value="30">30</option>
<option value="40">40</option>
<option value="50">50</option>
<option value="100">100</option>
<option value="200">200</option>
<option value="300">300</option>
<option value="400">400</option>
<option value="500">500</option>
<option value="912">912</option>
</select> <label for="l">records per page</label> <input type="submit" value="Apply" /><br />
Records (912): 1-20 | <a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=desc&s=20&q=" title="Show records from 21 to 40">21-40</a>
<br />
(Sorted by:<em>time, desc</em>)
</fieldset></form>
<form action="http://wikka.jsnx.com/PageAdminTest" id="form_b5eda0a745">
<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number c1" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number c2" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number c3" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number c4" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number c5" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10344" title="Select UserMap"/></td>
<td><a href="http://wikka.jsnx.com/UserMap">UserMap</a></td>
<td><a href="http://wikka.jsnx.com/NilsLindenberg" title=" ">NilsLindenberg</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 13:28:40</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserMap/revisions" title="Display revisions for UserMap (28)">28</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserMap/backlinks" title="Display pages linking to UserMap (5)">5</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserMap/referrers" title="Display external sites linking to UserMap (121)">121</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserMap/edit" title="Edit UserMap">edit</a> :: <a href="http://wikka.jsnx.com/UserMap/delete" title="Delete UserMap">delete</a> :: <a href="http://wikka.jsnx.com/UserMap/clone" title="Clone UserMap">clone</a> :: <a href="http://wikka.jsnx.com/UserMap/acls" title="Change Access Control List for UserMap">acl</a> :: <a href="http://wikka.jsnx.com/UserMap/info" title="Display information and statistics for UserMap">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10343" title="Select DennyShimkoski"/></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title="DennyShimkoski">DennyShimkos…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 13:21:31</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/DennyShimkoski/revisions" title="Display revisions for DennyShimkoski (11)">11</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/DennyShimkoski?show_comments=1#comments" title="Display comments for DennyShimkoski (2)">2</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/DennyShimkoski/backlinks" title="Display pages linking to DennyShimkoski (7)">7</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/DennyShimkoski/edit" title="Edit DennyShimkoski">edit</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/delete" title="Delete DennyShimkoski">delete</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/clone" title="Clone DennyShimkoski">clone</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/acls" title="Change Access Control List for DennyShimkoski">acl</a> :: <a href="http://wikka.jsnx.com/DennyShimkoski/info" title="Display information and statistics for DennyShimkoski">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10341" title="Select TestSkin"/></td>
<td><a href="http://wikka.jsnx.com/TestSkin">TestSkin</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[announcing latest addition]">2005-08-01 13:04:34</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TestSkin/revisions" title="Display revisions for TestSkin (34)">34</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/TestSkin?show_comments=1#comments" title="Display comments for TestSkin (21)">21</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/TestSkin/backlinks" title="Display pages linking to TestSkin (31)">31</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/TestSkin/referrers" title="Display external sites linking to TestSkin (257)">257</a></td>
<td class="center "><a href="http://wikka.jsnx.com/TestSkin/edit" title="Edit TestSkin">edit</a> :: <a href="http://wikka.jsnx.com/TestSkin/delete" title="Delete TestSkin">delete</a> :: <a href="http://wikka.jsnx.com/TestSkin/clone" title="Clone TestSkin">clone</a> :: <a href="http://wikka.jsnx.com/TestSkin/acls" title="Change Access Control List for TestSkin">acl</a> :: <a href="http://wikka.jsnx.com/TestSkin/info" title="Display information and statistics for TestSkin">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10339" title="Select HypeXR"/></td>
<td><a href="http://wikka.jsnx.com/HypeXR">HypeXR</a></td>
<td><a href="http://wikka.jsnx.com/HypeXR" title=" ">HypeXR</a></td>
<td><a href="http://wikka.jsnx.com/HypeXR" title=" ">HypeXR</a></td>
<td class="time" title="[No edit note]">2005-08-01 09:09:40</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/HypeXR/revisions" title="Display revisions for HypeXR (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4">0</td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/HypeXR/edit" title="Edit HypeXR">edit</a> :: <a href="http://wikka.jsnx.com/HypeXR/delete" title="Delete HypeXR">delete</a> :: <a href="http://wikka.jsnx.com/HypeXR/clone" title="Clone HypeXR">clone</a> :: <a href="http://wikka.jsnx.com/HypeXR/acls" title="Change Access Control List for HypeXR">acl</a> :: <a href="http://wikka.jsnx.com/HypeXR/info" title="Display information and statistics for HypeXR">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10337" title="Select CustomCSS"/></td>
<td><a href="http://wikka.jsnx.com/CustomCSS">CustomCSS</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 05:39:11</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/CustomCSS/revisions" title="Display revisions for CustomCSS (3)">3</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/CustomCSS/backlinks" title="Display pages linking to CustomCSS (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/CustomCSS/edit" title="Edit CustomCSS">edit</a> :: <a href="http://wikka.jsnx.com/CustomCSS/delete" title="Delete CustomCSS">delete</a> :: <a href="http://wikka.jsnx.com/CustomCSS/clone" title="Clone CustomCSS">clone</a> :: <a href="http://wikka.jsnx.com/CustomCSS/acls" title="Change Access Control List for CustomCSS">acl</a> :: <a href="http://wikka.jsnx.com/CustomCSS/info" title="Display information and statistics for CustomCSS">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10335" title="Select OnPageLoadWithGlobalActions"/></td>
<td><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions" title="OnPageLoadWithGlobalActions">OnPageLoadWi…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 05:32:33</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/revisions" title="Display revisions for OnPageLoadWithGlobalActions (5)">5</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/backlinks" title="Display pages linking to OnPageLoadWithGlobalActions (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/edit" title="Edit OnPageLoadWithGlobalActions">edit</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/delete" title="Delete OnPageLoadWithGlobalActions">delete</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/clone" title="Clone OnPageLoadWithGlobalActions">clone</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/acls" title="Change Access Control List for OnPageLoadWithGlobalActions">acl</a> :: <a href="http://wikka.jsnx.com/OnPageLoadWithGlobalActions/info" title="Display information and statistics for OnPageLoadWithGlobalActions">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10334" title="Select UncamelAction"/></td>
<td><a href="http://wikka.jsnx.com/UncamelAction" title="UncamelAction">UncamelActio…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-08-01 05:30:38</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UncamelAction/revisions" title="Display revisions for UncamelAction (4)">4</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/UncamelAction/backlinks" title="Display pages linking to UncamelAction (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/UncamelAction/edit" title="Edit UncamelAction">edit</a> :: <a href="http://wikka.jsnx.com/UncamelAction/delete" title="Delete UncamelAction">delete</a> :: <a href="http://wikka.jsnx.com/UncamelAction/clone" title="Clone UncamelAction">clone</a> :: <a href="http://wikka.jsnx.com/UncamelAction/acls" title="Change Access Control List for UncamelAction">acl</a> :: <a href="http://wikka.jsnx.com/UncamelAction/info" title="Display information and statistics for UncamelAction">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10321" title="Select ChristianBarthelemy"/></td>
<td><a href="http://wikka.jsnx.com/ChristianBarthelemy" title="ChristianBarthelemy">ChristianBar…</a></td>
<td><a href="http://wikka.jsnx.com/ChristianBarthelemy" title=" ">ChristianBarthelemy</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[Added remark on workflows item]">2005-07-31 14:39:37</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/ChristianBarthelemy/revisions" title="Display revisions for ChristianBarthelemy (39)">39</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/ChristianBarthelemy?show_comments=1#comments" title="Display comments for ChristianBarthelemy (8)">8</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/ChristianBarthelemy/backlinks" title="Display pages linking to ChristianBarthelemy (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/ChristianBarthelemy/referrers" title="Display external sites linking to ChristianBarthelemy (49)">49</a></td>
<td class="center "><a href="http://wikka.jsnx.com/ChristianBarthelemy/edit" title="Edit ChristianBarthelemy">edit</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/delete" title="Delete ChristianBarthelemy">delete</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/clone" title="Clone ChristianBarthelemy">clone</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/acls" title="Change Access Control List for ChristianBarthelemy">acl</a> :: <a href="http://wikka.jsnx.com/ChristianBarthelemy/info" title="Display information and statistics for ChristianBarthelemy">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10320" title="Select WikkaSites"/></td>
<td><a href="http://wikka.jsnx.com/WikkaSites">WikkaSites</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding fresh sites]">2005-07-31 09:30:11</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/WikkaSites/revisions" title="Display revisions for WikkaSites (419)">419</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/WikkaSites?show_comments=1#comments" title="Display comments for WikkaSites (31)">31</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/WikkaSites/backlinks" title="Display pages linking to WikkaSites (17)">17</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/WikkaSites/referrers" title="Display external sites linking to WikkaSites (470)">470</a></td>
<td class="center "><a href="http://wikka.jsnx.com/WikkaSites/edit" title="Edit WikkaSites">edit</a> :: <a href="http://wikka.jsnx.com/WikkaSites/delete" title="Delete WikkaSites">delete</a> :: <a href="http://wikka.jsnx.com/WikkaSites/clone" title="Clone WikkaSites">clone</a> :: <a href="http://wikka.jsnx.com/WikkaSites/acls" title="Change Access Control List for WikkaSites">acl</a> :: <a href="http://wikka.jsnx.com/WikkaSites/info" title="Display information and statistics for WikkaSites">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10316" title="Select HomePage"/></td>
<td><a href="http://wikka.jsnx.com/HomePage">HomePage</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[updating languages]">2005-07-31 09:13:49</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/HomePage/revisions" title="Display revisions for HomePage (183)">183</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/HomePage?show_comments=1#comments" title="Display comments for HomePage (96)">96</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/HomePage/backlinks" title="Display pages linking to HomePage (49)">49</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/HomePage/referrers" title="Display external sites linking to HomePage (33437)">33437</a></td>
<td class="center "><a href="http://wikka.jsnx.com/HomePage/edit" title="Edit HomePage">edit</a> :: <a href="http://wikka.jsnx.com/HomePage/delete" title="Delete HomePage">delete</a> :: <a href="http://wikka.jsnx.com/HomePage/clone" title="Clone HomePage">clone</a> :: <a href="http://wikka.jsnx.com/HomePage/acls" title="Change Access Control List for HomePage">acl</a> :: <a href="http://wikka.jsnx.com/HomePage/info" title="Display information and statistics for HomePage">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10313" title="Select InfoHandler"/></td>
<td><a href="http://wikka.jsnx.com/InfoHandler">InfoHandler</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[small code change]">2005-07-31 08:28:43</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/InfoHandler/revisions" title="Display revisions for InfoHandler (20)">20</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/InfoHandler/backlinks" title="Display pages linking to InfoHandler (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/InfoHandler/edit" title="Edit InfoHandler">edit</a> :: <a href="http://wikka.jsnx.com/InfoHandler/delete" title="Delete InfoHandler">delete</a> :: <a href="http://wikka.jsnx.com/InfoHandler/clone" title="Clone InfoHandler">clone</a> :: <a href="http://wikka.jsnx.com/InfoHandler/acls" title="Change Access Control List for InfoHandler">acl</a> :: <a href="http://wikka.jsnx.com/InfoHandler/info" title="Display information and statistics for InfoHandler">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10312" title="Select DennysCalendarExperiments"/></td>
<td><a href="http://wikka.jsnx.com/DennysCalendarExperiments" title="DennysCalendarExperiments">DennysCalend…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[Fixed a bug in the code]">2005-07-31 06:52:55</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/DennysCalendarExperiments/revisions" title="Display revisions for DennysCalendarExperiments (5)">5</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/DennysCalendarExperiments/backlinks" title="Display pages linking to DennysCalendarExperiments (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/DennysCalendarExperiments/edit" title="Edit DennysCalendarExperiments">edit</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/delete" title="Delete DennysCalendarExperiments">delete</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/clone" title="Clone DennysCalendarExperiments">clone</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/acls" title="Change Access Control List for DennysCalendarExperiments">acl</a> :: <a href="http://wikka.jsnx.com/DennysCalendarExperiments/info" title="Display information and statistics for DennysCalendarExperiments">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10310" title="Select JwCalendarWithPageCreation"/></td>
<td><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation" title="JwCalendarWithPageCreation">JwCalendarWi…</a></td>
<td><a href="http://wikka.jsnx.com/ChristianBarthelemy" title=" ">ChristianBarthelemy</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-07-31 06:43:47</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/revisions" title="Display revisions for JwCalendarWithPageCreation (8)">8</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation?show_comments=1#comments" title="Display comments for JwCalendarWithPageCreation (6)">6</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/backlinks" title="Display pages linking to JwCalendarWithPageCreation (3)">3</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/referrers" title="Display external sites linking to JwCalendarWithPageCreation (52)">52</a></td>
<td class="center "><a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/edit" title="Edit JwCalendarWithPageCreation">edit</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/delete" title="Delete JwCalendarWithPageCreation">delete</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/clone" title="Clone JwCalendarWithPageCreation">clone</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/acls" title="Change Access Control List for JwCalendarWithPageCreation">acl</a> :: <a href="http://wikka.jsnx.com/JwCalendarWithPageCreation/info" title="Display information and statistics for JwCalendarWithPageCreation">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10304" title="Select SandBox"/></td>
<td><a href="http://wikka.jsnx.com/SandBox">SandBox</a></td>
<td>(Public)</td>
<td>PaulWittenbraker</td>
<td class="time" title="[No edit note]">2005-07-31 03:37:29</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/SandBox/revisions" title="Display revisions for SandBox (1116)">1116</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/SandBox?show_comments=1#comments" title="Display comments for SandBox (13)">13</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/SandBox/backlinks" title="Display pages linking to SandBox (34)">34</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/SandBox/referrers" title="Display external sites linking to SandBox (108)">108</a></td>
<td class="center "><a href="http://wikka.jsnx.com/SandBox/edit" title="Edit SandBox">edit</a> :: <a href="http://wikka.jsnx.com/SandBox/delete" title="Delete SandBox">delete</a> :: <a href="http://wikka.jsnx.com/SandBox/clone" title="Clone SandBox">clone</a> :: <a href="http://wikka.jsnx.com/SandBox/acls" title="Change Access Control List for SandBox">acl</a> :: <a href="http://wikka.jsnx.com/SandBox/info" title="Display information and statistics for SandBox">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10302" title="Select TonExtraWiki"/></td>
<td><a href="http://wikka.jsnx.com/TonExtraWiki">TonExtraWiki</a></td>
<td>PaulWittenbraker</td>
<td>PaulWittenbraker</td>
<td class="time" title="[No edit note]">2005-07-31 03:10:51</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TonExtraWiki/revisions" title="Display revisions for TonExtraWiki (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TonExtraWiki/backlinks" title="Display pages linking to TonExtraWiki (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TonExtraWiki/edit" title="Edit TonExtraWiki">edit</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/delete" title="Delete TonExtraWiki">delete</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/clone" title="Clone TonExtraWiki">clone</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/acls" title="Change Access Control List for TonExtraWiki">acl</a> :: <a href="http://wikka.jsnx.com/TonExtraWiki/info" title="Display information and statistics for TonExtraWiki">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10301" title="Select CodeContributions"/></td>
<td><a href="http://wikka.jsnx.com/CodeContributions" title="CodeContributions">CodeContribu…</a></td>
<td>(Public)</td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[Added link to DennysAttachmentsActionInfo]">2005-07-31 02:23:42</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/CodeContributions/revisions" title="Display revisions for CodeContributions (124)">124</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/CodeContributions?show_comments=1#comments" title="Display comments for CodeContributions (4)">4</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/CodeContributions/backlinks" title="Display pages linking to CodeContributions (28)">28</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/CodeContributions/referrers" title="Display external sites linking to CodeContributions (144)">144</a></td>
<td class="center "><a href="http://wikka.jsnx.com/CodeContributions/edit" title="Edit CodeContributions">edit</a> :: <a href="http://wikka.jsnx.com/CodeContributions/delete" title="Delete CodeContributions">delete</a> :: <a href="http://wikka.jsnx.com/CodeContributions/clone" title="Clone CodeContributions">clone</a> :: <a href="http://wikka.jsnx.com/CodeContributions/acls" title="Change Access Control List for CodeContributions">acl</a> :: <a href="http://wikka.jsnx.com/CodeContributions/info" title="Display information and statistics for CodeContributions">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10298" title="Select DennysAttachmentsActionInfo"/></td>
<td><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo" title="DennysAttachmentsActionInfo">DennysAttach…</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td><a href="http://wikka.jsnx.com/DennyShimkoski" title=" ">DennyShimkoski</a></td>
<td class="time" title="[No edit note]">2005-07-31 01:24:04</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/revisions" title="Display revisions for DennysAttachmentsActionInfo (4)">4</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/backlinks" title="Display pages linking to DennysAttachmentsActionInfo (2)">2</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/edit" title="Edit DennysAttachmentsActionInfo">edit</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/delete" title="Delete DennysAttachmentsActionInfo">delete</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/clone" title="Clone DennysAttachmentsActionInfo">clone</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/acls" title="Change Access Control List for DennysAttachmentsActionInfo">acl</a> :: <a href="http://wikka.jsnx.com/DennysAttachmentsActionInfo/info" title="Display information and statistics for DennysAttachmentsActionInfo">info</a></td>
</tr>
</tbody>
</table>
<fieldset><legend>Mass-action</legend>[<a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=desc&s=0&q=&selectall=1" title="Check all records">Check all</a> | <a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=desc&s=0&q=&selectall=0" title="Uncheck all records">Uncheck all</a>]<br /><label for="action" >With selected</label> <select title="Choose action to apply to selected records (DISABLED)" id="action" name="action"><option value=" " selected="selected">---</option><option value="massdelete">Delete all</option><option value="massclone">Clone all</option><option value="massrename">Rename all</option><option value="massacls">Change Access Control List</option></select> <input type="submit" value="Submit" /></fieldset></form>
""
----
=== Current version ===
Latest available version: **0.4**.
**Features:**
~-displays a pageable, sortable and searchable list of pages;
~-displays detailed and clickable page statistics (revisions, comments, backlinks, referrers)
~-generates links to different handlers with titles;
~-shortens long pagenames and hostnames;
~-shows last edit notes (if available);
~-adds 'claim' links to pages with no owner;
~-shows plain-text username in owner/lastauthor fields if user has no homepage;
~-supports a bunch of configurable options (including max. length of displayed pagename, max. length of hostname, symbol for truncated text).
**Bugfixes and modifications:**
~-added constant section;
~-added titles to different form elements;
~-added configurable hostname and pagename length limit;
~-fixed problem with search keyword not read by pager;
~-added submit buttons after menus;
~-fixed invalid markup resulting in green text on the whole page.
~-using getCount() to retrieve the various counts --JW
~-various changes to prevent NOTICEs --JW
~-removed accesskey attributes (cause more problems than they solve) --JW
~-various other minor tweaks --JW
~-added icons and UI strings;
~-added several configurable options, including styling options (see below);
=== To do===
~-Mass-operations (mass-page deletion (''done as of 1.1.6.4''), mass-page rename, mass-page ACLs etc.);
~~-I have included a first MassaclsAction as a preview/draft/beta, like you want --AndreasTengicki
~-Handlers: add rename handler;
~-Page statistics: add page hits;
~~& Can I advocate for a "Page Hide/Unhide" option here?....H instead of Y or N for most recent works well. In some communities, particularly where there might be legal/administrative follow-ups to what was posted, it is quite useful to be able to "keep" the contents of the page in the database, but make them inaccessible to the wiki users. --GmBowen
~~~& Mike, as you can see this interface does not add any specific handler or page feature which is not already supported by Wikka: it is just a //hub// for existing handlers (the multiple-page operations will require new handlers, though). So if you want to propose something like a 'hide/unhide' handler, I suggest you open a dedicated page. -- DarTar
~~~&To be more precise, this action //does// include two forthcoming features (rename handler, page hits) but only as //placeholders//. The development of each of these functionalities should be take place elsewhere, not on this page. -- DarTar
~~~~&There might as well be a placeholer for a future "hide" or "lock" handler then. :) We certainly need //something// like that - see comments.--JavaWoman.
===The code ===
Save the code below as ##actions/pageadmin.php## and use it as ##""{{pageadmin}}""##.
**Note:** The code has been adapted to take advantage of the ##[[WikkaCountingRecords getCount()]]## and ##[[FormatUserMethod FormatUser()]]## methods, which are required for the action to work.
%%(php;1)
<?php
/**
* Display a module for page management.
*
* This action allows admins to display information and perform operations
* on wiki pages. Pages can be sorted, searched, paged, filtered. Page-related
* statistics are given, displaying the number of comments, revisions, backlinks
* and referrers. Several handlers allow admins to perform specific operation on
* single pages. If the current user is not an administrator, the pageindex action
* is displayed instead.
*
* @package Actions
* @name PageAdmin
*
* @author {@link http://wikka.jsnx.com/DarTar Dario Taraborelli}
* @author {@link http://wikka.jsnx.com/JavaWoman JavaWoman} (using getCount(); minor tweaks)
* @version 0.4
* @since Wikka 1.1.X.X
*
* @input integer $colcolor optional: enables color for statistics columns
* 1: enables colored columns;
* 0: disables colored columns;
* default: 1;
* @input integer $rowcolor optional: enables alternate row colors
* 1: enables colored rows;
* 0: disables colored rows;
* default: 1;
*
* @output A list of pages available on the current server.
*
* @todo
* - mass-operations;
* - handlers: rename handler;
* - statistics: page hits;
* - full-text page search;
* - integrate with other admin modules.
*/
//utilities
/**
* Build an array of numbers consisting of 'ranges' with increasing step size in each 'range'.
*
* A list of numbers like this is useful for instance for a dropdown to choose
* a period expressed in number of days: a difference between 2 and 5 days may
* be significant while that between 92 and 95 may not be.
*
* @author {@link http://wikka.jsnx.com/JavaWoman JavaWoman}
* @copyright Copyright (c) 2005, Marjolein Katsma
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
* @version 1.0
*
* @param mixed $limits required: single integer or array of integers;
* defines the upper limits of the ranges as well as the next step size
* @param int $max required: upper limit for the whole list
* (will be included if smaller than the largest limit)
* @param int $firstinc optional: increment for the first range; default 1
* @return array resulting list of numbers
*/
function optionRanges($limits, $max, $firstinc = 1)
{
// initializations
if (is_int($limits)) $limits = array($limits);
if ($firstinc < 1) $firstinc = 1;
$opts = array();
$inc = $firstinc;
// first element is the first increment
$opts[] = $inc;
// each $limit is the upper limit of a 'range'
foreach ($limits as $limit)
{
for ($i = $inc + $inc; $i <= $limit && $i < $max; $i += $inc)
{
$opts[] = $i;
}
// we quit at $max, even if there are more $limit elements
if ($limit >= $max)
{
// add $max to the list; then break out of the loop
$opts[] = $max;
break;
}
// when $limit is reached, it becomes the new start and increment for the next 'range'
$inc = $limit;
}
return $opts;
}
// restrict access to admins
if ($this->IsAdmin($this->GetUser())) {
// -------------------------------------
// set default values as constants
define('DEFAULT_RECORDS_LIMIT', '20'); # number of records per page
define('DEFAULT_MIN_RECORDS_DISPLAY', '5'); # min number of records
define('DEFAULT_RECORDS_RANGE',serialize(array('10','50','100','500','1000'))); #range array for records pager
define('DEFAULT_SORT_FIELD', 'time'); # sort field
define('DEFAULT_SORT_ORDER', 'desc'); # sort order, ascendant or descendant
define('DEFAULT_START', '0'); # start record
define('DEFAULT_SEARCH', ''); # keyword to restrict page search
define('DEFAULT_TAG_LENGTH', '12'); # max. length of displayed pagename
define('DEFAULT_URL_LENGTH', '15'); # max. length of displayed user host
define('DEFAULT_TERMINATOR', '…'); # standard symbol replacing truncated text (ellipsis) JW 2005-07-19
define('ALTERNATE_ROW_COLOR', '1'); # switch alternate row color
define('STAT_COLUMN_COLOR', '1'); # switch color for statistics columns
// -------------------------------------
// User-interface: icons
define('HITS_ICON', 'images/icons/16x16/stock_about.png');
define('REVISIONS_ICON', 'images/icons/16x16/stock_book_open.png');
define('COMMENTS_ICON', 'images/icons/16x16/stock_help-agent.png');
define('BACKLINKS_ICON', 'images/icons/16x16/stock_link.png');
define('REFERRERS_ICON', 'images/icons/16x16/stock_internet.png');
// -------------------------------------
// User-interface: strings
define('PAGE_TITLE','Page Administration');
define('FORM_LEGEND','Filter view:');
define('FORM_SEARCH_STRING_LABEL','Search page:');
define('FORM_SEARCH_STRING_TITLE','Enter a search string');
define('FORM_SEARCH_SUBMIT','Submit');
define('FORM_PAGER_LABEL_BEFORE','Show');
define('FORM_PAGER_TITLE','Select records-per-page limit');
define('FORM_PAGER_LABEL_AFTER','records per page');
define('FORM_PAGER_SUBMIT','Apply');
define('FORM_PAGER_LINK','Show records from %d to %d');
define('FORM_RESULT_INFO','Records');
define('FORM_RESULT_SORTED_BY','Sorted by:');
define('TABLE_HEADING_PAGENAME','Page Name');
define('TABLE_HEADING_PAGENAME_TITLE','Sort by page name');
define('TABLE_HEADING_OWNER','Owner');
define('TABLE_HEADING_OWNER_TITLE','Sort by page owner');
define('TABLE_HEADING_LASTAUTHOR','Last Author');
define('TABLE_HEADING_LASTAUTHOR_TITLE','Sort by last author');
define('TABLE_HEADING_LASTEDIT','Last Edit');
define('TABLE_HEADING_LASTEDIT_TITLE','Sort by edit time');
define('TABLE_SUMMARY','List of pages on this server');
define('TABLE_HEADING_HITS_TITLE','Hits');
define('TABLE_HEADING_REVISIONS_TITLE','Sort by number of revisions (DEBUG ONLY)');
define('TABLE_HEADING_COMMENTS_TITLE','Comments');
define('TABLE_HEADING_BACKLINKS_TITLE','Backlinks');
define('TABLE_HEADING_REFERRERS_TITLE','Referrers');
define('TABLE_HEADING_HITS_ALT','Hits');
define('TABLE_HEADING_REVISIONS_ALT','Revisions');
define('TABLE_HEADING_COMMENTS_ALT','Comments');
define('TABLE_HEADING_BACKLINKS_ALT','Backlinks');
define('TABLE_HEADING_REFERRERS_ALT','Referrers');
define('TABLE_HEADING_ACTIONS','Actions');
define('ACTION_EDIT_LINK_TITLE','Edit %s');
define('ACTION_DELETE_LINK_TITLE','Delete %s');
define('ACTION_CLONE_LINK_TITLE','Clone %s');
define('ACTION_RENAME_LINK_TITLE','Rename %s (DISABLED)');
define('ACTION_ACL_LINK_TITLE','Change Access Control List for %s');
define('ACTION_INFO_LINK_TITLE','Display information and statistics for %s');
define('ACTION_EDIT_LINK','edit');
define('ACTION_DELETE_LINK','delete');
define('ACTION_CLONE_LINK','clone');
define('ACTION_RENAME_LINK','rename');
define('ACTION_ACL_LINK','acl');
define('ACTION_INFO_LINK','info');
define('TAKE_OWNERSHIP_LINK','Take ownership of');
define('NO_OWNER','(Nobody)');
define('TABLE_CELL_HITS_TITLE','Hits for %s (%d)');
define('TABLE_CELL_REVISIONS_TITLE','Display revisions for %s (%d)');
define('TABLE_CELL_COMMENTS_TITLE','Display comments for %s (%d)');
define('TABLE_CELL_BACKLINKS_TITLE','Display pages linking to %s (%d)');
define('TABLE_CELL_REFERRERS_TITLE','Display external sites linking to %s (%d)');
define('SELECT_RECORD_TITLE','Select %s');
define('NO_EDIT_NOTE','[No edit note]');
define('CHECK_ALL_TITLE','Check all records');
define('CHECK_ALL','Check all');
define('UNCHECK_ALL_TITLE','Uncheck all records');
define('UNCHECK_ALL','Uncheck all');
define('FORM_MASSACTION_LEGEND','Mass-action');
define('FORM_MASSACTION_LABEL','With selected');
define('FORM_MASSACTION_SELECT_TITLE','Choose action to apply to selected records (DISABLED)');
define('FORM_MASSACTION_OPT_DELETE','Delete all');
define('FORM_MASSACTION_OPT_CLONE','Clone all');
define('FORM_MASSACTION_OPT_RENAME','Rename all');
define('FORM_MASSACTION_OPT_ACL','Change Access Control List');
define('FORM_MASSACTION_SUBMIT','Submit');
define('ERROR_NO_MATCHES','Sorry, there are no pages matching "%s"');
// -------------------------------------
// Initialize variables
$r = 1; #initialize row counter
$r_color = ALTERNATE_ROW_COLOR; #get alternate row color option
$c_color = STAT_COLUMN_COLOR; #get column color option
// record dropdown
$page_limits = unserialize(DEFAULT_RECORDS_RANGE);
// pager
$prev = '';
$next = '';
//override defaults with action parameters
if (is_array($vars)) {
foreach ($vars as $param => $value){
switch ($param) {
case 'colcolor':
$c_color = (preg_match('/[01]/',$value))? $value : STAT_COLUMN_COLOR;
break;
case 'rowcolor':
$r_color = (preg_match('/[01]/',$value))? $value : ALTERNATE_ROW_COLOR;
break;
}
}
}
//perform mass-operations if required (forthcoming)
if (isset($_GET['action']))
{
if ($_GET['action'] == 'massdelete')
{
echo $this->Action('massdelete');
}
elseif ($_GET['action'] == 'massrename')
{
echo $this->Action('massrename');
}
elseif ($_GET['action'] == 'massacls')
{
echo $this->Action('massacls');
}
}
else
{
// process URL variables
# JW 2005-07-19 some modifications to avoid notices but these are still not actually secure
// number of records per page
if (isset($_POST['l']))
$l = $_POST['l'];
elseif (isset($_GET['l']))
$l = $_GET['l'];
else
$l = DEFAULT_RECORDS_LIMIT;
// sort field
$sort = (isset($_GET['sort'])) ? $_GET['sort'] : DEFAULT_SORT_FIELD;
// sort order
$d = (isset($_GET['d'])) ? $_GET['d'] : DEFAULT_SORT_ORDER;
// start record
$s = (isset($_GET['s'])) ? $_GET['s'] : DEFAULT_START;
// search string
if (isset($_POST['q']))
$q = $_POST['q'];
elseif (isset($_GET['q']))
$q = $_GET['q'];
else
$q = DEFAULT_SEARCH;
// select all added JW 2005-07-19
$checked = '';
if (isset($_GET['selectall']))
{
$checked = (1 == $_GET['selectall']) ? ' checked="checked"' : '';
}
// restrict MySQL query by search string modified JW 2005-07-19
$where = ('' == $q) ? "`latest` = 'Y'" : "`tag` LIKE '%".$q."%' AND `latest` = 'Y'";
// get total number of pages
$numpages = $this->getCount('pages',$where);
// print page header
echo $this->Format('==== '.PAGE_TITLE.' ==== --- ');
// build pager form
$form1 = $this->FormOpen('','','post','page_admin_panel');
$form1 .= '<fieldset><legend>'.FORM_LEGEND.'</legend>'."\n";
$form1 .= '<label for="q">'.FORM_SEARCH_STRING_LABEL.'</label> <input type ="text" id="q" name="q" title="'.FORM_SEARCH_STRING_TITLE.'" size="20" maxlength="50" value="'.$q.'"/> <input type="submit" value="'.FORM_SEARCH_SUBMIT.'" /><br />'."\n";
// ranged drop-down
$pages_opts = optionRanges($page_limits,$numpages,DEFAULT_MIN_RECORDS_DISPLAY);
$form1 .= '<label for="l">'.FORM_PAGER_LABEL_BEFORE.'</label> '."\n";
$form1 .= '<select name="l" id="l" title="'.FORM_PAGER_TITLE.'">'."\n";
// build drop-down
foreach ($pages_opts as $opt) {
$selected = ($opt == $l) ? ' selected="selected"' : '';
$form1 .= '<option value="'.$opt.'"'.$selected.'>'.$opt.'</option>'."\n";
}
$form1 .= '</select> <label for="l">'.FORM_PAGER_LABEL_AFTER.'</label> <input type="submit" value="'.FORM_PAGER_SUBMIT.'" /><br />'."\n";
// build pager links
if ($s > 0)
$prev = '<a href="' .$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.($s-$l)).'&q='.$q.'" title="'.sprintf(FORM_PAGER_LINK, ($s-$l+1), $s).'">'.($s-$l+1).'-'.$s.'</a> | '."\n";
if ($numpages > ($s + $l))
$next = ' | <a href="'.$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.($s+$l)).'&q='.$q.'" title="'.sprintf(FORM_PAGER_LINK, ($s+$l+1), ($s+2*$l)).'">'.($s+$l+1).'-'.($s+2*$l).'</a>'."\n";
$form1 .= FORM_RESULT_INFO.' ('.$numpages.'): '.$prev.($s+1).'-'.($s+$l).$next.'<br />'."\n";
$form1 .= '('.FORM_RESULT_SORTED_BY.'<em>'.$sort.', '.$d.'</em>)'."\n";
$form1 .= '</fieldset>'.$this->FormClose()."\n";
// print form
echo $form1;
// sort by counted values
switch($sort)
{
case 'edits': #alpha --- 'latest' needs to be disabled
//sample query:
//SELECT *, COUNT(*) as edits FROM `wikka1160_pages` GROUP BY tag ORDER BY edits DESC
$count = ', COUNT(*) as edits';
$group = 'GROUP BY tag';
$where = '1';
//$where = ('' == $q) ? "1" : "`tag` LIKE '%".$q."%'";
$table = 'pages';
break;
case 'comments': #to implement
/*
// SELECT wikka1160_pages.tag, COUNT( * ) AS comments FROM wikka1160_pages, wikka1160_comments WHERE wikka1160_pages.tag = wikka1160_comments.page_tag GROUP BY wikka1160_pages.tag ORDER BY comments DESC
$count = ', COUNT(*) as edits';
$group = 'GROUP BY tag';
$where = '1';
*/
break;
default:
$table = 'pages';
}
// get page list
$pagedata = $this->LoadAll("SELECT *".$count." FROM ".$this->config["table_prefix"].$table." WHERE ".
$where." ".$group." ORDER BY ".$sort." ".$d." LIMIT ".$s.", ".$l);
if ($pagedata)
{
// build table headers
$tagheader = '<a href="'.$this->Href('','', (($sort == 'tag' && $d == 'asc')? 'l='.$l.'&sort=tag&d=desc&q='.$q : 'l='.$l.'&sort=tag&d=asc&q='.$q)).'" title="'.TABLE_HEADING_PAGENAME_TITLE.'">'.TABLE_HEADING_PAGENAME.'</a>';
$ownerheader = '<a href="'.$this->Href('','', (($sort == 'owner' && $d == 'asc')? 'l='.$l.'&sort=owner&d=desc&q='.$q : 'l='.$l.'&sort=owner&d=asc&q='.$q)).'" title="'.TABLE_HEADING_OWNER_TITLE.'">'.TABLE_HEADING_OWNER.'</a>';
$userheader = '<a href="'.$this->Href('','', (($sort == 'user' && $d == 'asc')? 'l='.$l.'&sort=user&d=desc&q='.$q : 'l='.$l.'&sort=user&d=asc&q='.$q)).'" title="'.TABLE_HEADING_LASTAUTHOR_TITLE.'">'.TABLE_HEADING_LASTAUTHOR.'</a>';
$lasteditheader = '<a href="'.$this->Href('','', (($sort == 'time' && $d == 'desc')? 'l='.$l.'&sort=time&d=asc&q='.$q : 'l='.$l.'&sort=time&d=desc&q='.$q)).'" title="'.TABLE_HEADING_LASTEDIT_TITLE.'">'.TABLE_HEADING_LASTEDIT.'</a>';
$revisionsheader = '<a href="'.$this->Href('','', (($sort == 'edits' && $d == 'desc')? 'l='.$l.'&sort=edits&d=asc&q='.$q : 'l='.$l.'&sort=edits&d=desc&q='.$q)).'" title="'.TABLE_HEADING_REVISIONS_TITLE.'"><img src="'.REVISIONS_ICON.'" alt="'.TABLE_HEADING_REVISIONS_ALT.'"/></a>';
$htmlout = "<table summary=\"".TABLE_SUMMARY."\" border=\"1px\" id=\"admin_table\">\n".
"<thead>\n<tr>\n".
" <th> </th>\n".
" <th>".$tagheader."</th>\n".
" <th>".$ownerheader."</th>\n".
" <th>".$userheader."</th>\n".
" <th>".$lasteditheader."</th>\n".
" <th class=\"number ".(($c_color == 1)? ' c1' : '')."\" title=\"".TABLE_HEADING_HITS_TITLE."\"><img src=\"".HITS_ICON."\" alt=\"".TABLE_HEADING_HITS_ALT."\"/></th>\n".
" <th class=\"number ".(($c_color == 1)? ' c2' : '')."\" title=\"".TABLE_HEADING_REVISIONS_TITLE."\">".$revisionsheader."</th>\n".
" <th class=\"number ".(($c_color == 1)? ' c3' : '')."\" title=\"".TABLE_HEADING_COMMENTS_TITLE."\"><img src=\"".COMMENTS_ICON."\" alt=\"".TABLE_HEADING_COMMENTS_ALT."\"/></th>\n".
" <th class=\"number ".(($c_color == 1)? ' c4' : '')."\" title=\"".TABLE_HEADING_BACKLINKS_TITLE."\"><img src=\"".BACKLINKS_ICON."\" alt=\"".TABLE_HEADING_BACKLINKS_ALT."\"/></th>\n".
" <th class=\"number ".(($c_color == 1)? ' c5' : '')."\" title=\"".TABLE_HEADING_REFERRERS_TITLE."\"><img src=\"".REFERRERS_ICON."\" alt=\"".TABLE_HEADING_REFERRERS_ALT."\"/></th>\n".
" <th class=\"center\">".TABLE_HEADING_ACTIONS."</th>\n".
" </tr>\n</thead>\n";
// feed table with data
foreach($pagedata as $page)
{
// truncate long page names
$pagename = (strlen($page['tag']) > DEFAULT_TAG_LENGTH) ? substr($page['tag'], 0, DEFAULT_TAG_LENGTH).DEFAULT_TERMINATOR : $page['tag'];
// build handler links
$lastedit = $page['time'];
if ($pagename != $page['tag'])
{
$showpage = '<a href="'.$this->Href('',$page['tag'], '').'" title="'.$page['tag'].'">'.$pagename.'</a>';
}
else
{
$showpage = '<a href="'.$this->Href('',$page['tag'], '').'">'.$pagename.'</a>';
}
$editpage = '<a href="'.$this->Href('edit',$page['tag'], '').'" title="'.sprintf(ACTION_EDIT_LINK_TITLE, $page['tag']).'">'.ACTION_EDIT_LINK.'</a>';
$deletepage = '<a href="'.$this->Href('delete',$page['tag'], '').'" title="'.sprintf(ACTION_DELETE_LINK_TITLE, $page['tag']).'">'.ACTION_DELETE_LINK.'</a>';
$clonepage = '<a href="'.$this->Href('clone',$page['tag'], '').'" title="'.sprintf(ACTION_CLONE_LINK_TITLE, $page['tag']).'">'.ACTION_CLONE_LINK.'</a>';
// renaming disabled
$renamepage = '<a href="'.$this->Href('rename',$page['tag'], '').'" title="'.sprintf(ACTION_RENAME_LINK_TITLE, $page['tag']).'">'.ACTION_RENAME_LINK.'</a>';
$aclpage = '<a href="'.$this->Href('acls',$page['tag'], '').'" title="'.sprintf(ACTION_ACL_LINK_TITLE, $page['tag']).'">'.ACTION_ACL_LINK.'</a>';
$infopage = '<a href="'.$this->Href('info',$page['tag'], '').'" title="'.sprintf(ACTION_INFO_LINK_TITLE, $page['tag']).'">'.ACTION_INFO_LINK.'</a>';
// get page owner
if ($page['owner'])
{
// is the owner a registered user?
if ($this->LoadUser($page['owner']))
{
// does user's homepage exist?
if ($this->ExistsPage($page['owner']))
{
$owner = $this->Link($page['owner']);
}
else
{
$owner = $page['owner'];
}
}
else
{
$owner = $page['owner'];
}
}
else
{
// page has empty owner field: print claim link
$owner = $this->Link($page['tag'], 'claim','(Nobody)','','',TAKE_OWNERSHIP_LINK.' '.$page['tag']);
}
// get last author
if ($page['user'])
{
// is the author a registered user?
if ($this->LoadUser($page['user']))
{
// does user's homepage exist?
if ($this->ExistsPage($page['user']))
{
$user = $this->Link($page['user']);
}
else
{
$user = $page['user'];
}
}
else
{
// truncate long host names
$user = (strlen($page['user']) > DEFAULT_URL_LENGTH) ? substr($page['user'], 0, DEFAULT_URL_LENGTH).DEFAULT_TERMINATOR : $page['user'];
# added JW 2005-07-19
if ($user != $page['user'])
{
$user = '<span title="'.$page['user'].'">'.$user.'</span>';
}
}
}
else
{
// page has empty user field
$user = NO_OWNER;
}
// get counts - JW 2005-07-19
$whereTag = "`tag` = '".$page['tag']."'";
$wherePageTag = "`page_tag` = '".$page['tag']."'";
$whereToTag = "`to_tag` = '".$page['tag']."'";
$hn = 0;
$rv = $this->getCount('pages',$whereTag);
$cn = $this->getCount('comments',$wherePageTag);
$bn = $this->getCount('links',$whereToTag);
$rn = $this->getCount('referrers',$wherePageTag);
// get page hits (forthcoming)
$hitspage = ($hn > 0) ? '<a href="'.$this->Href('hits',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_HITS_TITLE, $page['tag'], $hn).'">'.$hn.'</a>' : '0';
// get page revisions and create revision link if needed
$revpage = ($rv > 0) ? '<a href="'.$this->Href('revisions',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_REVISIONS_TITLE, $page['tag'], $rv).'">'.$rv.'</a>' : '0';
// get page comments and create comments link if needed
$commentspage = ($cn > 0) ? '<a href="'.$this->Href('',$page['tag'], 'show_comments=1#comments').'" title="'.sprintf(TABLE_CELL_COMMENTS_TITLE, $page['tag'], $cn).'">'.$cn.'</a>' : '0';
// get page backlinks and create backlinks link
$backlinkpage = ($bn > 0) ? '<a href="'.$this->Href('backlinks',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_BACKLINKS_TITLE, $page['tag'], $bn).'">'.$bn.'</a>' : '0';
// get page referrers and create referrer link
$refpage = ($rn > 0) ? '<a href="'.$this->Href('referrers',$page['tag'], '').'" title="'.sprintf(TABLE_CELL_REFERRERS_TITLE, $page['tag'], $rn).'">'.$rn.'</a>' : '0';
// build table body
$htmlout .= "<tbody>\n";
if ($r_color == 1) {
$htmlout .= "<tr ".(($r%2)? '' : 'class="alt"').">\n"; #enable alternate row color
} else {
$htmlout .= "<tr>\n"; #disable alternate row color
}
$htmlout .=" <td><input type=\"checkbox\" name=\"id_".$page['id']."\"".$checked." title=\"".sprintf(SELECT_RECORD_TITLE, $page['tag'])."\"/></td>\n". # modified JW 2005-07-19
" <td>".$showpage."</td>\n".
" <td>".$owner."</td>\n".
" <td>".$user."</td>\n".
" <td class=\"time\" ".((strlen($page['note'])>0)? 'title="['.$page['note'].']"' : 'title="'.NO_EDIT_NOTE.'"').">".$lastedit."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c1' : '')."\">".$hitspage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c2' : '')."\">".$revpage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c3' : '')."\">".$commentspage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c4' : '')."\">".$backlinkpage."</td>\n".
" <td class=\"number ".(($c_color == 1)? ' c5' : '')."\">".$refpage."</td>\n".
" <td class=\"center \">".$editpage." :: ".$deletepage." :: ".$clonepage." :: "./*$renamepage*." :: ".*/$aclpage." :: ".$infopage."</td>\n".
" </tr>\n</tbody>\n";
//increase row counter ----- alternate row colors
if ($r_color == 1) $r++;
}
$htmlout .= '</table>'."\n";
// print the table
echo $this->FormOpen('','','get');
echo $htmlout;
// multiple-page operations (forthcoming) JW 2005-07-19 accesskey removed (causes more problems than it solves)
echo '<fieldset><legend>'.FORM_MASSACTION_LEGEND.'</legend>';
echo '[<a href="'.$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.$s.'&q='.$q.'&selectall=1').'" title="'.CHECK_ALL_TITLE.'">'.CHECK_ALL.'</a> | <a href="'.$this->Href('','','l='.$l.'&sort='.$sort.'&d='.$d.'&s='.$s.'&q='.$q.'&selectall=0').'" title="'.UNCHECK_ALL_TITLE.'">'.UNCHECK_ALL.'</a>]<br />';
echo '<label for="action" >'.FORM_MASSACTION_LABEL.'</label> <select title="'.FORM_MASSACTION_SELECT_TITLE.'" id="action" name="action">';
echo '<option value="" selected="selected">---</option>';
echo '<option value="massdelete">'.FORM_MASSACTION_OPT_DELETE.'</option>';
echo '<option value="massclone">'.FORM_MASSACTION_OPT_CLONE.'</option>';
echo '<option value="massrename">'.FORM_MASSACTION_OPT_RENAME.'</option>';
echo '<option value="massacls">'.FORM_MASSACTION_OPT_ACL.'</option>';
echo '</select> <input type="submit" value="'.FORM_MASSACTION_SUBMIT.'" />';
echo '</fieldset>';
echo $this->FormClose();
}
else
{
// no records matching the search string: print error message
echo '<p><span class="error">'.sprintf(ERROR_NO_MATCHES, $q).'</span></p>';
}
}
}
else
{
// current user is not admin: show plain page index
echo $this->Action('pageindex');
}
?>
%%
===New CSS classes===
The styling of the tables requires a bunch of [[TableStyling new CSS classes]].
----
==== Styling options ====
The ##pageadmin## action accepts two optional styling parameters:
##colcolor##
Enables color for statistics columns
1: enables colored columns (default);
0: disables colored columns;
##rowcolor##
Enables alternate row colors
1: enables colored rows (default);
0: disables colored rows;
The following examples show how the table is rendered using these two parameters:
**No styling:** ##""{{pageadmin colcolor="0" rowcolor="0"}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr>
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
**Alternate rows only:** ##""{{pageadmin colcolor="0"}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number">0</td>
<td class="number"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
**Colored columns only:** ##""{{pageadmin rowcolor="0"}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number c1" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number c2" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number c3" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number c4" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number c5" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr>
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
**Alternate rows and colored columns:** ##""{{pageadmin}}""##
""<table summary="List of pages on this server" border="1px" id="admin_table">
<thead>
<tr>
<th> </th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=tag&d=asc&q=" title="Sort by page name">Page Name</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=owner&d=asc&q=" title="Sort by page owner">Owner</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=user&d=asc&q=" title="Sort by last author">Last Author</a></th>
<th><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=time&d=asc&q=" title="Sort by edit time">Last Edit</a></th>
<th class="number c1" title="Hits"><img src="images/icons/16x16/stock_about.png" alt="Hits"/></th>
<th class="number c2" title="Sort by number of revisions (DEBUG ONLY)"><a href="http://wikka.jsnx.com/PageAdminTest?l=20&sort=edits&d=desc&q=" title="Sort by number of revisions (DEBUG ONLY)"><img src="images/icons/16x16/stock_book_open.png" alt="Revisions"/></a></th>
<th class="number c3" title="Comments"><img src="images/icons/16x16/stock_help-agent.png" alt="Comments"/></th>
<th class="number c4" title="Backlinks"><img src="images/icons/16x16/stock_link.png" alt="Backlinks"/></th>
<th class="number c5" title="Referrers"><img src="images/icons/16x16/stock_internet.png" alt="Referrers"/></th>
<th class="center">Actions</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="id_10356" title="Select UserAdmin"/></td>
<td><a href="http://wikka.jsnx.com/UserAdmin">UserAdmin</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[improved version of UserAdmin (1.2)]">2005-08-01 14:48:30</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/UserAdmin/revisions" title="Display revisions for UserAdmin (57)">57</a></td>
<td class="number c3"><a href="http://wikka.jsnx.com/UserAdmin?show_comments=1#comments" title="Display comments for UserAdmin (7)">7</a></td>
<td class="number c4"><a href="http://wikka.jsnx.com/UserAdmin/backlinks" title="Display pages linking to UserAdmin (19)">19</a></td>
<td class="number c5"><a href="http://wikka.jsnx.com/UserAdmin/referrers" title="Display external sites linking to UserAdmin (54)">54</a></td>
<td class="center "><a href="http://wikka.jsnx.com/UserAdmin/edit" title="Edit UserAdmin">edit</a> :: <a href="http://wikka.jsnx.com/UserAdmin/delete" title="Delete UserAdmin">delete</a> :: <a href="http://wikka.jsnx.com/UserAdmin/clone" title="Clone UserAdmin">clone</a> :: <a href="http://wikka.jsnx.com/UserAdmin/acls" title="Change Access Control List for UserAdmin">acl</a> :: <a href="http://wikka.jsnx.com/UserAdmin/info" title="Display information and statistics for UserAdmin">info</a></td>
</tr>
</tbody>
<tbody>
<tr class="alt">
<td><input type="checkbox" name="id_10355" title="Select LastUsers"/></td>
<td><a href="http://wikka.jsnx.com/LastUsers">LastUsers</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[new]">2005-08-01 14:44:39</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/LastUsers/revisions" title="Display revisions for LastUsers (1)">1</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/LastUsers/backlinks" title="Display pages linking to LastUsers (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/LastUsers/edit" title="Edit LastUsers">edit</a> :: <a href="http://wikka.jsnx.com/LastUsers/delete" title="Delete LastUsers">delete</a> :: <a href="http://wikka.jsnx.com/LastUsers/clone" title="Clone LastUsers">clone</a> :: <a href="http://wikka.jsnx.com/LastUsers/acls" title="Change Access Control List for LastUsers">acl</a> :: <a href="http://wikka.jsnx.com/LastUsers/info" title="Display information and statistics for LastUsers">info</a></td>
</tr>
</tbody>
<tbody>
<tr >
<td><input type="checkbox" name="id_10352" title="Select TableStyling"/></td>
<td><a href="http://wikka.jsnx.com/TableStyling">TableStyling</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td><a href="http://wikka.jsnx.com/DarTar" title=" ">DarTar</a></td>
<td class="time" title="[adding see also box]">2005-08-01 14:37:32</td>
<td class="number c1">0</td>
<td class="number c2"><a href="http://wikka.jsnx.com/TableStyling/revisions" title="Display revisions for TableStyling (2)">2</a></td>
<td class="number c3">0</td>
<td class="number c4"><a href="http://wikka.jsnx.com/TableStyling/backlinks" title="Display pages linking to TableStyling (1)">1</a></td>
<td class="number c5">0</td>
<td class="center "><a href="http://wikka.jsnx.com/TableStyling/edit" title="Edit TableStyling">edit</a> :: <a href="http://wikka.jsnx.com/TableStyling/delete" title="Delete TableStyling">delete</a> :: <a href="http://wikka.jsnx.com/TableStyling/clone" title="Clone TableStyling">clone</a> :: <a href="http://wikka.jsnx.com/TableStyling/acls" title="Change Access Control List for TableStyling">acl</a> :: <a href="http://wikka.jsnx.com/TableStyling/info" title="Display information and statistics for TableStyling">info</a></td>
</tr>
</tbody>
</table>""
----
CategoryDevelopmentActions CategoryDevelopmentAdmin
Deletions:
This is the development page for the Page Administration action. The Page Administration module has been committed to the [[http://wush.net/websvn/wikka/listing.php?repname=wikka