View | Details | Raw Unified | Return to bug 13392
Collapse All | Expand All

(-)a/C4/Suggestions.pm (+7 lines)
Lines 485-490 sub ModSuggestion { Link Here
485
            or $suggestion->{$field} eq '' );
485
            or $suggestion->{$field} eq '' );
486
    }
486
    }
487
487
488
    if ($suggestion->{STATUS} and $suggestion->{STATUS} eq 'ORDERED') {
489
        $suggestion->{ordereddate} = dt_from_string;
490
        if (C4::Context->userenv) {
491
            $suggestion->{orderedby} = C4::Context->userenv->{number};
492
        }
493
    }
494
488
    my $rs = Koha::Database->new->schema->resultset('Suggestion')->find($suggestion->{suggestionid});
495
    my $rs = Koha::Database->new->schema->resultset('Suggestion')->find($suggestion->{suggestionid});
489
    my $status_update_table = 1;
496
    my $status_update_table = 1;
490
    eval {
497
    eval {
(-)a/installer/data/mysql/kohastructure.sql (-1 / +6 lines)
Lines 2187-2192 CREATE TABLE `suggestions` ( -- purchase suggestions Link Here
2187
   accepteddate date default NULL, -- date the suggestion was marked as accepted
2187
   accepteddate date default NULL, -- date the suggestion was marked as accepted
2188
   rejectedby INT(11) default NULL, -- borrowernumber for the librarian who rejected the suggestion, foreign key linking to the borrowers table
2188
   rejectedby INT(11) default NULL, -- borrowernumber for the librarian who rejected the suggestion, foreign key linking to the borrowers table
2189
   rejecteddate date default NULL, -- date the suggestion was marked as rejected
2189
   rejecteddate date default NULL, -- date the suggestion was marked as rejected
2190
   orderedby INT(11) NULL DEFAULT NULL, -- borrowernumber for the librarian who ordered the suggestion
2191
   ordereddate DATE NULL DEFAULT NULL, -- date the suggestion was marked as ordered
2190
  `STATUS` varchar(10) NOT NULL default '', -- suggestion status (ASKED, CHECKED, ACCEPTED, or REJECTED)
2192
  `STATUS` varchar(10) NOT NULL default '', -- suggestion status (ASKED, CHECKED, ACCEPTED, or REJECTED)
2191
  `note` mediumtext, -- note entered on the suggestion
2193
  `note` mediumtext, -- note entered on the suggestion
2192
  `author` varchar(80) default NULL, -- author of the suggested item
2194
  `author` varchar(80) default NULL, -- author of the suggested item
Lines 2213-2219 CREATE TABLE `suggestions` ( -- purchase suggestions Link Here
2213
  PRIMARY KEY  (`suggestionid`),
2215
  PRIMARY KEY  (`suggestionid`),
2214
  KEY `suggestedby` (`suggestedby`),
2216
  KEY `suggestedby` (`suggestedby`),
2215
  KEY `managedby` (`managedby`),
2217
  KEY `managedby` (`managedby`),
2216
  CONSTRAINT `suggestions_budget_id_fk` FOREIGN KEY (`budgetid`) REFERENCES `aqbudgets` (`budget_id`) ON DELETE SET NULL ON UPDATE CASCADE
2218
  CONSTRAINT `suggestions_budget_id_fk` FOREIGN KEY (`budgetid`) REFERENCES `aqbudgets` (`budget_id`) ON DELETE SET NULL ON UPDATE CASCADE,
2219
  CONSTRAINT suggestions_orderedby_fk
2220
    FOREIGN KEY (orderedby) REFERENCES borrowers (borrowernumber)
2221
    ON DELETE SET NULL ON UPDATE CASCADE
2217
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
2222
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
2218
2223
2219
--
2224
--
(-)a/installer/data/mysql/updatedatabase.pl (+14 lines)
Lines 9790-9795 if(CheckVersion($DBversion)) { Link Here
9790
    });
9790
    });
9791
9791
9792
    print "Upgrade to $DBversion done (Bug 13523 - Remove NOT NULL restriction on field marcxml due to mysql STRICT_TRANS_TABLES)\n";
9792
    print "Upgrade to $DBversion done (Bug 13523 - Remove NOT NULL restriction on field marcxml due to mysql STRICT_TRANS_TABLES)\n";
9793
    SetVersion ($DBversion);
9794
}
9795
9796
$DBversion = 'XXX';
9797
if ( CheckVersion($DBversion) ) {
9798
    $dbh->do(q|
9799
        ALTER TABLE suggestions
9800
        ADD COLUMN orderedby INT(11) NULL DEFAULT NULL AFTER rejecteddate,
9801
        ADD COLUMN ordereddate DATE NULL DEFAULT NULL AFTER orderedby,
9802
        ADD CONSTRAINT suggestions_orderedby_fk
9803
            FOREIGN KEY (orderedby) REFERENCES borrowers (borrowernumber)
9804
            ON DELETE SET NULL ON UPDATE CASCADE
9805
    |);
9806
    print "Upgrade to $DBversion done (Bug 13392: Add suggestions.orderedby and suggestions.ordereddate)\n";
9793
    SetVersion($DBversion);
9807
    SetVersion($DBversion);
9794
}
9808
}
9795
9809
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/suggestion/suggestion.tt (+5 lines)
Lines 277-282 h4.local_collapse a { font-size : 80%; text-decoration: none; } fieldset.brief o Link Here
277
                <td>[% accepteddate | $KohaDates %]</td>
277
                <td>[% accepteddate | $KohaDates %]</td>
278
                <td>[% IF ( acceptedby_borrowernumber ) %]<a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% acceptedby_borrowernumber %]">[% acceptedby_surname %], [% acceptedby_firstname %]</a> [% Branches.GetName( acceptedby_branchcode ) %] ([% acceptedby_description %])[% END %]</td>
278
                <td>[% IF ( acceptedby_borrowernumber ) %]<a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% acceptedby_borrowernumber %]">[% acceptedby_surname %], [% acceptedby_firstname %]</a> [% Branches.GetName( acceptedby_branchcode ) %] ([% acceptedby_description %])[% END %]</td>
279
            </tr>
279
            </tr>
280
            <tr>
281
                <th><span class="label">Suggestion ordered</span></th>
282
                <td>[% ordereddate | $KohaDates %]</td>
283
                <td>[% IF ( orderedby_borrowernumber ) %]<a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% orderedby_borrowernumber %]">[% orderedby_surname %], [% orderedby_firstname %]</a> [% Branches.GetName( orderedby_branchcode ) %] ([% orderedby_description %])[% END %]</td>
284
            </tr>
280
            </tbody>
285
            </tbody>
281
        </table></li></ol>
286
        </table></li></ol>
282
    </fieldset>
287
    </fieldset>
(-)a/suggestion/suggestion.pl (-2 / +1 lines)
Lines 271-277 if ($op=~/else/) { Link Here
271
    );
271
    );
272
}
272
}
273
273
274
foreach my $element ( qw(managedby suggestedby acceptedby) ) {
274
foreach my $element ( qw(managedby suggestedby acceptedby orderedby) ) {
275
#    $debug || warn $$suggestion_ref{$element};
275
#    $debug || warn $$suggestion_ref{$element};
276
    if ($$suggestion_ref{$element}){
276
    if ($$suggestion_ref{$element}){
277
        my $member=GetMember(borrowernumber=>$$suggestion_ref{$element});
277
        my $member=GetMember(borrowernumber=>$$suggestion_ref{$element});
278
- 

Return to bug 13392