Comparing revisions for PageAdminAction
- [16997] 2007-05-31 23:27:33 by GiorgosKontopoulos (unregistered user) [Reverted]
- [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.
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, 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.
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, 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