Changeset 14
- Timestamp:
- 01/20/06 17:46:37 (3 years ago)
- Files:
-
- trunk/agree.pl (modified) (1 diff)
- trunk/email-submit.pl (modified) (1 diff)
- trunk/email.html (modified) (1 diff)
- trunk/rtNoAuth/changeshown.html (modified) (8 diffs)
- trunk/rtNoAuth/Elements/ShowLink (modified) (3 diffs)
- trunk/rtNoAuth/Logout.html (modified) (2 diffs)
- trunk/rtNoAuth/readsay.html (modified) (6 diffs)
- trunk/rtNoAuth/submitcomment.html (modified) (4 diffs)
- trunk/rtNoAuth/xmlresults.html (modified) (8 diffs)
- trunk/stet-devel.js (modified) (13 diffs)
- trunk/stet-quickhl.js (modified) (1 diff)
- trunk/stet-sarissa.js (modified) (1 diff)
- trunk/stet.css (modified) (2 diffs)
- trunk/stet.js (modified) (5 diffs)
- trunk/stetsubs.pl (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/agree.pl
r13 r14 45 45 if (($name, $pass) = split(/:/, decode_base64(cookie('__ac')))) { 46 46 $name =~ s/\"//g; 47 $server = Frontier::Client->new(url => 'http:// stet_auth:fai1Iegh@gplv3.fsf.org:8800/launch/acl_users/Users/acl_users',48 username => " stet_auth",49 password => " fai1Iegh");47 $server = Frontier::Client->new(url => 'http://', 48 username => "", 49 password => ""); 50 50 51 51 trunk/email-submit.pl
r10 r14 64 64 65 65 #$server = Frontier::Client->new(url => "http://gplv3.fsf.org:8800/launch/acl_users/Users/acl_users", 66 # username => " stet_auth",67 # password => " fai1Iegh");66 # username => "" 67 # password => ""); 68 68 69 # url => "https://www.fsf.org:443/acl_users/Users/acl_users",70 # username => "gplv3_xmlrpc",71 # password => "ooPh2aem");72 69 73 70 #$resp = $server->call('getUsers'); trunk/email.html
r13 r14 1 1 <html> 2 2 <head> 3 <title> read GPLv3 comments:</title>3 <title>how to email your comments on the gplv3</title> 4 4 <link rel="stylesheet" type="text/css" href="/comments/stet.css"/> 5 5 </head> trunk/rtNoAuth/changeshown.html
r12 r14 1 1 %# {{{ BEGIN BPS TAGGED BLOCK 2 2 %# 3 %# COPYRIGHT:4 %#5 3 %# Copyright (C) 2006 Software Freedom Law Center, Inc. 6 4 %# Modified-By: Orion Montoya <orion@mdcclv.com> … … 26 24 %# along with this software. If not, see <http://www.gnu.org/licenses/>. 27 25 %# 26 %# COPYRIGHT: 27 %# 28 28 %# This software is Copyright (c) 1996-2004 Best Practical Solutions, LLC 29 29 %# <jesse@bestpractical.com> … … 49 49 %# 50 50 %# 51 %# CONTRIBUTION SUBMISSION POLICY:52 %#53 %# (The following paragraph is not intended to limit the rights granted54 %# to you to modify and distribute this software under the terms of55 %# the GNU General Public License and is only of importance to you if56 %# you choose to contribute your changes and enhancements to the57 %# community by submitting them to Best Practical Solutions, LLC.)58 %#59 %# By intentionally submitting any modifications, corrections or60 %# derivatives to this work, or any other work intended for use with61 %# Request Tracker, to Best Practical Solutions, LLC, you confirm that62 %# you are the copyright holder for those contributions and you grant63 %# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,64 %# royalty-free, perpetual, license to use, copy, create derivative65 %# works based on those contributions, and sublicense and distribute66 %# those contributions and any derivatives thereof.67 %#68 51 %# }}} END BPS TAGGED BLOCK 69 52 % … … 71 54 <head> 72 55 <title>gpl comment system - query builder</title> 73 %# <link rel="stylesheet" href="/rt/NoAuth/webrt.css" type="text/css">74 56 <script type="text/javascript" src="/comments/stet.js"></script> 57 <link rel="stylesheet" type="text/css" href="/comments/stet.css"/> 75 58 </head> 76 59 <body> 77 <FORM METHOD="GET" ACTION="/rt/NoAuth/changeshown.html" NAME="BuildQuery"> 78 <input type=hidden name=SearchId value="<%$SearchId%>"> 79 <input type=hidden name=Query value="<%$Query%>"> 80 %# <input type=hidden name=Format value="<%$Format%>"> 60 <div id="topbar" class="topbar"> 61 <span id="statustext" class="statustext">Select what you want to search for</span> 62 % my ($CurrentUser, $resp, $name) = getUser("foo"); 63 % if ($name) { 64 <span id="login" class="login">you are <% $name %>: <a href="http://gplv3.fsf.org/logout">logout</a></span></div> 65 % } else { 66 </span><span id="login" class="login">you could <a href="http://gplv3.fsf.org/login_form?came_from=/comments/rt/changeshown.html">login</a></span></div> 67 % } 68 <& header.html &> 69 <div id="maintext"> 70 <FORM METHOD="GET" ACTION="/comments/rt/changeshown.html" NAME="BuildQuery"> 71 <input type=hidden name=SearchId value="new"> 72 <input type=hidden name=Query value=""> 81 73 % my $qs; 82 % if (!$ came_from) {74 % if (!$ARGS{'came_from'}) { 83 75 % $qs = $ENV{'HTTP_REFERER'}; 84 76 % $qs =~ s/(.*)\?.*/$1/; 85 % # print STDERR "s-b-q qs $qs\n";86 % # print STDERR "s-b-q H_R ".$ENV{'HTTP_REFERER'}."\n";87 % # print STDERR "s-b-q Q_S ".$ENV{'QUERY_STRING'}."\n";77 % $qs =~ s/.*\/(.*)/$1/; 78 % } else { 79 % $qs = $ARGS{'came_from'}; 88 80 % } 89 % else { 90 % $qs = $came_from; 91 % } 81 % $qs =~ s/(.html|.xml)$//; 82 <h3 class="searchheader">Search for comments on <% $qs %></h3> 92 83 <input type=hidden name="came_from" value="<% $qs %>"> 93 <% $qs %>94 84 <table> 95 85 <tr> 96 86 <td valign=top class="boxcontainer"> 97 <& Elements/PickCriteria, query => $Query, cfqueues => \%queues &> 98 <& /Elements/Submit, Caption => "Do the Search", Label => loc('Search'), Name => 'DoSearch'&> 99 <& /Elements/Submit, Caption => loc('Add additional criteria'), Label => loc('Add'), Name => 'AddClause'&> 100 <input type=hidden name=" 101 87 <p>Aggregator:<input type=radio NAME="AndOr" CHECKED VALUE="AND">AND</input> 88 <input type=radio NAME="AndOr" VALUE="OR">OR</input> 89 </p> 90 <tr><td> 91 <tr><td align=right> 92 <SELECT NAME="AttachmentField"> 93 <OPTION VALUE="Content">Comment</OPTION> 94 <OPTION VALUE="Subject">Subject</OPTION> 95 </SELECT> 96 </td><td> 97 <SELECT NAME ="AttachmentOp"> 98 <OPTION VALUE="LIKE" SELECTED>contains</OPTION> 99 <OPTION VALUE="NOT LIKE" >does not contain</OPTION> 100 </SELECT> 101 </td><td> 102 <Input Name="ValueOfAttachment" Size=20> 103 </td></tr> 104 105 <tr><td align=right> 106 Type 107 </td><td> 108 <SELECT NAME ="QueueOp"> 109 <OPTION VALUE="=" SELECTED>is</OPTION> 110 <OPTION VALUE="!=" >isn't</OPTION> 111 </SELECT> 112 </td><td> 113 <SELECT NAME ="ValueOfQueue"> 114 <OPTION VALUE="">-</OPTION> 115 <OPTION VALUE="Inbox" >Inbox 116 </OPTION> 117 <OPTION VALUE="Issues" >Issues 118 </OPTION> 119 </SELECT> 120 </td></tr> 121 122 <tr><td class="label" align="right"> 123 <SELECT NAME="ActorField"> 124 <OPTION VALUE="Creator">Submitter</OPTION> 125 </SELECT> 126 </td><td> 127 <SELECT NAME ="ActorOp"> 128 <OPTION VALUE="=" SELECTED>is</OPTION> 129 <OPTION VALUE="!=" >isn't</OPTION> 130 </SELECT> 131 </td><td> 132 <Input type="text" NAME="ValueOfActor" size=20> 133 </td></tr> 134 135 <tr><td align=right> 136 <SELECT NAME="DateField"> 137 <OPTION VALUE="Created">Created</OPTION> 138 <OPTION VALUE="LastUpdated">Last Updated</OPTION> 139 <OPTION VALUE="Updated">Updated</OPTION> 140 </SELECT> 141 </td><td> 142 <SELECT NAME ="DateOp"> 143 <OPTION VALUE="<">Before</OPTION> 144 <OPTION VALUE="=">On</OPTION> 145 <OPTION VALUE=">">After</OPTION> 146 </SELECT> 147 </td><td> 148 <INPUT NAME="ValueOfDate" VALUE="" size=16> 149 </td></tr> 150 151 <tr><td align=right> 152 <SELECT NAME="LinksField"> 153 <OPTION VALUE="HasMember">Is a parent/Issue of</OPTION> 154 <OPTION VALUE="MemberOf">Is a child of/belongs to Issue</OPTION> 155 <OPTION VALUE="RefersTo">Links to external object</OPTION> 156 </SELECT> 157 </td><td> 158 <SELECT NAME ="LinksOp"> 159 <OPTION VALUE="LIKE" SELECTED>contains</OPTION> 160 <OPTION VALUE="NOT LIKE" >doesn't contain</OPTION> 161 </SELECT> 162 </td><td> 163 <INPUT Name="ValueOfLinks" value="" SIZE=5> 164 </td></tr> 165 <tr><td align=right> 166 Id 167 </td><td> 168 <SELECT NAME ="idOp"> 169 <OPTION VALUE="<" 170 >less than</OPTION> 171 <OPTION VALUE="=" 172 >equal to</OPTION> 173 <OPTION VALUE=">" 174 >greater than</OPTION> 175 <OPTION VALUE="!=" 176 >not equal to</OPTION> 177 </SELECT> 178 </td><td> 179 <INPUT Name="ValueOfid" SIZE=5> 180 </td></tr> 181 182 183 <tr><td class=label align="right"> 184 Text selected for comment 102 185 </td> 103 <td valign=top class="boxcontainer"> 104 <& /Elements/TitleBoxStart, title => loc("Query") . ": " .$Description &> 105 <& Elements/NewListActions, actions => \@actions &> 106 <select size="10" name="clauses" style="width: 100%"> 107 <%$optionlist|n%> 186 <td> 187 <SELECT NAME ="'CF.NoteSelection'Op"> 188 <OPTION VALUE="LIKE" 189 >contains</OPTION> 190 <OPTION VALUE="NOT LIKE" 191 >doesn't contain</OPTION> 192 <OPTION VALUE="=" 193 >is</OPTION> 194 <OPTION VALUE="!=" 195 >isn't</OPTION> 196 </SELECT> 197 </td> 198 <td> 199 <input name="ValueOf'CF.NoteSelection'" size="20"> 200 </td></tr> 201 202 <tr><td class=label align="right"> 203 Filename commented on 204 </td> 205 <td> 206 <SELECT disabled NAME ="'CF.NoteUrl'Op"> 207 <OPTION VALUE="LIKE" 208 >matches</OPTION> 209 <OPTION VALUE="NOT LIKE" 210 >doesn't contain</OPTION> 211 <OPTION VALUE="=" 212 >is</OPTION> 213 <OPTION VALUE="!=" 214 >isn't</OPTION> 215 <OPTION VALUE="<" 216 >less than</OPTION> 217 <OPTION VALUE=">" 218 >greater than</OPTION> 219 </SELECT> 220 </td> 221 <td> 222 <input disabled name="ValueOf'CF.NoteUrl'" size="20" value="<% $qs %>"> 223 </td></tr> 224 225 <input type="hidden" NAME="'CF.NoteUrl'Op" VALUE="LIKE"> 226 <input type="hidden" name="ValueOf'CF.NoteUrl'" value="<% $qs %>"> 227 228 229 230 <tr><td class=label align="right"> 231 Section id 232 </td> 233 <td> 234 <SELECT NAME ="'CF.NoteStartNodeId'Op"> 235 <OPTION VALUE="LIKE" 236 >contains</OPTION> 237 <OPTION VALUE="NOT LIKE" 238 >doesn't contain</OPTION> 239 <OPTION VALUE="=" 240 >is</OPTION> 241 <OPTION VALUE="!=" 242 >isn't</OPTION> 243 <OPTION VALUE="<" 244 >less than</OPTION> 245 <OPTION VALUE=">" 246 >greater than</OPTION> 247 </SELECT> 248 </td> 249 <td> 250 <input name="ValueOf'CF.NoteStartNodeId'" size="20"> 251 </td></tr> 252 253 <tr><td class=label align="right"> 254 255 Agreeers 256 </td> 257 <td> 258 <SELECT NAME ="'CF.Agreeers'Op"> 259 <OPTION VALUE="LIKE" 260 >contains</OPTION> 261 <OPTION VALUE="NOT LIKE" 262 >doesn't contain</OPTION> 263 <OPTION VALUE="=" 264 >is</OPTION> 265 <OPTION VALUE="!=" 266 >isn't</OPTION> 267 <OPTION VALUE="<" 268 >less than</OPTION> 269 <OPTION VALUE=">" 270 >greater than</OPTION> 271 </SELECT> 272 </td> 273 <td> 274 <input name="ValueOf'CF.Agreeers'" size="20"> 275 </td></tr> 276 277 <tr><td class=label align="right"> 278 DiscussionGroup 279 </td> 280 <td> 281 <SELECT NAME ="'CF.DiscussionGroup'Op"> 282 <OPTION VALUE="LIKE" 283 >contains</OPTION> 284 <OPTION VALUE="NOT LIKE" 285 >doesn't contain</OPTION> 286 <OPTION VALUE="=" 287 >is</OPTION> 288 <OPTION VALUE="!=" 289 >isn't</OPTION> 290 <OPTION VALUE="<" 291 >less than</OPTION> 292 <OPTION VALUE=">" 293 >greater than</OPTION> 294 </SELECT> 295 </td> 296 <td> 297 <select name="ValueOf'CF.DiscussionGroup'"> 298 <option value="" SELECTED>-</option> 299 <option value="NULL">(no value)</option> 300 <option value="A">A</option> 301 <option value="B">B</option> 302 <option value="C">C</option> 303 <option value="D">D</option> 304 <option value="E">E</option> 305 <option value="F">F</option> 108 306 </select> 109 </td></tr><tr><td bgcolor="#dddddd" colspan="2"> 110 <center> 111 <input type=submit name="Up" value="^"> 112 <input type=submit name="Down" value="v"> 113 <input type=submit name="Left" value="<"> 114 <input type=submit name="Right" value=">"> 115 <input type=submit name="DeleteClause" value="Delete"> 116 <br /> 117 <input type=submit name="Clear" value="Clear"> 118 <input type=submit name="Toggle" value="And/Or"> 119 %#<input type=submit name="EditQuery" value="Advanced"> 120 </center> 121 <& /Elements/TitleBoxEnd &> 122 <br> 123 <& Elements/EditSearches, CurrentSearch => $search_hash, Dirty => $dirty, SearchId => $SearchId &> 307 </td></tr> 308 <tr> 309 <td class=label align="right"> 310 Rows per page: 311 </td><td> 312 <SELECT NAME ="RowsPerPage"> 313 <OPTION VALUE="0" > 314 Unlimited 315 </OPTION> 316 <OPTION VALUE="10" > 317 10 318 </OPTION> 319 <OPTION VALUE="30" SELECTED> 320 30 321 </OPTION> 322 <OPTION VALUE="50" > 323 50 324 </OPTION> 325 <OPTION VALUE="100" > 326 100 327 </OPTION> 328 </SELECT> 124 329 </td> 125 330 </tr> 126 <tr> 127 <td colspan=2 class="boxcontainer"> 128 129 <& Elements/DisplayOptions, %ARGS, Format=> $Format, 130 AvailableColumns => $AvailableColumns, CurrentFormat => $CurrentFormat, RowsPerPage => $RowsPerPage, OrderBy => $OrderBy, Order => $Order &> 131 </td> 132 </tr> 331 332 133 333 </table> 334 335 <TABLE WIDTH=100% CELLSPACING=0 BORDER=0 CELLPADDING=0 > 336 <TR> 337 <TD> 338 339 </TD> 340 <TD ALIGN=RIGHT VALIGN=CENTER> 341 <B>Find comments</b> <INPUT TYPE=SUBMIT 342 NAME="DoSearch" 343 VALUE='Search'> 344 </TD> 345 </TR> 346 </TABLE> 347 348 </div> 349 134 350 </FORM> 135 351 </body> 352 </html> 136 353 <%INIT> 137 354 use Tree::Simple; 355 138 356 139 357 my $search_hash = {}; … … 173 391 $Description ||= $search_hash->{'Description'}; 174 392 $SearchId ||= $search_hash->{'SearchId'} || 'new'; 175 $Order ||= $search_hash->{'Order'} || ' ASC';393 $Order ||= $search_hash->{'Order'} || 'DESC'; 176 394 $OrderBy ||= $search_hash->{'OrderBy'} || 'id'; 177 $RowsPerPage = ($search_hash->{'RowsPerPage'} || 50) unless defined ($RowsPerPage);395 $RowsPerPage = ($search_hash->{'RowsPerPage'} || 30) unless defined ($RowsPerPage); 178 396 $search ||= $search_hash->{'Object'}; 179 397 # }}} … … 802 1020 # {{{ Show the results, if we were asked. 803 1021 if ( $ARGS{"DoSearch"} ) { 804 # $m->comp("stetwrap.html" , Query => $Query, Format => $Format, Order => $Order, OrderBy => $OrderBy, Rows => $RowsPerPage); 805 my $redirurl = "$came_from?Query=$Query&Order=$Order&OrderBy=$OrderBy&Rows=$RowsPerPage"; 1022 my $redirurl = "/comments/$came_from?Query=$Query&Order=$Order&OrderBy=$OrderBy&Rows=$RowsPerPage"; 806 1023 $m->redirect($redirurl); 807 1024 $m->abort(); … … 828 1045 829 1046 <%ARGS> 830 $NewQuery => 0831 1047 $SearchId => undef 832 1048 $Query => undef … … 835 1051 $Order => undef 836 1052 $OrderBy => undef 837 $RowsPerPage => undef1053 $RowsPerPage => 30 838 1054 $HideResults => 0 839 1055 $came_from => 'http://gplv3.fsf.org/comments/gplv3-draft-1.xml' 1056 $Delete => 1 1057 $NewQuery => 1 840 1058 </%ARGS> 1059 1060 trunk/rtNoAuth/Elements/ShowLink
r10 r14 44 44 %# 45 45 %# }}} END BPS TAGGED BLOCK 46 % if (!$StetId) { 46 47 <A href="<% $URI->Resolver->HREF %>"> 47 48 % if ($URI->IsLocal) { … … 49 50 % if (UNIVERSAL::isa($member, "RT::Ticket")) { 50 51 %# <%$member->Id%>: (<%$member->OwnerObj->Name%>) <%$member->Subject%> [<% loc($member->Status) %>] 51 <%$member->Id%>: (<%$member-> OwnerObj->Name%>) <%$member->Subject%>52 <%$member->Id%>: (<%$member->CreatorObj->Name%>) <%$member->Subject%> 52 53 % } elsif ( UNIVERSAL::can($member, 'Name')) { 53 54 <%$URI->Resolver->AsString%>: <%$member->Name%> … … 59 60 % } 60 61 </a> 62 % } else { 63 % my $member = $URI->Object; 64 <a href="/rt/NoAuth/readsay.html?id=<% $member->Id %>"><%$member->Id%>: (<%$member->CreatorObj->Name%>) <%$member->Subject%></a> 65 % } 61 66 <%ARGS> 62 67 $URI => undef 68 $StetId => undef 63 69 </%ARGS> trunk/rtNoAuth/Logout.html
r10 r14 50 50 </HEAD> 51 51 <BODY> 52 <p><&|/l&>You have been logged out of RT.</&> 53 52 <p><&|/l&>You have been logged out of RT.</&></p> 53 <p>You have not, however, been logged out of the rest of the gplv3 site; you probably should <a href="/logout">logout of GPLv3 site too</a>. 54 54 <br> 55 55 <br> … … 61 61 tied(%session)->delete; 62 62 } 63 $m->abort();63 # $m->abort(); 64 64 </%PERL> 65 65 trunk/rtNoAuth/readsay.html
r12 r14 28 28 </head> 29 29 <body> 30 <!-- <div id="maintext"> --> 30 <div id="topbar" class="topbar"> 31 <span id="statustext" class="statustext"> 31 32 % if ($Tickets) { 32 <h3> Showing comments where <% humanQuery($ARGS{'Query'}) |n %> <a class="rsslink" href="<% $rsslink %>">[rss]</a> <a href="/comments/<% $Tickets->First->FirstCustomFieldValue('NoteUrl') %>?Query=<% $ARGS{'Query'} %>">[see on license]</a><h3> 33 <h4>Found <% $Tickets->CountAll()%></h4> 33 Showing comments where <% humanQuery($ARGS{'Query'}) |n %> (Found <% $Tickets->CountAll()%>) <br/> <a class="rsslink" href="<% $rsslink %>">[rss]</a> <a href="/comments/<% stripCrap($Tickets->First->FirstCustomFieldValue('NoteUrl')) %>?Query=<% $ARGS{'Query'} %>">[see on license]</a> <a href="/comments/rt/changeshown.html?came_from=<% stripCrap($Tickets->First->FirstCustomFieldValue('NoteUrl')) %>">change</a> 34 34 % } else { 35 <h3> Showing comment <a href="/rt/NoAuth/readsay.html?id=<% $ARGS{'id'} %>"><% $ARGS{'id'} %></a> <a class="rsslink" href="<% $rsslink %>">[rss]</a> <a href="/comments/<% $Ticket->FirstCustomFieldValue('NoteUrl') %>?id=<% $ARGS{'id'} %>#<% $Ticket->FirstCustomFieldValue('NoteStartNodeId') %>">[see on license]</a></h3> 36 % } 35 Showing comment <a href="/comments/rt/readsay.html?id=<% $ARGS{'id'} %>"><% $ARGS{'id'} %></a> <a class="rsslink" href="<% $rsslink %>">[rss]</a> <a href="/comments/<% stripCrap($Ticket->FirstCustomFieldValue('NoteUrl')) %>?id=<% $ARGS{'id'} %>#<% $Ticket->FirstCustomFieldValue('NoteStartNodeId') %>">[see on license]</a> <a href="/comments/rt/changeshown.html?came_from=<% stripCrap($Ticket->FirstCustomFieldValue('NoteUrl')) %>">change</a> 36 % } 37 % if ($name) { 38 </span><span id="login" class="login">you are <% $name %>: <a href="http://gplv3.fsf.org/logout">logout</a></span></div> 39 % } else { 40 </span><span id="login" class="login">you could <a href="http://gplv3.fsf.org/login_form?came_from=/comments/rt/readsay.html?<% $Tickets ? 'Query='.$ARGS{'Query'} : 'id='.$ARGS{'id'} %>">login</a></span></div> 41 % } 42 <& header.html &> 43 <div id="readsaymain"> 44 <span id="listactions"> 45 <& Elements/ListActions, actions => \@results &> 46 </span> 37 47 % 38 48 % while (my $item = $Tickets ? $Tickets->Next : $Ticket) { 39 <div class="onecomment"> 40 <& /Elements/ListActions, actions => \@msgresults &> 41 <& /Elements/ListActions, actions => \@linkresults &> 42 <h4><% $thing %> <a href="readsay.html?id=<% $item->id %>"><% $item->id %>: <% $item->Subject %></a></h4> 43 <span class="tktheader">Regarding the text:</span> <span class="ontextText"><% $scrubber->scrub($item->FirstCustomFieldValue('NoteSelection')) %></span><br/> 44 In section: <span class="nodeLink"><% $scrubber->scrub($item->FirstCustomFieldValue('NoteStartNodeId')) %></span><br/> 45 Submitted by: <% $item->CreatorObj->Name %><br/> 46 % my ($agree,$agr_count) = showAgree(\$item); 47 % print STDERR "agree is $agree\n"; 48 <% $agree |n %><br/> 49 <span class="agreecount"><% $agr_count %> agree</span></span><br/> 50 comments: <% getThread(\$item) |n %><br/> 51 % if ($resp == 1) { 52 <form action="readsay.html" method="POST" name="TicketUpdate" enctype="multipart/form-data"> 53 <input type="hidden" name="id" value="<% $item->id %>"> 54 % } 55 % if (($makeissue) && ($item->Queue != $issuequeue)) { 56 <input type="checkbox" value="1" name="MakeIssue"/>Upgrade this to an Issue<br/> 57 % } 58 <span class="TktLabel">Parents</span> 59 % if (!$item->Members->GotoFirstItem) { 60 <em>this <% $thing %> does not have any parents </em><br/> 61 % } 62 % while (my $link = $item->MemberOf->Next) { 63 <& Elements/ShowLink, URI => $link->TargetURI &><span class="TktInput"> 64 % if ($resp == 1) { 65 <span class="TktInput indent">[delete: <INPUT TYPE=CHECKBOX NAME="DeleteLink--<%$link->Type%>-<%$link->Target%>" value="1">]</span> 66 % } 49 <div class="onecomment"> 50 51 <h4><% thingType(\$item) %> <a href="readsay.html?id=<% $item->id %>"><% $item->id %>: <% $item->Subject %></a></h4> 52 <span class="tktheader">Regarding the text:</span> <span class="ontextText"><% $scrubber->scrub($item->FirstCustomFieldValue('NoteSelection')) %></span><br/> 53 In section: <span class="nodeLink"><a href="/comments/rt/readsay.html?Query=%20'CF.NoteStartNodeId'%20LIKE%20'<% $scrubber->scrub($item->FirstCustomFieldValue('NoteStartNodeId')) %>'%20AND%20'CF.NoteUrl'%20LIKE%20'<%stripCrap($item->FirstCustomFieldValue('NoteUrl'))%>'%20"><% $scrubber->scrub($item->FirstCustomFieldValue('NoteStartNodeId')) %></a></span><br/> 54 %# In section: <span class="nodeLink"><a href="/comments/<%stripCrap($item->FirstCustomFieldValue('NoteUrl'))%>?Query=%20'CF.NoteStartNodeId'%20LIKE%20'<% $scrubber->scrub($item->FirstCustomFieldValue('NoteStartNodeId')) %>'%20AND%20'CF.NoteUrl'%20LIKE%20'<%stripCrap($item->FirstCustomFieldValue('NoteUrl'))%>'%20"><% $scrubber->scrub($item->FirstCustomFieldValue('NoteStartNodeId')) %></a></span><br/> 55 Submitted by: <a href="/comments/<%stripCrap($item->FirstCustomFieldValue('NoteUrl'))%>?Query=%20Requestor.Name%20LIKE%20'<% $item->CreatorObj->Name %>'%20AND%20'CF.NoteUrl'%20LIKE%20'<%stripCrap($item->FirstCustomFieldValue('NoteUrl'))%>'%20"><% $item->CreatorObj->Name %></a><br/> 56 %# my ($agrees,$agr_count) = showAgree(\$item); 57 %# print STDERR "agree is $agree\n"; 58 %# <% $agree |n %><br/> 59 %# <span class="agreecount"><% $agr_count %> agree</span></span><br/> 60 comments: <% getThread(\$item) |n %><br/> 61 % if ($Ticket) { 62 % if ($resp == 1) { 63 <form action="readsay.html" method="POST" name="TicketUpdate" enctype="multipart/form-data"> 64 <input type="hidden" name="id" value="<% $item->id %>"> 65 % } 66 <span class="TktLabel">Parents:</span> 67 % if ($item->MemberOf->GotoFirstItem) { 68 <em>this <% thingType(\$item) %> does not have any parents </em><br/> 69 % } 70 <br> 71 % while (my $link = $item->MemberOf->Next) { 72 <& Elements/ShowLink, URI => $link->TargetURI, StetId => $link->id &><span class="TktInput"> 73 % if ($HasIssueRights == 1) { 74 <span class="TktInput">[delete: <INPUT TYPE=CHECKBOX NAME="DeleteLink--<% $link->Type %>-<% $link->Target %>" value="1">]</span> 75 % } 76 <br/> 77 % } 78 % if ($HasIssueRights) { 79 <span class="TktInput indent">add new: <INPUT NAME="<% $item->id %>-MemberOf"> <span class="inputcaption">[comment id numbers, space separated]</span></span> 80 % } 81 <br/> 82 <span class="TktLabel">Children:</span> 83 % if ($item->Members->GotoFirstItem) { 84 <em>this <% thingType(\$item) %> does not have any children </em><br/> 85 % } 67 86 <br/> 68 % } 69 % if ($makeissue) { 70 <span class="TktInput indent">add new: <INPUT NAME="<% $item->id %>-MemberOf"> <span class="inputcaption">[comment id numbers, space separated]</span></span> 71 % } 87 % while (my $link = $item->Members->Next) { 88 <& Elements/ShowLink, URI => $link->BaseURI, StetId => $link->id &></span> 89 % if ($HasIssueRights) { 90 <span class="TktInput">[delete: <INPUT TYPE=CHECKBOX NAME="DeleteLink-<% $link->Base %>-<% $link->Type %>" value="1">]</span> 91 % } 92 <br/> 93 % } 94 % if ($HasIssueRights) { 95 <span class="TktInput indent">add new: <INPUT NAME="MemberOf-<% $item->id %>"> <span class="inputcaption">[comment id numbers, space separated]</span></span> 96 % } 97 <br/> 98 <span class="TktLabel">Links:</span> 99 % if ($item->RefersTo->GotoFirstItem) { 100 <em>this <% thingType(\$item) %> does not link to any external resources</em> 101 % } 72 102 <br/> 73 <span class="TicketLabel">Children: 74 % if (!$item->Members->GotoFirstItem) { 75 <em>this <% $thing %> does not have any children </em><br/> 76 % } 77 % while (my $link = $item->Members->Next) { 78 <& Elements/ShowLink, URI => $link->BaseURI &></span> 79 % if ($makeissue) { 80 <span class="TktInput indent">[delete: <INPUT TYPE=CHECKBOX NAME="DeleteLink-<%$link->Base%>-<%$link->Type%>-" value="1">]</span> 81 % } 103 % while (my $link = $item->RefersTo->Next) { 104 <A HREF="<% $link->Target %>"><% $link->Target %></A> 105 % if ($HasIssueRights) { 106 <span class="TktInput">[delete: <INPUT TYPE=CHECKBOX NAME="DeleteLink-<% $link->Base %>-<% $link->Type %>" value="1">]</span> 107 % } 82 108 <br/> 83 % } 84 % if ($makeissue) { 85 <span class="TktInput indent">add new: <INPUT NAME="MemberOf-<% $item->id %>"> <span class="inputcaption">[comment id numbers, space separated]</span></span> 86 </span><br/> 87 <span class="TktInput">link to external item(s): <INPUT NAME="<% $item->id %>-RefersTo"> <span class="inputcaption">[URIs with protocol://, space separated]</span></span> 88 % } 89 </span><br/> 90 % if ($resp == 1) { 91 <textarea class="messagebox" COLS=72 ROWS=15 WRAP=HARD NAME="UpdateContent" onfocus="if(this.value=='Enter additional comments here') {this.value='';}" onblur="if(this.value==''){this.value='Enter additional comments here';}"> 92 % if($ARGS{'addcomments'}) { 93 <% $ARGS{'addcomments'} %> 94 % } 95 % else { 96 Enter additional comments here 97 % } 98 </textarea><br/> 99 % if ($makeissue) { 100 <INPUT TYPE=SUBMIT NAME="SubmitTicket" VALUE='Make changes'></form> 101 % } else { 102 <INPUT TYPE=SUBMIT NAME="SubmitTicket" VALUE='Add comment'></form> 103 % } 104 <!-- </div> --> 105 % } 106 % $Ticket = ''; 107 % } 109 % } 108 110 % 111 % if ($HasIssueRights) { 112 <span class="TktInput indent">link to external item(s): <INPUT NAME="<% $item->id %>-RefersTo"> <span class="inputcaption">[URIs with protocol://, space separated]</span></span><br/> 113 % } 114 %#### customfield picker doesn't show which groups are related 115 % if ($HasIssueRights) { 116 % my $groupRows = 7; 117 % my $CustomField = RT::CustomField->new($CurrentUser); 118 % $CustomField->Load(8); 119 % my $Values = $item->CustomFieldValues($CustomField->id); 120 <br>  121 <span class="groupselect"><span class="TktLabel select">Discussion Groups</span> 122 % if (($HasIssueRights) && ($item->Queue != $issuequeue)) { 123 <input type="checkbox" value="1" name="MakeIssue"/><span class="TktLabel">Upgrade this to an Issue</span><br/> 124 % } 125 <br> 126 <input type="hidden" name="Ticket-<% $item->id %>-CustomField-<%$CustomField->Id%>-Values-Magic" value="1"> 127 <span class="TktInput indent"><select name="Ticket-<% $item->id %>-CustomField-<%$CustomField->Id%>-Values" 128 size="<%$groupRows%>" 129 <%$CustomField->Type eq 'SelectMultiple' && 'MULTIPLE'%>> 130 % my $CustomFieldValues = $CustomField->Values(); 131 % my $selected; 132 % while (my $value = $CustomFieldValues->Next) { 133 <option value="<%$value->Name%>" 134 % if ($item) { 135 <% $Values->HasEntry($value->Name) && ($selected = 1) && 'SELECTED' %> 136 % } 137 ><% $value->Name%></option> 138 % } 139 <option value="" <% !$selected && 'SELECTED' %>><&|/l&>(no value)</&></option> 140 </select><br/></span> 141 142 % } 143 % if ($resp == 1) { 144 <input type=hidden name="UpdateType" value="public"> 145 Add comments: <br/> 146 <textarea class="messagebox" COLS=72 ROWS=15 WRAP=HARD NAME="UpdateContent" onfocus="if(this.value=='Enter additional comments here') {this.value='';}" onblur="if(this.value==''){this.value='Enter additional comments here';}"></textarea><br/> 147 % if ($HasIssueRights) { 148 <INPUT TYPE=SUBMIT NAME="SubmitTicket" VALUE="Make changes"></form> 149 % } else { 150 <INPUT TYPE=SUBMIT NAME="SubmitTicket" VALUE="Add comment"></form> 151 % } 152 % } # should close "if $resp == 1" after picker 153 % } 154 </div> 155 % $Ticket = ""; 156 % } 157 </div> 109 158 </body> 110 159 </html> 111 %112 %113 %114 %115 160 <%INIT> 116 161 ###return if $m->cache_self(expire_in => '10 min', [key => 'fookey']); 117 162 use CGI qw/:standard/; 118 163 use HTML::Scrubber; 119 164 my $scrubber = HTML::Scrubber->new( allow => [ qw[ a b i u br ] ] ); 120 165 require "/var/www/stet/stetsubs.pl"; 121 my $issuequeue = 5; # I guess Issue will be queue 4... 122 sub debug { 123 print STDERR @_ . "\n"; 124 } 166 my $issuequeue = 5; 125 167 126 168 my ($name, $resp, $pass, $agr_vals, $CurrentUser, $thing); 127 ($CurrentUser, $resp) = getUser("foo"); 128 129 my $rsslink = "/rt/NoAuth/rssresults.rdf?id=".$ARGS{'id'}."&Query=".$ARGS{'Query'}; 130 131 my ($Tickets, $Ticket, $makeissue, @msgresults, @linkresults); 169 ($CurrentUser, $resp, $name) = getUser("foo"); 170 $CurrentUser = $session{'CurrentUser'}; 171 172 my $rsslink = "/comments/rt/rssresults.rdf?id=".$ARGS{'id'}."&Query=".$ARGS{'Query'}; 173 174 my ($Tickets, $Ticket, $HasIssueRights, @results, @msgresults, @linkresults, @cfresults); 132 175 133 176 if ($ARGS{'Query'}) { … … 139 182 $Ticket = RT::Ticket->new($CurrentUser); 140 183 $Ticket = LoadTicket($ARGS{'id'}); 141 if ($ARGS{' UpdateContent'}) {184 if ($ARGS{'SubmitTicket'}) { 142 185 ProcessUpdateMessage(TicketObj => $Ticket, ARGSRef=>\%ARGS, Actions=>\@msgresults); 143 } 186 @linkresults = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS); 187 @cfresults = ProcessTicketCustomFieldUpdates(TicketObj => $Ticket, ARGSRef => \%ARGS); 188 189 } 144 190 if ($ARGS{'MakeIssue'}) { 145 191 $Ticket->SetQueue($issuequeue); 146 192 } 147 @linkresults = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS); 193 foreach my $result (@msgresults,@linkresults,@cfresults) { 194 push @results,$result; 195 } 148 196 } 149 197 … … 160 208 ) 161 209 { 162 $ makeissue= 1;210 $HasIssueRights = 1; 163 211 } 164 else {$makeissue = '';} 165 if ($Ticket->Queue == 5) { 166 $thing = "issue"; 212 else {$HasIssueRights = '';} 213 214 sub thingType($) { 215 my $itemref = shift; 216 my $item = $$itemref; 217 if ($item->Queue == 5) { 218 return "issue"; 167 219 } 168 220 else { 169 $thing = "comment"; 221 return "comment"; 222 } 170 223 } 171 224 … … 175 228 my $Transactions = $item->Transactions; 176 229 my $allcomments = ''; 177 our $scrubber;230 my $scrubber = HTML::Scrubber->new( allow => [ qw[ a b i u br ] ] ); 178 231 while (my $Transaction = $Transactions->Next) { 179 232 next unless ($Transaction->Type =~ /^(Create|Correspond|Comment$)/); … … 189 242 $subj = $scrubber->scrub($message->Subject); 190 243 } 191 $cont = sprintf("%s",$message->Content);192 #if ($message->Content != '') {193 # $cont = $scrubber->scrub($cont);194 #}244 #$cont = sprintf("%s",$message->Content); 245 # if ($message->Content != '') { 246 $cont = $scrubber->scrub($message->Content); 247 # } 195 248 # if ($cont = $message->Content) { 196 249 # $cont = $scrubber->scrub($cont); 197 250 # } 198 251 199 $allcomments .= "<blockquote><h4>$subj</h4>\n".$ message->Content."<br/>\n";200 $allcomments .= "<span class=\"posted\">noted by user <span class=\"userlink\">".$message->CreatorObj->Name."</span></span>\n";252 $allcomments .= "<blockquote><h4>$subj</h4>\n".$cont."<br/>\n"; 253 $allcomments .= "<span class=\"posted\">noted by <span class=\"userlink\"><a href=\"/comments/".$item->FirstCustomFieldValue('NoteUrl')."?Query=%20Requestor.Name%20LIKE%20'".$message->CreatorObj->Name."'%20AND%20'CF.NoteUrl'%20LIKE%20'".$item->FirstCustomFieldValue('NoteUrl')."'%20\">".$message->CreatorObj->Name."</a></span></span>\n"; 201 254 } 202 255 $allcomments .= "</blockquote>" x $attachments->Count; … … 206 259 } 207 260 208 209 261 </%INIT> 262 <%ARGS> 263 $Rows => 30 264 $StartAt => 1 265 $Order => 'DESC' 266 </%ARGS> trunk/rtNoAuth/submitcomment.html
r10 r14 32 32 <i><% $startid %></i> 33 33 <e><% $endid %></e> 34 <n>Your comment was not saved. You need to <a href="http://gplv3.fsf.org :8800/launch/login_form?came_from=<% $urlpath %>">login</a> in order to make comments. The text of your comment was:<br/> <strong>Subject:</strong><% $notesubj %><br/><% $notetext %></n>34 <n>Your comment was not saved. You need to <a href="http://gplv3.fsf.org/login_form?came_from=<% $urlpath %>">login</a> in order to make comments. The text of your comment was:<br/> <strong>Subject:</strong><% $notesubj %><br/><% $notetext %></n> 35 35 <s><% $selectedtext %></s> 36 36 <id>x</id> … … 42 42 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> 43 43 <response> 44 <cs>Your comment "$notesubj" was submitted. <a href="changeshown.html">change query</a></cs>44 <cs>Your comment <em><% $scrubber->scrub($notesubj) %></em> was submitted. <a href="/comments/rt/changeshown.html">change query</a></cs> 45 45 <annotation> 46 <n><% $ notetext%></n>47 <e><% $ endid%></e>48 <s><% $s electedtext%></s>49 <i><% $s tartid%></i>46 <n><% $scrubber->scrub($notetext) %></n> 47 <e><% $scrubber->scrub($endid) %></e> 48 <s><% $scrubber->scrub($selectedtext) %></s> 49 <i><% $scrubber->scrub($startid) %></i> 50 50 <id><% $id %></id> 51 <u><% $ name%></u>51 <u><% $scrubber->scrub($name) %></u> 52 52 <ua>unagree</ua> 53 53 <at>1</at> … … 67 67 require "/var/www/stet/stetsubs.pl"; 68 68 69 our $name;70 my ($CurrentUser, $resp) = getUser();69 use HTML::Scrubber; 70 my $scrubber = HTML::Scrubber->new( allow => [ qw[ a b i u br ] ] ); 71 71 72 73 74 my ($CurrentUser, $resp, $name) = getUser("x"); 75 my ($dompath, $url, $urlpath, $selectedtext, $notesubj, $start, $startid, $end, $endid, $notetext, $queue, $realqueue, $id); 72 76 73 77 if(%ARGS) { 74 78 75 $url = $ARGS{'NoteUrl'}; 79 $url = $ARGS{'NoteUrl'}; 80 if ($url =~ m!^http://gplv3.fsf.org/comments/$!) { 81 $url = "gplv3-draft-1"; 82 } 76 83 77 $urlpath = $url;78 $urlpath =~ s/http:\/\/([^\/]+)(\/.*)\? /$2/;84 $urlpath = $url; 85 $urlpath =~ s/http:\/\/([^\/]+)(\/.*)\?.*/$2/; 79 86 80 $url =~ s/.*\/([^\/]+)\.(html|xml) /$1/;81 82 $dompath = $ARGS{'DomPath'};83 $selectedtext = URI::Escape::uri_unescape($ARGS{'Selection'});84 $notesubj = URI::Escape::uri_unescape($ARGS{'NoteSubj'});85 # $start = $ARGS{'StartNode'};86 $startid = $ARGS{'StartNodeId'};87 # $end = $ARGS{'EndNode'};88 $endid = $ARGS{'EndNodeId'};89 $notetext = URI::Escape::uri_unescape($ARGS{'NoteText'});87 $url =~ s/.*\/([^\/]+)\.(html|xml).*/$1/; 88 print STDERR "url $url\nurlpath $urlpath\n\n"; 89 $dompath = $ARGS{'DomPath'}; 90 $selectedtext = URI::Escape::uri_unescape($ARGS{'Selection'}); 91 $notesubj = URI::Escape::uri_unescape($ARGS{'NoteSubj'}); 92 # my $start = $ARGS{'StartNode'}; 93 $startid = $ARGS{'StartNodeId'}; 94 # my $end = $ARGS{'EndNode'}; 95 $endid = $ARGS{'EndNodeId'}; 96 $notetext = URI::Escape::uri_unescape($ARGS{'NoteText'}); 90 97 91 98 $ARGS{'queue'} ? $queue = $ARGS{'queue'} : $queue = "Inbox"; … … 120 127 'CustomField-7' => $name, 121 128 ); 122 my ($id, $transaction_object,$err) = $ticket->Create(%ticket_vals);129 ($id, my $transaction_object, my $err) = $ticket->Create(%ticket_vals); 123 130 print STDERR $err . "\n" if $err; 124 131 125 132 } 126 133 } 127 134 $r->content_type('text/xml'); 128 135 </%INIT> trunk/rtNoAuth/xmlresults.html
r12 r14 26 26 <response> 27 27 % if ($Tickets) { 28 <cs>Showing comments where <% humanQuery($ARGS{'Query'}) |n %> <a class="rsslink" href="<% $rsslink %>">[rss]</a> (found <% $Tickets->CountAll()%>)</cs> 29 % } else { 30 <cs> Showing comment <a href="/rt/NoAuth/readsay.html?id=<% $ARGS{'id'} %>"><% $ARGS{'id'} %></a> <a class="rsslink" href="<% $rsslink %>">[rss]</a> <a href="/rt/NoAuth/changeshown.html">change</a> </cs> 28 %# my $tick = $Tickets->Next; 29 <cs>Showing comments where <% humanQuery($ARGS{'Query'}) |n %> <a class="rsslink" href="<% $rsslink %>">[rss]</a> <a href="<% $listlink %>">[list]</a> ( found <% $Tickets->CountAll()%>, showing <% $StartAt %>-<% (($StartAt + $Rows) > $Tickets->CountAll()) ? $Tickets->CountAll() : ($StartAt + $Rows - 1) %>: 30 % if ($Tickets->CountAll() > $Rows) { 31 % if ($StartAt > 1 ) { 32 <a href="/comments/<% stripCrap($Tickets->First->FirstCustomFieldValue('NoteUrl')) %>?Query=<% $ARGS{'Query'} |n %>&Rows=<%$Rows%>&StartAt=<% (($StartAt - $Rows) < 0) ? 1 : ($StartAt - $Rows) |n%>">prev</a> 33 % } 34 % if (($Tickets->CountAll() > $Rows) && ($Tickets->CountAll() > $StartAt + $Rows)) { 35 | 31 36 % } 37 % if ($Tickets->CountAll() > $StartAt + $Rows) { 38 <a href="/comments/<% stripCrap($Tickets->First->FirstCustomFieldValue('NoteUrl')) %>?Query=<% $ARGS{'Query'} |n %>&Rows=<%$Rows%>&StartAt=<% $StartAt + $Rows %>">next</a> 39 % } 40 % } 41 %# ) <a href="/comments/rt/changeshown.html?came_from=<% stripCrap($Tickets->First->FirstCustomFieldValue('NoteUrl')) %>">change</a> 42 ) <a href="/comments/rt/changeshown.html?came_from=gplv3-draft-1">change</a> 43 </cs> 44 % 45 <%perl> 46 $Tickets->GotoFirstItem; 47 if ($StartAt > 1) { 48 for (my $i = 0; $i < $StartAt; $i++) { 49 $Tickets->Next; 50 } 51 } 52 </%perl> 53 % } elsif ($Ticket) { 54 <cs>Showing comment <a href="/comments/rt/readsay.html?id=<% $ARGS{'id'} %>"><% $ARGS{'id'} %></a> <a href="<% $listlink %>">[see thread]</a> <a href="/comments/rt/changeshown.html?came_from=gplv3-draft-1">change</a> </cs> 55 % } 56 % if ($Ticket || $Tickets) { 57 % my $i = 0; 32 58 % while (my $item = $Tickets ? $Tickets->Next : $Ticket) { 33 59 <annotation> … … 36 62 <s><% cleanNoteSel(\$item) %></s> 37 63 <i><% $item->FirstCustomFieldValue('NoteStartNodeId') %></i> 38 <!-- <u><% $item->Requestors->MemberEmailAddressesAsString %></u> -->39 64 <u><% $item->CreatorObj->Name %></u> 40 65 % my ($agree,$agr_count) = showAgree(\$item); … … 44 69 </annotation> 45 70 % $Ticket = ''; 71 % $i++; 72 % if ($i == (($StartAt + $Rows) - 1)) { 73 % $Tickets = ''; 74 % } 75 % } 76 % } 77 % else { 78 <cs>No comments found. <a href="/comments/rt/changeshown.html?came_from=gplv3-draft-1">change query</a> </cs> 46 79 % } 47 80 </response> … … 55 88 use Frontier::Client; 56 89 use Data::Dumper;