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

(-)a/Koha/Patron/Message.pm (-2 / +7 lines)
Lines 53-60 sub store { Link Here
53
        $self->manager_id( $userenv ? $userenv->{number} : undef );
53
        $self->manager_id( $userenv ? $userenv->{number} : undef );
54
    }
54
    }
55
55
56
    C4::Log::logaction( "MEMBERS", "ADDCIRCMESSAGE", $self->borrowernumber, $self->message )
56
    if ( C4::Context->preference("BorrowersLog") ) {
57
        if C4::Context->preference("BorrowersLog");
57
        if ( $self->in_storage ) {
58
            C4::Log::logaction( "MEMBERS", "MODCIRCMESSAGE", $self->borrowernumber, $self->message )
59
        } else {
60
            C4::Log::logaction( "MEMBERS", "ADDCIRCMESSAGE", $self->borrowernumber, $self->message )
61
        }
62
    }
58
63
59
    return $self->SUPER::store($self);
64
    return $self->SUPER::store($self);
60
}
65
}
(-)a/circ/add_message.pl (-8 / +15 lines)
Lines 35-54 my ( $template, $loggedinuser, $cookie ) = get_template_and_user( Link Here
35
    }
35
    }
36
);
36
);
37
37
38
my $message_id       = $input->param('message_id');
38
my $borrowernumber   = $input->param('borrowernumber');
39
my $borrowernumber   = $input->param('borrowernumber');
39
my $branchcode       = $input->param('branchcode');
40
my $branchcode       = $input->param('branchcode');
40
my $message_type     = $input->param('message_type');
41
my $message_type     = $input->param('message_type');
41
my $borrower_message = $input->param('borrower_message');
42
my $borrower_message = $input->param('borrower_message');
42
my $batch            = $input->param('batch');
43
my $batch            = $input->param('batch');
43
44
44
Koha::Patron::Message->new(
45
if ($message_id) {
45
    {
46
    my $message = Koha::Patron::Messages->find($message_id);
46
        borrowernumber => $borrowernumber,
47
    $message->update( { message => $borrower_message } ) if $message;
47
        branchcode     => $branchcode,
48
}
48
        message_type   => $message_type,
49
else {
49
        message        => $borrower_message,
50
    Koha::Patron::Message->new(
50
    }
51
        {
51
)->store;
52
            borrowernumber => $borrowernumber,
53
            branchcode     => $branchcode,
54
            message_type   => $message_type,
55
            message        => $borrower_message,
56
        }
57
    )->store;
58
}
52
59
53
my $url = $input->referer;
60
my $url = $input->referer;
54
if ( $url ) {
61
if ( $url ) {
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/patron_messages.inc (-2 / +45 lines)
Lines 311-319 Link Here
311
                    </span>
311
                    </span>
312
                    [% IF patron_message.branchcode == Branches.GetLoggedInBranchcode OR Koha.Preference('AllowAllMessageDeletion') %]
312
                    [% IF patron_message.branchcode == Branches.GetLoggedInBranchcode OR Koha.Preference('AllowAllMessageDeletion') %]
313
                        [% IF moremember %]
313
                        [% IF moremember %]
314
                        <a class="btn btn-link delete_message" href="/cgi-bin/koha/circ/del_message.pl?message_id=[% patron_message.message_id | html %]&amp;borrowernumber=[% patron_message.borrowernumber | html %]&amp;from=moremember"><i class="fa fa-trash"></i> Delete</a>
314
                            <a class="btn btn-link edit_message" href="/cgi-bin/koha/circ/del_message.pl?message_id=[% patron_message.message_id | html %]&amp;borrowernumber=[% patron_message.borrowernumber | html %]&amp;from=moremember"><i class="fa fa-edit"></i> Edit</a>
315
                            <a class="btn btn-link delete_message" href="/cgi-bin/koha/circ/del_message.pl?message_id=[% patron_message.message_id | html %]&amp;borrowernumber=[% patron_message.borrowernumber | html %]&amp;from=moremember"><i class="fa fa-trash"></i> Delete</a>
315
                        [% ELSE %]
316
                        [% ELSE %]
316
                        <a class="btn btn-link delete_message" href="/cgi-bin/koha/circ/del_message.pl?message_id=[% patron_message.message_id | html %]&amp;borrowernumber=[% patron_message.borrowernumber | html %]"><i class="fa fa-trash"></i> Delete</a>
317
                            <a id="#edit_message_form_[% patron_message.message_id | html %]" class="btn btn-link edit_message" href="#edit_message_form_[% patron_message.message_id | uri %]" data-target="#edit_message_form_[% patron_message.message_id | html %]" data-toggle="modal" class="btn btn-default"><i class="fa fa-edit"></i> Edit</a>
318
                            <a class="btn btn-link delete_message" href="/cgi-bin/koha/circ/del_message.pl?message_id=[% patron_message.message_id | html %]&amp;borrowernumber=[% patron_message.borrowernumber | html %]"><i class="fa fa-trash"></i> Delete</a>
317
                        [% END %]
319
                        [% END %]
318
                    [% END %]
320
                    [% END %]
319
                </li>
321
                </li>
Lines 321-324 Link Here
321
        </ul>
323
        </ul>
322
        <a id="addnewmessageLabel" href="#add_message_form" class="btn btn-link" data-toggle="modal"><i class="fa fa-plus"></i> Add a new message</a>
324
        <a id="addnewmessageLabel" href="#add_message_form" class="btn btn-link" data-toggle="modal"><i class="fa fa-plus"></i> Add a new message</a>
323
    </div> <!-- /#messages -->
325
    </div> <!-- /#messages -->
326
327
    [% FOREACH pm IN patron_messages %]
328
        <div id="edit_message_form_[% pm.message_id | html %]" class="modal" tabindex="-1" role="dialog" aria-labelledby="#edit_message_form_[% patron_message.message_id | html %]" aria-hidden="true">
329
            <div class="modal-dialog">
330
                <div class="modal-content">
331
                    <form method="post" action="/cgi-bin/koha/circ/add_message.pl" id="message_form" name="message_f">
332
                        <input type="hidden" name="message_id" value="[% pm.message_id | html %]"/>
333
                        <div class="modal-header">
334
                            <h3>Edit message</h3>
335
                        </div>
336
                        <div class="modal-body">
337
                            <div class="form-group">
338
                                <label for="message_type">Message is for:</label>
339
                                <select name="message_type" id="message_type" disabled>
340
                                    [% IF pm.message_type == "L" %]
341
                                        <option value="L" selected="selected">Staff - Internal note</option>
342
                                    [% ELSE %]
343
                                        <option value="L">Staff - Internal note</option>
344
                                    [% END %]
345
346
                                    [% IF pm.message_type == "B" %]
347
                                        <option value="B" selected="selected">OPAC - [% patron.firstname | html %] [% patron.surname | html %]</option>
348
                                    [% ELSE %]
349
                                        <option value="B">OPAC - [% patron.firstname | html %] [% patron.surname | html %]</option>
350
                                    [% END %]
351
                                </select>
352
                            </div>
353
                            <div class="form-group">
354
                                <textarea rows="3" class="modal-textarea" name="borrower_message" id="borrower_message" >[% pm.message | html %]</textarea>
355
                            </div>
356
                        </div>
357
                        <div class="modal-footer">
358
                            <button class="btn btn-default approve" type="submit"><i class="fa fa-check"></i> Save</button>
359
                            <button class="btn btn-default deny cancel" href="#" data-dismiss="modal" aria-hidden="true"><i class="fa fa-times"></i> Cancel</button>
360
                        </div>
361
                    </form>
362
                </div>
363
            </div>
364
        </div>
365
    [% END %]
366
324
[% END # /IF patron_messages %]
367
[% END # /IF patron_messages %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt (-2 / +2 lines)
Lines 119-124 Link Here
119
[%        CASE 'RENEWAL' %]<span>Renew</span>
119
[%        CASE 'RENEWAL' %]<span>Renew</span>
120
[%        CASE 'CHANGE PASS' %]<span>Change password</span>
120
[%        CASE 'CHANGE PASS' %]<span>Change password</span>
121
[%        CASE 'ADDCIRCMESSAGE' %]<span>Add circulation message</span>
121
[%        CASE 'ADDCIRCMESSAGE' %]<span>Add circulation message</span>
122
[%        CASE 'MODCIRCMESSAGE' %]<span>Modify circulation message</span>
122
[%        CASE 'DELCIRCMESSAGE' %]<span>Delete circulation message</span>
123
[%        CASE 'DELCIRCMESSAGE' %]<span>Delete circulation message</span>
123
[%        CASE 'STATUS_CHANGE'  %]<span>Change ILL request status</span>
124
[%        CASE 'STATUS_CHANGE'  %]<span>Change ILL request status</span>
124
[%        CASE 'PATRON_NOTICE'  %]<span>ILL notice sent to patron</span>
125
[%        CASE 'PATRON_NOTICE'  %]<span>ILL notice sent to patron</span>
Lines 243-249 Link Here
243
                                        <label for="actionALL" class="viewlog"><input type="checkbox" id="actionALL" name="actions" value=""> All</label>
244
                                        <label for="actionALL" class="viewlog"><input type="checkbox" id="actionALL" name="actions" value=""> All</label>
244
                                    [% END %]
245
                                    [% END %]
245
246
246
                                    [% FOREACH actx IN [ 'ADD' 'DELETE' 'MODIFY' 'ISSUE' 'RETURN' 'RENEW' 'CREATE' 'CANCEL' 'FILL' 'SUSPEND' 'RESUME' 'ADDCIRCMESSAGE' 'DELCIRCMESSAGE' 'STATUS_CHANGE' 'PATRON_NOTICE' 'CHANGE PASS' 'Run' 'End' 'EDIT_MAPPINGS' 'RESET_MAPPINGS' 'ADD_BASKET' 'MODIFY_BASKET' 'MODIFY_BASKET_HEADER' 'MODIFY_BASKET_USERS' 'CLOSE_BASKET' 'APPROVE_BASKET' 'REOPEN_BASKET' 'CANCEL_ORDER' 'CREATE_ORDER' 'MODIFY_ORDER' 'CREATE_INVOICE_ADJUSTMENT' 'UPDATE_INVOICE_ADJUSTMENT' 'DELETE_INVOICE_ADJUSTMENT' 'RECEIVE_ORDER' 'MODIFY_BUDGET' 'MODIFY_FUND' 'CREATE_FUND' 'DELETE_FUND' 'OVERDUE' 'EXPIRE' ] %]
247
                                    [% FOREACH actx IN [ 'ADD' 'DELETE' 'MODIFY' 'ISSUE' 'RETURN' 'RENEW' 'CREATE' 'CANCEL' 'FILL' 'SUSPEND' 'RESUME' 'ADDCIRCMESSAGE' 'MODCIRCMESSAGE' 'DELCIRCMESSAGE' 'STATUS_CHANGE' 'PATRON_NOTICE' 'CHANGE PASS' 'Run' 'End' 'EDIT_MAPPINGS' 'RESET_MAPPINGS' 'ADD_BASKET' 'MODIFY_BASKET' 'MODIFY_BASKET_HEADER' 'MODIFY_BASKET_USERS' 'CLOSE_BASKET' 'APPROVE_BASKET' 'REOPEN_BASKET' 'CANCEL_ORDER' 'CREATE_ORDER' 'MODIFY_ORDER' 'CREATE_INVOICE_ADJUSTMENT' 'UPDATE_INVOICE_ADJUSTMENT' 'DELETE_INVOICE_ADJUSTMENT' 'RECEIVE_ORDER' 'MODIFY_BUDGET' 'MODIFY_FUND' 'CREATE_FUND' 'DELETE_FUND' 'OVERDUE' 'EXPIRE' ] %]
247
                                        [% IF actions.grep(actx).size %]
248
                                        [% IF actions.grep(actx).size %]
248
                                            <label for="action[% actx| replace('\s+', '_') | html %]" class="viewlog"><input type="checkbox" id="action[% actx | replace('\s+', '_') | html %]" name="actions" value="[% actx | html %]" checked="checked"> [% PROCESS translate_log_action action=actx %]</label>
249
                                            <label for="action[% actx| replace('\s+', '_') | html %]" class="viewlog"><input type="checkbox" id="action[% actx | replace('\s+', '_') | html %]" name="actions" value="[% actx | html %]" checked="checked"> [% PROCESS translate_log_action action=actx %]</label>
249
                                        [% ELSE %]
250
                                        [% ELSE %]
250
- 

Return to bug 21699