Quellcode durchsuchen

functionality of our changes to Ticket_Overlay is now replicated in the vendor source, however, this requires to adjust rights stored in the database to explicitly allow taking tickets from 'Nobody' or stealing tickets from other users

Michael van Elst vor 22 Jahren
Ursprung
Commit
8f2f1ce6cb
2 geänderte Dateien mit 13 neuen und 69 gelöschten Zeilen
  1. 12 68
      rt/rt.patch
  2. 1 1
      rt/rt.spec

+ 12 - 68
rt/rt.patch

@@ -1,5 +1,5 @@
---- lib/RT/User_Overlay.pm.dist	2003-05-15 12:35:15.000000000 +0200
-+++ lib/RT/User_Overlay.pm	2003-05-15 12:36:26.000000000 +0200
+--- lib/RT/User_Overlay.pm.dist	2003-08-05 16:22:34.000000000 +0200
++++ lib/RT/User_Overlay.pm	2003-08-05 16:29:17.000000000 +0200
 @@ -203,7 +203,6 @@
          @_    # get the real argumentlist
      );
@@ -13,12 +13,12 @@
      #If the create failed.
      unless ($id) {
 -        $RT::Logger->error("Could not create a new user - " .join('-'. %args));
-+        $RT::Logger->error("Could not create a new user - " .join('-',%args));
++        $RT::Logger->error("Could not create a new user - " .join('-', %args));
  
          return ( 0, $self->loc('Could not create user') );
      }
---- html/Ticket/Elements/ShowMessageStanza.dist	2003-05-15 12:30:24.000000000 +0200
-+++ html/Ticket/Elements/ShowMessageStanza	2003-05-15 12:31:11.000000000 +0200
+--- html/Ticket/Elements/ShowMessageStanza.dist	2003-08-05 16:21:42.000000000 +0200
++++ html/Ticket/Elements/ShowMessageStanza	2003-08-05 16:28:06.000000000 +0200
 @@ -22,22 +22,23 @@
  %# 
  %# END LICENSE BLOCK
@@ -57,8 +57,8 @@
  % }
  <%INIT>
  use URI::URL;
---- html/Elements/Header.dist	2003-04-16 10:23:42.000000000 +0200
-+++ html/Elements/Header	2003-04-16 10:24:13.000000000 +0200
+--- html/Elements/Header.dist	2003-08-05 16:22:02.000000000 +0200
++++ html/Elements/Header	2003-08-05 16:24:22.000000000 +0200
 @@ -40,9 +40,10 @@
  "
  % }
@@ -67,11 +67,11 @@
  <table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF">
    <tr> 
 -    <td colspan=2><a href="http://bestpractical.com"><img src="<%$RT::WebImagesURL%>/bplogo.gif" alt="" width="230" height="50"></a></td>
-+    <td colspan=2><a href="<%$RT::LogoLink%>"><img src="<%$RT::LogoURL%>" alt=""></a></td>
++    <td colspan=2><a href="<%$RT::LogoLink%>"><img src="<%$RT::LogoURL%>" alt="" width="230" height="50"></a></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td width="50%" align="right">
-@@ -61,6 +62,7 @@
+@@ -62,6 +63,7 @@
      </td>
    </tr>
  </table>
@@ -79,9 +79,9 @@
  <%INIT>
  
  $r->header_out('Pragma' => 'no-cache');
---- html/Elements/Login.dist	2003-04-16 10:23:47.000000000 +0200
-+++ html/Elements/Login	2003-04-16 10:25:06.000000000 +0200
-@@ -86,12 +86,13 @@
+--- html/Elements/Login.dist	2003-08-05 16:22:17.000000000 +0200
++++ html/Elements/Login	2003-08-05 16:25:30.000000000 +0200
+@@ -87,12 +87,13 @@
  If you've forgotten your username or password, RT can <A
  href="/NoAuth/Reminder.html">send you a reminder</a>.
  -->
@@ -96,59 +96,3 @@
  <%ARGS>
  $user => ""
  $pass => undef
---- lib/RT/Ticket_Overlay.pm.dist	Sat Jun 21 19:02:51 2003
-+++ lib/RT/Ticket_Overlay.pm	Mon Jun 23 10:58:39 2003
-@@ -1718,6 +1718,7 @@
- Returns true if the specified principal (or the one corresponding to the
- specified address) is a member of the group Type for this ticket.
- 
-+
- =cut
- 
- sub IsWatcher {
-@@ -2778,7 +2779,16 @@
-     my $self      = shift;
-     my $MergeInto = shift;
- 
--    unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
-+    # we want to allow to take over tickets from Nobody even
-+    # when we currently are not allowed to modify the ticket
-+    # but might own it.
-+    # it is also ok to assign it to a third user as we could
-+    # get to the same result by first owning the ticket ourselves
-+    # and then give it away to the third user.
-+    # -- mlelstv
-+    unless ( $self->CurrentUserHasRight('ModifyTicket')
-+             or ( $self->CurrentUserHasRight('OwnTicket') and 
-+                  $self->OwnerObj->Id == $RT::Nobody->Id ) ) {
-         return ( 0, $self->loc("Permission Denied") );
-     }
- 
-@@ -3052,10 +3062,7 @@
-     # Delete the owner in the owner group, then add a new one
-     # TODO: is this safe? it's not how we really want the API to work
-     # for most things, but it's fast.
--    my ( $del_id, $del_msg ) = $self->OwnerGroup->MembersObj->First->Delete();
--    unless ($del_id) {
-         $RT::Handle->Rollback();
--        return ( 0, $self->loc("Could not change owner. ") . $del_msg );
-     }
- 
-     my ( $add_id, $add_msg ) = $self->OwnerGroup->_AddMember(
-@@ -3063,7 +3070,7 @@
-                                        InsideTransaction => 1 );
-     unless ($add_id) {
-         $RT::Handle->Rollback();
--        return ( 0, $self->loc("Could not change owner. ") . $add_msg );
-+        return ( 0, $self->loc("Could not add owner. ") . $add_msg );
-     }
- 
-     # We call set twice with slightly different arguments, so
-@@ -3080,7 +3087,6 @@
- 
-     unless ($val) {
-         $RT::Handle->Rollback;
--        return ( 0, $self->loc("Could not change owner. ") . $msg );
-     }
- 
-     $RT::Handle->Commit();

+ 1 - 1
rt/rt.spec

@@ -49,7 +49,7 @@ Distribution: OpenPKG [EVAL]
 Group:        Database
 License:      GPL
 Version:      %{V_here}
-Release:      20030801
+Release:      20030805
 
 #   package options
 %option       with_color_primary   336699