bug 3222: changes to messaging preferences form

Moved the messaging preferences form to a new
include, messaging-preference-form.inc, so that
it can be used to set messaging prefs both for a
patron and for a patron category.

Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This commit is contained in:
Galen Charlton 2009-05-20 11:35:51 -05:00
parent 2288b86fbb
commit ca7db466d6
4 changed files with 91 additions and 89 deletions

View File

@ -0,0 +1,80 @@
<!-- snippet for form to set borrower and patron category messaging preferences -->
<script type="text/javascript">//<![CDATA[
$(document).ready(function(){
$(".none").click(function(){
if($(this).attr("checked")){
var rowid = $(this).attr("id");
newid = Number(rowid.replace("none",""))
$("#sms"+newid).attr("checked","");
$("#email"+newid).attr("checked","");
$("#digest"+newid).attr("checked","");
$("#rss"+newid).attr("checked","");
}
});
});
//]]>
</script>
<input type="hidden" name="modify" value="yes" />
<input type="hidden" name="borrowernumber" value="<!-- TMPL_VAR NAME="borrowernumber" -->" />
<table>
<tr><th></th><th>Days in advance</th><!-- TMPL_IF NAME="SMSSendDriver" --><th>SMS</th><!-- /TMPL_IF --><th>Email</th><th>Digests only?</th><!-- <th>RSS</th> --><th>Do not notify</th></tr>
<!-- TMPL_LOOP name="messaging_preferences" -->
<tr>
<td><!-- TMPL_VAR NAME="message_name" --></td>
<!-- TMPL_IF NAME="takes_days" -->
<td><select name="<!-- TMPL_VAR NAME="message_attribute_id" -->-DAYS">
<!-- TMPL_LOOP name="select_days" -->
<!-- TMPL_IF NAME="selected" --><option value="<!-- TMPL_VAR NAME="day" -->" selected="selected"><!-- TMPL_VAR NAME="day" --></option><!-- TMPL_ELSE -->
<option value="<!-- TMPL_VAR NAME="day" -->"><!-- TMPL_VAR NAME="day" --></option>
<!-- /TMPL_IF -->
<!-- /TMPL_LOOP -->
</select>
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="transport-sms" -->
<!-- TMPL_IF NAME="SMSSendDriver" --><td><input type="checkbox"
id="sms<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="sms" <!-- TMPL_VAR NAME="transport-sms" --> onclick = "$('#none'+'<!-- TMPL_VAR NAME="message_attribute_id" -->').attr('checked','');" />
</td><!-- /TMPL_IF -->
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="transport-email" -->
<td><input type="checkbox"
id="email<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="email" <!-- TMPL_VAR NAME="transport-email" --> onclick = "$('#none'+'<!-- TMPL_VAR NAME="message_attribute_id" -->').attr('checked','');" />
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="has_digest" -->
<td><input type="checkbox"
id="digest<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="digest" <!-- TMPL_VAR NAME="digest" --> onclick = "$('#none'+'<!-- TMPL_VAR NAME="message_attribute_id" -->').attr('checked','');" />
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- <!-- TMPL_IF NAME="transport-rss" -->
<td><input type="checkbox"
id="rss<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="rss" <!-- TMPL_VAR NAME="transport-rss" --> onclick = "$('#none'+'<!-- TMPL_VAR NAME="message_attribute_id" -->').attr('checked','');" />
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF --> -->
<td><input type="checkbox" class="none" id="none<!-- TMPL_VAR NAME="message_attribute_id" -->" /></td>
</tr>
<!-- /TMPL_LOOP -->
</table>

View File

@ -1,21 +1,6 @@
<!-- TMPL_INCLUDE NAME="doc-head-open.inc" -->
<title>Koha &rsaquo; Patrons &rsaquo; <!-- TMPL_IF NAME="unknowuser" -->Patron does not exist<!-- TMPL_ELSE -->Patron Details for <!-- TMPL_VAR NAME="firstname" --> <!-- TMPL_VAR NAME="surname" --> (<!-- TMPL_VAR NAME="cardnumber" -->)<!-- /TMPL_IF --></title>
<!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
<script type="text/javascript">//<![CDATA[
$(document).ready(function(){
$(".none").click(function(){
if($(this).attr("checked")){
var rowid = $(this).attr("id");
newid = Number(rowid.replace("none",""))
$("#sms"+newid).attr("checked","");
$("#email"+newid).attr("checked","");
$("#digest"+newid).attr("checked","");
$("#rss"+newid).attr("checked","");
}
});
});
//]]>
</script>
</head>
<body>
<!-- TMPL_INCLUDE NAME="header.inc" -->
@ -57,84 +42,23 @@
</div>
<!-- TMPL_ELSE -->
<form method="get" name="messaging" action="/cgi-bin/koha/members/messaging.pl">
<input type="hidden" name="modify" value="yes" />
<input type="hidden" name="borrowernumber" value="<!-- TMPL_VAR NAME="borrowernumber" -->" />
<form method="get" name="messaging" action="/cgi-bin/koha/members/messaging.pl">
<!-- TMPL_IF NAME= "settings_updated" -->
<div class="dialog message"><h4>Settings Updated</h4>
The patron settings have been updated</div>
<div class="dialog message"><h4>Settings Updated</h4>
The patron settings have been updated</div>
<!-- /TMPL_IF -->
<h3>Manage patron messaging settings</h3>
<table>
<tr><th></th><th>Days in advance</th><!-- TMPL_IF NAME="SMSSendDriver" --><th>SMS</th><!-- /TMPL_IF --><th>Email</th><th>Digests only?</th><!-- <th>RSS</th> --><th>Do not notify</th></tr>
<!-- TMPL_LOOP name="messaging_preferences" -->
<tr>
<td><!-- TMPL_VAR NAME="message_name" --></td>
<!-- TMPL_IF NAME="takes_days" -->
<td><select name="<!-- TMPL_VAR NAME="message_attribute_id" -->-DAYS">
<!-- TMPL_LOOP name="select_days" -->
<!-- TMPL_IF NAME="selected" --><option value="<!-- TMPL_VAR NAME="day" -->" selected="selected"><!-- TMPL_VAR NAME="day" --></option><!-- TMPL_ELSE -->
<option value="<!-- TMPL_VAR NAME="day" -->"><!-- TMPL_VAR NAME="day" --></option>
<!-- /TMPL_IF -->
<!-- /TMPL_LOOP -->
</select>
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="transport-sms" -->
<!-- TMPL_IF NAME="SMSSendDriver" --><td><input type="checkbox"
id="sms<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="sms" <!-- TMPL_VAR NAME="transport-sms" --> onclick = "document.messaging.none<!-- TMPL_VAR NAME="message_attribute_id" -->.checked=false;" />
</td><!-- /TMPL_IF -->
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- TMPL_INCLUDE NAME="messaging-preference-form.inc" -->
<!-- TMPL_IF NAME="transport-email" -->
<td><input type="checkbox"
id="email<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="email" <!-- TMPL_VAR NAME="transport-email" --> onclick = "document.messaging.none<!-- TMPL_VAR NAME="message_attribute_id" -->.checked=false;" />
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="has_digest" -->
<td><input type="checkbox"
id="digest<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="digest" <!-- TMPL_VAR NAME="digest" --> onclick = "document.messaging.none<!-- TMPL_VAR NAME="message_attribute_id" -->.checked=false;" />
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF -->
<!-- <!-- TMPL_IF NAME="transport-rss" -->
<td><input type="checkbox"
id="rss<!-- TMPL_VAR NAME="message_attribute_id" -->"
name="<!-- TMPL_VAR NAME="message_attribute_id" -->"
value="rss" <!-- TMPL_VAR NAME="transport-rss" --> onclick = "document.messaging.none<!-- TMPL_VAR NAME="message_attribute_id" -->.checked=false;" />
</td>
<!-- TMPL_ELSE -->
<td>-</td>
<!-- /TMPL_IF --> -->
<td><input type="checkbox" class="none" id="none<!-- TMPL_VAR NAME="message_attribute_id" -->" /></td>
</tr>
<!-- /TMPL_LOOP -->
</table>
<!-- TMPL_IF NAME="transport-sms" --><p><label for="SMSnumber">SMS number:</label> <input type="text" id="SMSnumber" name="SMSnumber" value="<!-- TMPL_VAR NAME="SMSnumber" -->" /></p><!-- /TMPL_IF -->
<fieldset class="action">
<input type="submit" value="Submit Changes" /> <a class="cancel" href="/cgi-bin/koha/opac-user.pl">Cancel</a>
</fieldset>
</form>
<!-- TMPL_IF NAME="message_queue" -->
<table>
<caption>Message Queue</caption>
@ -145,8 +69,6 @@
</table>
<!-- /TMPL_IF -->
</form>
</div>
<!-- /TMPL_IF --> <!-- unknowuser -->

View File

@ -119,9 +119,9 @@ PREF: foreach my $option ( @$messaging_options ) {
selected => $_ == $pref->{'days_in_advance'} ? 'SELECTED' :'' } } ( 0..30 ); # FIXME: 30 is a magic number.
}
foreach my $transport ( @{$pref->{'transports'}} ) {
$option->{'transport-'.$transport} = 'CHECKED';
$option->{'transport-'.$transport} = 'checked="checked"';
}
$option->{'digest'} = 'CHECKED' if $pref->{'wants_digest'};
$option->{'digest'} = 'checked="checked"' if $pref->{'wants_digest'};
}
if ( $borrower->{'category_type'} eq 'C') {

View File

@ -107,10 +107,10 @@ PREF: foreach my $option ( @$messaging_options ) {
}
}
foreach my $transport ( @{$pref->{'transports'}} ) {
$option->{'transport-'.$transport} = 'CHECKED';
$option->{'transport-'.$transport} = 'checked="checked"';
}
$option->{'digest'} = $pref->{'wants_digest'} ? 'CHECKED' : '';
$option->{'digest'} = $pref->{'wants_digest'} ? 'checked="checked"' : '';
}
# warn( Data::Dumper->Dump( [ $messaging_options ], [ 'messaging_options' ] ) );