Dan Scott [Thu, 16 Feb 2012 17:49:54 +0000 (12:49 -0500)]
Escape content when generating DTD for fieldmapper
Noticed by Thomas Berezansky, if a translation in a PO or POT file
contains an unescaped left angle bracket, a DTD will be generated that
contains the unescaped left angle bracket - and that isn't valid.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
but the root cause was a problem in dojoize_match_set_tree(), which
was failing to generate unique identifiers for each item in the data
store it's responsible for generating.
Since that function is only ever used to deal with trees where all the
nodes come from the database and have actual IDs, that function now uses
the database IDs as is rather than attempting to generate new ones.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Bill Erickson [Wed, 4 Jan 2012 18:03:01 +0000 (13:03 -0500)]
TPac: facet display filtering and sorting
Provides the ability (via config.tt2) to define which facets should
display and the order of facet display. The behavior is consistent with
the openils.widget.FacetSidebar Dojo class, used in JSPAC.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Mon, 17 Oct 2011 16:27:04 +0000 (12:27 -0400)]
Stream results from targetable holds list retrieval
Tested and slightly modified patch from Mike R. to improve multi-session
hold targeting. This patch includes an update to the targetable holds
API call to stream results instead of returning them in 1 big chunk,
which has been known to result in messages too large for jabber
(max_stanza_size). hold_targer.pl is updated to handle the stream.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
A commit written in October and merged quickly (80d5c4a4) was designed
to avoid problems with a middle layer method that sometimes returns hash
refs and sometimes returns array refs.
A commit written in September but not merged until January (a663dfed)
affected neighboring code, but was not aware of the other code to dance
around hash refs and array refs (just read the commit messages of each
to see what I mean, with attention to the changes in
WWW/EGCatLoader/Account.pm).
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Jason Stephenson [Wed, 12 Oct 2011 13:19:49 +0000 (09:19 -0400)]
Add restrict_copy_delete field to config.copy_status.
Add the column definition in 002.schema.config.sql.
Add the field to the class ccs in fm_IDL.xml.
Set the restrict_copy_delete column to true for the "magical"
statuses (1,3,6,8) in 950.data.seed-values.sql.
Add restrict_delete as essential column to config.copy_status in
OpenILS::Application::Storage::CDBI::config
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Jason Etheridge [Thu, 19 Jan 2012 22:01:22 +0000 (17:01 -0500)]
Handle search timeouts more gracefully
Another tweak courtesy of berick
Returns 0 results if open-ils.storage timeouts instead of a nasty uncaught
undefined ARRAY exception resulting in an OPAC "spinning wheel of death"
(formerly the "green knight rider bar of death".
Note that in the event of storage timeouts, you should tune and/or beef-up
your database.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
If a page that executes a search is accessed with no viable search
query, cut the search short to avoid meaningless, long-running searches.
This primarily affects direct links to record detail pages. For
example:
http://example.org/eg/opac/record/123
The RD page attempts to load the currrently active search (for paging) and,
if there is no query, will search for strings like 'site(BR1) depth(2)',
which are unintended and quite slow, which delays page rendering.
---
While we're in there, let's silence the following Apache error log
warning by ensuring that int() gets a value.
Use of uninitialized value in int at
/usr/local/share/perl/5.10.1/OpenILS/WWW/EGCatLoader/Search.pm line 192.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Bill Erickson [Mon, 23 Jan 2012 22:04:01 +0000 (17:04 -0500)]
TPac: avoid SMS org setting check for non-SMS pages
Avoid an unnecessary org unit setting lookup on a large swath of
(mostly myopac) pages. Instead, check to see if the current page is the
SMS page in question and the lookup is necessary before making the
lookup.
This change also inserts the physical location as the first org unit to
use in the org setting test.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Bill Erickson [Thu, 20 Oct 2011 13:06:20 +0000 (09:06 -0400)]
ACQ: remove piles of unused cancel_reasons
There is a large set of of acq.cancel_reason's in Evergreen that come
from the EDI spec and will never be used in practice. Since there are
scenarios where cancel reasons are manually chosen by staff, let's
remove all of the extras so the process of selecting a cancel reason is
not so fraught with "Poultry" and "Airline attendants", etc.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Dan Scott [Sun, 22 Jan 2012 21:34:31 +0000 (16:34 -0500)]
TPAC: Cleaner title display in simple and detailed views
The TPAC uses a simple 245a display for the "simple view" in search
results, so records like the concerto.sql "Violin concerto no. 3 in G,
K. 216 ;" display with a trailing semicolon that is rather
disconcerting.
Similarly, the subfields in the extended title as displayed in the
record detail view was simply concatenating subfields together. This
resulted in titles like:
Violin concerto no. 3 in G, K. 216 ;Sinfonia ...
rather than:
Violin concerto no. 3 in G, K. 216 ; Sinfonia ...
This commit strips trailing punctuation that suggests a continuation
(:;/) from the brief title and joins the subfields with a space for the
extended title.
Also, enable the detailed view in search results to display the complete
title.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Dan Scott [Sun, 22 Jan 2012 16:42:08 +0000 (11:42 -0500)]
Fix "prefered_language" typo that blocked preferred language
"preferred_language" is used everywhere else, but in the crucial core of
metabib.pm the "prefered_language" variant is used to check on the value
- hence, nothing other than the default "eng" is being used. Fix that.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Stephenson [Mon, 30 Jan 2012 21:38:34 +0000 (16:38 -0500)]
Fix "Add Volumes" entry in "Actions for this Record" menu
A typo in Open-ILS/xul/staff_client/chrome/content/cat/opac.js (cbdObj
instead of cbsObj) led to the exception "Reference error: cbdObj is not
defined" being thrown any time the "Add Volumes" entry was chosen.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Dan Scott <dscott@laurentian.ca>
Michael Peters [Fri, 20 Jan 2012 22:49:16 +0000 (17:49 -0500)]
Modifications to the TTPac color scheme to be more with logo guidelines
Tweaked the buttons, gradients, etc. in TTPac to eradicate the blue/grey elements.
Began with the Evergreen Logo's official color (Pantone 340 as found at http://www.georgialibraries.org/lib/pines/evergreenlogo/)
and complimented the colors accordingly, replacing dark blues with dark greens, light blues with light greens, etc.
This also adds two new selectors in styles.css to control the logo placement. Logos were also centered on the page, rather than being crowded
into neighboring elements.
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Fixed Conflicts:
Jason Etheridge [Mon, 9 Jan 2012 20:18:15 +0000 (15:18 -0500)]
Fix self-fetching callnumber columns
The callnumber (and related) columns from circ.util.columns() is meant to
retrieve call number objects if given call number id's instead of objects,
but there was a bug preventing that.
This fixes LP#906523, no call number information in billing interface
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
James Fournie [Wed, 7 Dec 2011 19:27:45 +0000 (11:27 -0800)]
Acq fix for LP#901378
Proratable invoice charges do not have a fund_debit, we need to check for
this before attempting to delete the charge. If there's no fund_debit
we can generally assume that there's no corresponding debit to this charge
and skip trying to delete it.
Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Tue, 20 Dec 2011 16:54:30 +0000 (11:54 -0500)]
Move RELEASE_NOTES into the docs subdirectory
We will begin maintaining release notes inside the source directory,
with one RELEASE_NOTES.txt file per major release series (2.2, 2.3,
etc). The release notes will primarily consist of an overview of new
features and important behaviour changes in that particular release
series, as well as a cumulative list of bugs that have been fixed in the
point releases for that series.
Also, mention the existence of the release notes in the top-level
README.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Tue, 29 Nov 2011 20:11:55 +0000 (15:11 -0500)]
Note located URI changes in Release Notes
Located URIs now define what org unit and below in the hierarchy will be
matched for a given search scope, rather than the copy-like behaviour
from before; for example, a located URI at BR1 will no longer be found
in a SYS1 search scope; rather, a located URI at SYS1 will be found with
either a SYS1 or a BR1 search scope.
Put some info and rough suggested fix into the release notes.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Jason Etheridge [Wed, 11 Jan 2012 03:15:31 +0000 (22:15 -0500)]
Make Delete User failure overridable
Make mrpeter's new ACTOR_USER_DELETE_OPEN_XACTS event overridable to preserve
existing functionality (the delete user code will wipe out all transactions if
allowed to, and will leave copy statuses as "Checked Out" if needed, which is
okay in EG even if there aren't corresponding circ records--some libraries
migrate data like this if the information available is sparse).
So if you want to be able to do this without a super user, you'll need to create
an ACTOR_USER_DELETE_OPEN_XACTS.override perm and assign it to perm groups
and/or users.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Michael Peters [Wed, 12 Oct 2011 15:46:12 +0000 (11:46 -0400)]
LP872862, delete user function and open xacts
Prevent deletion of a user with open circulations or unpaid bills
Link up an error message on attempt to delete a patron with open xacts
Signed-off-by: Michael Peters <mrpeters@library.in.gov> Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Mon, 9 Jan 2012 02:04:37 +0000 (21:04 -0500)]
TPAC: Regular justification of columns in search result
The search results page was constituted via a table, enclosing one table
per row for each result, enclosing one further table per result for the
attributes such as call number / publisher / edition that have been
chosen to be displayed in the simple and detailed views.
The column widths for each search result row were being calculated per
result, with the effect that title columns were starting at different
offsets - a rather unpolished effect.
By eliminating the middle table, we can let the widths be determined by
all of the search result rows together, providing a normalized result as
the HTML deities intended.
We also move some inline CSS into style.css.
Note that IE 7, at least, ignores the :nth-child() usage to deliver the
borders; because we no longer wrap the set of rows (including optional
Content Cafe and ChiliFresh rows) in an intermediate table, we had to
switch to a border-top attribute. We could have gone with a straight "tr
> td" approach, but that would have added a line at the top of the first
result, which looked weird. Still an option if one really wants to.
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Dan Scott [Sun, 8 Jan 2012 22:53:03 +0000 (17:53 -0500)]
TPAC: Simply record summary navigation markup
Currently we have the next / previous links on the far right side of the
record summary page, whereas the "Showing item # of #" is on the left
hand side of the page. On wide screens, this leads to a large gap
between the two informational elements. In addition, as the elements are
floated, the vertical alignment is thrown off if you attempt to bring
them together.
The solution is to group the elements inside a SPAN with inline-block
displays for the embedded DIVs. This enables the elements to reflow
appropriately on mobile sized screens while keeping the alignment clean.
In addition, some inline style gets moved to style.css and some
unnecessary elements are removed.
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Sun, 8 Jan 2012 21:14:29 +0000 (16:14 -0500)]
TPAC: Improve copy display in record summary
In the copy counts, offer a link to display the copies at parent
libraries that have available copies. For example, if you are browsing
at BR1 and there are no available copies, but you see that SYS1 has
available copies, clicking "(Show)" beside the SYS1 available copy count
will change the search scope to SYS1 and display the copies for BR1 and
BR2.
Also, avoid displaying the copy table header if there are no physical
copies to display (for example, if there are located URIs that make the
copy show up in search results).
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Mon, 9 Jan 2012 02:43:58 +0000 (21:43 -0500)]
Prevent expand and cnoffset params from propagating
The expand and cnoffset params in record summary might result in
unexpected behaviour if allowed to propagate by default, as mkurl()
enables, so stop them in their tracks.
Also, fix an overenthusiastic URI-encoding of subjects that led to a
space getting doubly-encoded (and thereby breaking searches).
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Fri, 6 Jan 2012 03:51:00 +0000 (22:51 -0500)]
TPAC: Preserve loc, query, qtype, and sort params
In some cases, mkurl() is not enough to preserve our desired CGI params
- such as when redirects are triggered from within a Perl module, or
forms are submitted. Accordingly, the following changes address these
cases where the chosen location / query / query type was being dropped:
* Switching between account preferences
* Creating / deleting / sharing / editing bookbags
* Moving items from temporary list to bookbags
* Adding notes to items in a bookbag
* Placing holds
The primary mechanism for forms is the "preserve_params.tt2" block that
can accept a "params" list of the CGI params that you want to preserve,
but which defaults to location/query/qtype/sort. Similarly, we add the
same preservation steps to the OpenILS::WWW::EGCatLoader::Account module
for most actions.
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Thu, 29 Dec 2011 05:11:25 +0000 (00:11 -0500)]
TPAC: Propagate CGI params via mkurl()
Fix many instances where params such as "loc" are dropped during a
normal workflow, resulting in unexpected changes to the user's chosen
search scope. mkurl() preserves the existing CGI params by default
and passes them on to the created URL; for now we err on the side of
caution (preserving all params) rather than filtering any out. Manual
testing suggests this does not introduce any problems, and resolves
many.
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Bill Erickson <berick@esilibrary.com>
This alters the backend to watch when so much as one copy failed only due
to age protection. If so, a flag is set and returned back up the calling
tree for examination.
In JSPac when the flag is set an alternate confirm message is shown.
In TTPac when the flag is set the failure message is changed and override
is always allowed for the hold in question.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Move csp definitions from 002 to 950, so they can use i18n.
I don't /think/ there's a point in having an upgrade script to go along
with this, but someone who understands oils_18n_gettext() better should
weigh in.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Bill Erickson [Wed, 11 Jan 2012 14:32:58 +0000 (09:32 -0500)]
Use org_depth for INVALID penalties
* Honor the org_depth setting on the penalties when applied
* Default to org_depth 0 (i.e. global) penalty application for invalid penalties
* Use the patrons' home_ou as the penalty org unit for patron reg invalidate actions.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
This comes from an idea from Jeff Godin. For staff to indicate an
email address or phone number "invalid," for whatever definition of
"invalid" has meaning at the institution (as in invalid addresses
today), there is now a UI control in the patron editor.
This UI control invokes a middle layer method that will clear the email
(or phone) field from actor.usr, and create a corresponding standing penalty
against the user, for staff to notice next time they bring up said patron in
the staff client. Such penalties will be archived whenever that patron's
email address or phone number is updated again.
The middle layer method is a wrapper around a method that may take
different parameters (like an email address instead of a patron ID) to
potentially support future uses such as invalidating email addresses
automatically in batch.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Jason Etheridge [Tue, 10 Jan 2012 20:49:23 +0000 (15:49 -0500)]
fix breakage from recent merges
Also, a good argument for keeping all perm additions in the same INSERT in the
950 file, since git would have reported a merge conflict against master had I
done that instead of simply appending the upgrade script to the file.
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Add a "staff_alert" column to config.standing_penalty, and ...
... consult this when deciding whether to show the stop sign page in the
patron interface of the staff client, rather than explicitly checking
for the id of the ALERT_NOTE config.standing_penalty.
Now only show the standing penalty if the staff_alert value is true,
instead of unconditionally showing it for all penalties with a
block_list value. This allows staff to configure blocking penalties
that do not alert.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Tpac: better "HTML view" for shared lists under "my lists"
From the "my lists" interface, you get a link labeled "HTML View" for
any shared lists, and this link, while meant to be shared, just
gives you a search results page where the only search term is simply "in
the given list."
This commit makes the search results page a little smarter in that case,
in order to
a) show you the bookbag metadata, including name, description and
item notes.
b) allow you to keep searching *within* your list, until you don't
want to anymore, at which point there's a checkbox you can uncheck.
Jason Etheridge [Thu, 22 Sep 2011 13:17:50 +0000 (09:17 -0400)]
SMS texting
For SMS functionality we're basically converting a carrier and a phone number
into an email address and sending via SMTP like other email notifications.
There is administrative UI for configuring these mappings:
Admin -> Server Settings -> SMS Carriers
The permission ADMIN_SMS_CARRIER is needed to use this interface. In a stock
Evergreen installation, this is given to the Global Administrator group.
In this interface, any occurance of "$number" in the Email Gateway field will
change into the pertinent SMS phone number when the mapping gets used. We're not
doing anything fancy here for verifying or munging phone numbers, but you could
do munging in the pertinent SMS Action/Trigger templates, or better, contribute
code for the OPAC templates and/or the utility method get_sms_gateway_email in
Trigger/Reactor.pm.
Our set of stock mappings comes from
http://en.wikipedia.org/wiki/List_of_SMS_gateways
There's no automated process for keeping this up-to-date, though some volunteer
with a Wikipedia account could add the page to their watchlist for changes and
let us know if something needs changing.
Set the org unit setting "SMS: Enable features that send SMS text messages."
(database name "sms.enable") to True to expose the following:
* SMS notification widgets in the TT-OPAC hold placement interface (to notify
when a hold is ready for pickup)
* "(SMS)" links next to call numbers on the TT-OPAC record details page. The
interface spawned by these links require user authentication by default, but
this can be changed by setting the org unit setting "SMS: Disable auth
requirement for texting call numbers." to True. The database name for that
setting is "sms.disable_authentication_requirement.callnumbers".
* New options in TT-OPAC My Account -> Account Preferences -> Notification
Preferences (we also add in some missing prefs for holds outside of SMS)
There are two pertinent Action/Trigger templates under Admin -> Local
Administration -> Notifications / Action Triggers:
* SMS Call Number
* Hold Ready for Pickup SMS Notification
Don't disable these. We rely on the sms.enable YAOUS as the master on/off
switch.
Also, it's probably best to have just one sms.enable for the whole consortium.
If you mix and match on/off settings here, then user preferences for SMS can get
blown away if the user updates their settings in the TT-OPAC at an org where SMS
is disabled. Hrmm, the same would probably happen if the user jumps between the
TT-OPAC and the original JS-PAC.
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Jason Etheridge [Sat, 7 Jan 2012 02:02:06 +0000 (18:02 -0800)]
Fix shelf_expire_time closed date overlap test
One-liner courtesy of berick.
* Steps to test
This is time and timezone sensitive, so on the server:
Change your timezone to America/Los Angeles: sudo dpkg-reconfigure tzdata
Stop your NTP server: sudo /etc/init.d/ntp stop
Set the time to 5pm: sudo date --set 17:00:00
Stop Evergreen, Restart Postgres, Start Evergreen
On the client:
Make sure the timezone is set to Pacific time.
1) Change the Library Setting "Default hold shelf expire interval" in the Holds group to have a value of "7 days" (without the quotes) for org BR1 (or if there is an existing value, you can keep it).
2) Create a bib with one item: htest1 (Status of Available)
3) Place a title level hold on the bib
4) Check in htest1 (it should get captured for the hold)
5) Browse the Hold Shelf and note the Shelf Expire Time for the hold that captured htest1 (it should be a week from now, unless you already have a conflicting closed date configured)
6) Cancel the hold and re-check-in htest1 (to remove the Hold Shelf status)
7) In the Closed Dates Editor, Add Single Day Closing for the date noticed previously in the Shelf Expire Time for BR1.
8) Place a title level hold on the bib
9) Check in htest1 (it should get captured for the hold)
10) Browse the Hold Shelf and note the Shelf Expire Time for the hold that captured htest1 (now the bug is illustrated if you get the same date for Shelf Expire Time as you did before, since that day is now a Closed Date and should be skipped over. The patch should fix this.)
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Major enhancements to openils.widget.PCrudFilterDialog
openils.widget.PCrudFilterDialog is (now) a dijit that allows users to define
inclusionary filters based on any number of rows that specify a field
from a given fieldmapper class, an operator, and a value (or range of
values, for the [not] between operator). The resulting filter is
suitable for use as the where clause of a pcrud search call.
AutoGrid has an option, showLoadFilter, that allows you to easily
provide a filter dialog in any AutoGrid-based interface, with some minor
caveats (see the comments at the top of the source for
openils.widget.PCrudFilterDialog). AutoGrid will also pass along the
suppressFilterFields option, which works analagously to the
suppressEditFields option. You can also build your own interfaces to
use this dijit without AutoGrid, if desired.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Tue, 3 Jan 2012 20:46:25 +0000 (15:46 -0500)]
More aggressive recalc of standing penalties
In the staff client, the Refresh button in the patron display will explicitly
ask the server to recalculate standing penalties for the patron. Other automatic
refresh-like behavior meant to synchronize parts of the patron display will not
do this.
This change tweaks the logic to ask for a recalculation with all refresh-like
behavior in the patron display, and will catch such things as staff changing the
user's permisssion profile.
An example of how you might test this:
Admin -> Local Administration -> Group Penalty Thresholds
Dan Scott [Thu, 29 Dec 2011 18:46:24 +0000 (13:46 -0500)]
SETVAL the permission.grp_tree sequence after adding pinned IDs
If we do not update the associated sequence after adding pinned IDs,
sites will be unable to add new permission groups until enough attempts
have failed. Let's bypass that little bit of pain.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Thu, 29 Dec 2011 18:33:38 +0000 (13:33 -0500)]
Prevent permission group conflicts in 2.1 upgrade script
The 2.0-2.1 upgrade script relies on pinned IDs for permission.grp_tree
entries, which might conflict with custom permission groups that a site
might have added previously. A little manipulation can make life safe
for the pinned IDs.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
James Fournie [Wed, 16 Nov 2011 00:56:16 +0000 (16:56 -0800)]
Making the user profile selector disabled rather than readonly
in the case of a user editing their own account. This prevents
a nasty bug whereby Dojo widgets with the readOnly flag set
become labels and therefore do not correctly hold a 'value'
like a normal form widget. See LP#806625 for details.
Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Wed, 30 Nov 2011 04:09:47 +0000 (23:09 -0500)]
Prevent null 852 $a in marc_export
852 $a is supposed to correspond to the institution holding the item
from which access is given, according to the MARC Format for Holdings
Data specification. As the org unit shortnames typically don't
correspond to one of the MARC Code List for Organization entries, we've
assumed that users will define the --location parameter; however, if
that parameter isn't defined, the empty string is used and an empty
subfield is generated. This, in turn, makes other MARC-parsing tools
unhappy. So, only generate an 852 $a if we have an actual value for the
--location parameter.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>