47 ================ 17/08/23 Handle nulls in name fields when constructing OwnerName 16/08/23 Smartphone UI tweaks #1096 16/08/23 Use 2FA buttons and validate user has set up TOTP before enabling #1318 16/08/23 Do not send password reset emails for disabled user accounts 16/08/23 Fix report param extraction so it doesn't fail with incomplete tokens 16/08/23 Fix Mailmerge->Send Email to respond to email tokens #1088 15/08/23 Fix move_adopt so animal or person can be chosen in any order 14/08/23 Stock take ported to new smartphone UI #1096 14/08/23 Additional fields: Merge separate columns into a single options column 14/08/23 Perform homecheck in new smartphone UI #1096 14/08/23 Check license and complete diary support for new smartphone UI #1096 13/08/23 Fix bug with extract_email_tokens being fed bytes 12/08/23 move_adopt: validate checkout/paperwork values at server side 11/08/23 Add log support to people in new mobile interface #950 11/08/23 Use same scheme with 2m cache for splash/logo.jpg 11/08/23 Fix bug where saving an appointment reset the amount to $0 10/08/23 Do not show checkout under Move->Adopt for animals with no fee 10/08/23 Allow RescueGroups to be published to more frequently than 24 hours 09/08/23 Add {{CC}} and {{BCC}} email tokens #1088 09/08/23 {{SUBJECT}} and {{FROM}} email tokens in template support #1088 09/08/23 Option to enable thumbnails in clinic screens #1259 09/08/23 Advanced find animal: Seach on diet #1313 09/08/23 Advanced find animal: Search on jurisdiction #1267 09/08/23 Allow paperwork generation to be disabled #1316 07/08/23 Allow additional fields to be hidden #598 07/08/23 Low stock level alerts #954 06/08/23 Merge person on email/cell checks first name field to avoid false positives 05/08/23 Hide the CSV import delete database option for large databases 05/08/23 Fix bug where reserves with move date but no animal could NPE during validation 04/08/23 Audit when document templates are edited, include name on audits 04/08/23 Default stock unit price during give of vacc/test #441 04/08/23 CSV import option to override animal entry date to today 03/08/23 New Move->Adopt option to generate and request signed paperwork #1231 03/08/23 Adoption contracts via checkout should use new link to animal/person 02/08/23 Fix error generating animal docs with a broken preferred image 02/08/23 Add warning of app retirement to smartphone UI as well #1096 02/08/23 Implement incident and log functions in new mobile interface #1096 02/08/23 Limit datepicker to today when giving tests/vaccinations 01/08/23 Remove people with only a cancelled reserve after X years #1239 01/08/23 Show an icon to indicate a form is for an existing person #1308 01/08/23 Fix client side validation of boarding dates/times 31/07/23 Remove animal media X years after animal leaves/dies #1254 31/07/23 PetRescue: Option to use adoption coordinator contact info #1314 31/07/23 Add form field to indicate merge person, create without merge option #1308 25/07/23 Use CSS3 DnD grab/grabbing cursors when dragging and dropping in shelterview 25/07/23 Allow diet to be added as a column to find animal results 24/07/23 Warn when adopting animal with reservations to person without reserve #1278 24/07/23 Add extra emblems (orange/brown square/circle, soccer ball, lightning) 21/07/23 Allow import of incident data via CSV #1232 21/07/23 Use days for long term instead of months and make it configurable 20/07/23 Long term alert should use long term months config switch 19/07/23 Refactor animal/person warning code, consistent for transfer/reclaim 19/07/23 Show animal and person warnings when creating movements/reservations 19/07/23 Add $CURRENT_DATE_TIME$ token 17/07/23 Extend datepicker to -70 years 17/07/23 Validate additional fields for punctuation and unique/reserved names #1310 17/07/23 Refactor message board add dialog to match newer screens 17/07/23 Defensively handle bad image id inputs when loading images 14/07/23 Separate help menu for clarity 14/07/23 Install recommended reports during database creation instead of /main 14/07/23 Fix bug where 0.0 weight logs appear after a cloned animal is edited 13/07/23 Fixed bug that could cause DOB to be reset to today during CSV import 12/07/23 Add <> wordkey 12/07/23 Ability to generate random licence numbers, fix bug in licence display 12/07/23 New location filter: My coordinated animals 11/07/23 Users can now choose their preferred shelter view mode #1114 11/07/23 additional fields in autocomplete when entering online form names #1309 06/07/23 Allow CSV animal deceased fields to be updated on existing records 05/07/23 Refactor login and valid user check, remove redundant code 05/07/23 CSV import fields: ANIMALDECEASEDREASON/NOTES, ANIMALEUTHANIZED 05/07/23 Add Adoption Coordinator to find animal result columns 05/07/23 Set stripe API version it was written for in codebase 04/07/23 If onlineform has breed1, but no species, use species from breed 04/07/23 Add different types of death as available location filters 03/07/23 Check user can still login as well as exists #1307 03/07/23 Check user still exists as well as logged in at endpoints #1307 01/07/23 Add all movement types as available location filters 30/06/23 Online form: create animal and person (link via brought in) #1305 29/06/23 Show boarding events on the timeline #623 29/06/23 Two alternate map types where center location can be chosen 28/06/23 Fix animal/person validation on move_ screens and refactor 28/06/23 Show document templates that will not appear anywhere as disabled in list 28/06/23 mode security fix broke converting jpg2pdf 27/06/23 Fix bug where giving a treatment before it is required broke things 27/06/23 Consistent create payment widget for appointments and boarding #623 27/06/23 Add wordkey for BondedNames (name / bond1 / bond2) 26/06/23 Recently deceased search was including non-shelter 26/06/23 Add alternative Romanian locale to use Euro instead of Lei 26/06/23 Boarding screen: Handle locations with no units #623 26/06/23 Security fix: login screen could cause a flood by leaning on enter 25/06/23 Boarding animals should never be adoptable #623 25/06/23 Merge animal copies key fields now, same code for csv and forms #698 25/06/23 Add "weight" online form field for animals 24/06/23 Security fix to detect and drop invalid mode parameters to POST 23/06/23 Alerts for boarding animals entering/leaving today #623 23/06/23 Option to send form submissions to the fosterer #1183 23/06/23 Stop active movements being returned when boarding #623 23/06/23 Add "neutered" as online form field for animals 22/06/23 Delete on process should run from code.py for multistep autoprocess #1297 22/06/23 Assign shelter location/unit when boarding is active #623 22/06/23 Adding boarding permissions to roles screen #623 22/06/23 Adding boarding type with default cost #623 21/06/23 Add slideshow HTML template #905 21/06/23 Add animalviewcarousel template 21/06/23 Option to specify the animalview template in adoptable_js 21/06/23 PetFinder: Fix new publishing issues with strays 21/06/23 Boarding: show fee column, create payment button #623 20/06/23 New (default) option to delete online forms on process #1297 19/06/23 Boarding: show relevant info in the animal banner #623 19/06/23 LicenceNumber wordkey for animal documents 19/06/23 Boarding tabs, options and calendar view #623 19/06/23 Add CURRENT_DATE_FDM/LDM/FDY/LDY SQL tokens 18/06/23 animal.Adoptable checking for animal photos incorrectly 14/06/23 Location filters for internal locs should only apply to in care 14/06/23 PetFinder: Allow adopted animals to be sent with status X 12/06/23 Looking for can now match on animal flags #640 12/06/23 Automatic BuddyID microchip registration (any chip, US only) 12/06/23 Update description of existing animals via aimal CSV import 07/06/23 Use a lighter background for custom emblems 07/06/23 Fix other areas (email/pdf) to handle linked documents #1261 07/06/23 Shelter view group: Age Group and Litter 07/06/23 Shelter view groups: Location and Litter, Status and Location 07/06/23 Filter deceased animals out of trial adoption ending alerts 06/06/23 Shelter view grouping for litters 06/06/23 Tidy up license screen code, show animal emblems 06/06/23 Link movement/licence documents to animals+people instead of copying #1261 05/06/23 Clear revision number when changing a report name/category 04/06/23 Move diary task execute button to animal/person diary tabs #1292 03/06/23 Option to edit/request payments from Move->Adopt an animal (Saggi) #1294 01/06/23 Remove unused images from RescueGroups/AdoptAPet before publish #1291 01/06/23 Add given dates to medical CSV export under SQL Interface 01/06/23 Fix bug where litter IDs containing apostrophes didn't show littermates 01/06/23 Support for additional fields on movements (Saggi Neuemann) #55 31/05/23 Mobile photo uploader: option to upload to recently adopted animals 31/05/23 Option to set trial adoption default length #750 31/05/23 Bring active boarders onto the shelter and show location fields #623 30/05/23 Only check/expire inactive litters as part of the batch 30/05/23 Option to auto complete diary notes when animals are deceased 29/05/23 Include units in emblems on daily observations #489 28/05/23 Daily observations quicklink #489 28/05/23 Remove modernizr - no longer needed #1287 28/05/23 Use smaller thumbnails for media table view 28/05/23 Set couple from online form if surname2 is present and has value #1264 27/05/23 Fix bug where additional field changes were not being audited 27/05/23 Do not create ES01/02 log messages if they already exist #1286 26/05/23 Add rename facility to document repository #389 24/05/23 Fix bug when filtering media after tablesorter upgrade 24/05/23 Add VaccOutstandingCount to animal query for views/service calls 24/05/23 Searchable additional fields on advanced find screens #74 24/05/23 SACmetrics: omit months with dates in the future 23/05/23 Fix bug when exporting incident CSV from SQL interface->Export 22/05/23 Daily observations feature/screen #489 21/05/23 Highlight in person banner if their last adoption is deceased 19/05/23 Minor mobile layout fixes, remove pdfjs dependency for deprecated app 19/05/23 Show fractional lb on find results 18/05/23 Fix filter breakage caused by tablesorter upgrade 18/05/23 Update tablesorter to 2.31.3 17/05/23 Update to JQuery 3.7.0 and JQueryUI 1.13.2 16/05/23 Stop select/filter buttons occluding first table header 16/05/23 Configurable FTP connection timeout, default=60s due to PetFinder #1280 15/05/23 Fix bug viewing/deleting document repo/report images with & in name 11/05/23 Map reports will now concatenate multiple columns to make easier SQL 11/05/23 Include email counts for send email/recipient list on mail merges #1266 10/05/23 Refactor CSV import rules, add ones for test/vacc/med 10/05/23 Mail merges will now count/send to EmailAddress2 if present #1266 09/05/23 Merge animal was reparenting additional person links with animal IDs 08/05/23 Allow users to choose their own quicklinks, inheriting from system #1072 06/05/23 Font preview on watermark options tab #1276 06/05/23 Fix missing indexes for ID Number fields 03/05/23 Support ANIMALDESCRIPTION when importing CSV #1273 01/05/23 Include couple email if set when emailing from person #1265 30/04/23 wordkeys: OriginalOwnerIDNumber/CurrentOwnerIDNumber/ReservedOwnerIDNumber 30/04/23 merge_person_details, include couple fields, optimise for single query 29/04/23 clone_from_template: if calculated date < today, use today 29/04/23 Validation for second email field #741 28/04/23 Merge new person fields/DOB/ID when merging details #1257 28/04/23 Fix bug in report SQL syntax checker when using CURRENT_DATE+/- 28/04/23 Add new person fields to wordprocessor tokens #1270 27/04/23 Ability to suffix report columns with N2BR to replace linebreaks 26/04/23 Person date of birth/id number fields #1257 24/04/23 Option to populate couple fields from online forms #1264 24/04/23 Check couple fields for similar when adding new people #741 23/04/23 Translate null ownertypes to individual #741 22/04/23 Attempt to remove incoming processed forms when browser window closes 21/04/23 Mobile interface, take photo and convert to PDF #929 20/04/23 Use configuration item to control name/couple format #741 20/04/23 Show count of records displayed in waiting list 20/04/23 Add location filter to photo uploader #1249 20/04/23 person_similar was checking incoming mobile against home, incorrectly 19/04/23 Second contact fields for people #741 17/04/23 Use map link for incidents, make sure it opens in app on Android/iOS #101 15/04/23 Fix bug where the wrong incident number was shown on citations 13/04/23 reinstall_default_data only needs to clear lookup tables 11/04/23 Re-implementation of mobile photo uploader #1249 10/04/23 Add Warning/OwnerWarning wordkeys to access warning content 07/04/23 Fix email templates when emailing ACO from incident 06/04/23 Add person: similar check in case they put cell phone in home phone #1170 03/04/23 URI encode links properly for QRLink/QRShare in document templates 30/03/23 Truncate online form fields headed to short text columns 29/03/23 Fix formatting bug where Move->Reclaim an animal would not create costs 23/03/23 csv_import service method #1230 21/03/23 Always use oldest template animal when multiple are available 20/03/23 Set hold until date when cloning from a template 15/03/23 Fix to only default hold date if the user interacted to tick hold 11/03/23 Truncate incoming form preview in display table 10/03/23 Fix to merge person comments when merging people 06/03/23 Fix to ensure changes made via movement validation are audited #1242 06/03/23 Handle returning retailers via movement validation like fosters #1242 03/03/23 Fix bug where TCP connection errors were not handled during csv import 01/03/23 Add send email retry mechanism for cron tasks (reports/diaries) #1238 24/02/23 Add event menu items (Roman+Saggi) #1234 24/02/23 Add Romanian locale 23/02/23 cron.animalcsv/personcsv should output str instead of bytes to stdout 23/02/23 Add $$DescriptionAttr$$ for HTML template meta tags (animalview) 19/02/23 Preview publishing template and online form should open in new tabs 18/02/23 Bug calculating vaccinated shelter animals by type on annual figures 17/02/23 Use reverse proxy for payment processor callbacks on sm.com 16/02/23 Use HTML links on lost/found match report #368 16/02/23 Add red/yellow/blue/green/purple coloured emblems 15/02/23 Template animals: option to calculate from DOB #93 15/02/23 Check permissions for delete buttons on incoming forms 14/02/23 Delete additional field values after merging animal/person 11/02/23 Substitute line breaks automatically in all word processor tokens 10/02/23 Add option for more 4 more payment mappings (and easy way to add more) 10/02/23 Copy the fee when creating a new due payment 09/02/23 Retry failed S3 PUT upto 5 times with increasing intervals 08/02/23 Add lksoutcome for outcome fields in v_animal and report/querybuilder 08/02/23 Include medical info in clinic documents 07/02/23 Suggest current vet email address when emailing from media 07/02/23 Truncate long payment comments when creating transactions 03/02/23 Batch processes to update breed names #1226 03/02/23 Suppress redundant flag change log when creating new person 01/02/23 Fix to additional field merge so that target doesn't need to exist first 46 ================ 30/01/23 onlineform: breed/species/colour lookups should have blank option 29/01/23 When merging people and animals, copy/merge the additional field values 28/01/23 Option to never anonymise adopters #1218 23/01/23 Add animal events slider (Saggi Neuemann) #1221 23/01/23 FTP TLS support for found/24pet 23/01/23 Event configuration options (Roman+Saggi) #1220 23/01/23 Event page (Roman+Saggi) #1217 23/01/23 Default payment types to accounts link broken in new databases #1219 22/01/23 Remove flag change message when first saving animal with no flags 20/01/23 entry/intake history UI (defaults to off) #25 19/01/23 Backend implementation/unit tests for entry history #25 17/01/23 Custom SMTP overrides should only ever use the configured From address 17/01/23 Fix bug with European locales generating monthly figures report 17/01/23 Event find screens (Saggi Neuemann) #1216 17/01/23 Add age group filter to animal chooser (Saggi Neuemann) #1215 16/01/23 publishers only need to strip personal data from OWNERNAME 12/01/23 Savourlife: Set under/over 5 based on good with children 09/01/23 Show homechecker info on reservation book (Mike Forrest) #1212 09/01/23 Allow access to watermark settings from config (Mike Forrest) #1213 06/01/23 Make diary notes a default of 1 hour long 06/01/23 Never use SQL LIKE comparisons for usernames when resolving users 06/01/23 Use user IDs for resolving security maps (quicker/more secure) 06/01/23 PetRescue: set incompatible <5 and <12 based on good with children field 04/01/23 Stop pointer events trying to scroll the screen #1188 04/01/23 Shelter view mode to show fosters separate from sites #1141 04/01/23 Stock usage dropdown, make location suffix so typing searches names #1208 03/01/23 Link adoption to event (Roman+Saggi) #1207 02/01/23 Add Latvian locale 29/12/22 Audit retention can be controlled via sitedef/config db_retain_audit_days 28/12/22 Changing configuration counts as a change for publishing purposes 27/12/22 additional* online fields for lost/found animals, incidents and waiting list 26/12/22 Changes to media count as a change for publishing purposes 26/12/22 Show a message on screen when publishing and there are no changes 22/12/22 No animals to publish should not qualify as an alert 21/12/22 Do not run adoptable publishers if there have been no changes 19/12/22 Show a warning that the app is going to be retired 19/12/22 Upgrade pdf.js to latest version (attempt to fix iOS app bug) 13/12/22 Rewrite signature.js to use pointer/touch events without touchpunch #1188 13/12/22 Option to have treatments for a regimen created up-front #37 #570 10/12/22 Analyse UA and form fields for bot junk in online forms 07/12/22 Log when a spambot is blocked 07/12/22 Correct where a previous Swedish translator used "cat" instead of "animal" 06/12/22 Add DaysOnShelter wordkey 05/12/22 Shelter view: location and species (no virtual) mode #1200 05/12/22 Update Hebrew translation (Saggi Neuemann) #1204 02/12/22 Improve form spambot protection 02/12/22 Merged event_new (Roman Safovich) #1186 27/11/22 Cardcom invoicing for non-cc payments (Saggi Neuemann) 23/11/22 Never vaccinated defaults to off #944 21/11/22 adoptable_js: Subsitute \n for
to make life easier for callers 21/11/22 Truncate all comment length fields in find result screens 21/11/22 Add extra litter filters for 6 months, 2 years, 3 years 21/11/22 Fix bug that showed litters as complete if any expiry date set 18/11/22 Never vaccinated alert/emblem #481 #944 16/11/22 System log type option, configurable via defaults #804 16/11/22 Show column for littermates on the litter editing screen #1195 16/11/22 Restrict new litters to 20 animals to prevent mistakes #903 10/11/22 Add extra anibase/identichip prefixes: 978102, 972055 09/11/22 follow redirects when retrieving images via http 09/11/22 csvexport animals: include costs with support for importing #1192 09/11/22 csvexport animals: embed URLs instead of base64, allow all pdf/images 07/11/22 Updated Hebrew Translation (Saggi Neuemann) 07/11/22 Classify bulk emails with Precedence: Bulk to stop backscatter 05/11/22 Recalculate age when generating documents from animals 03/11/22 Fix bug where fostered animals show age group at entry instead of now 01/11/22 Disable TinyMCE context menu so browser cut/copy/paste can be used 01/11/22 adoptable_js: filters for goodwith and where #1097 01/11/22 Sort person flags column before storing 30/10/22 Support CTE/WITH syntax for reports and in SQL Interface 28/10/22 Add adoptable emblem #1189 23/10/22 Option to supply a custom WHERE clause when exporting animals 20/10/22 Hide location of non-shelter animals in find animal results 20/10/22 Fix timezone issue when receiving payments via processors 19/10/22 Reservation book: Email people linked to selected reserves #1180 18/10/22 Reservation book: select by animal, view media and cancel button #1180 13/10/22 Include animal/person name in online form media name #1181 12/10/22 Rename foundanimals to FoundAnimals/24Pet #1182 12/10/22 Use search input type to prevent android keyboard bug with return key 30/09/22 Update signature widget to latest version 20/09/22 Record changes to person/animal flags in the log #1176 20/09/22 Back button now closes iframe on adoptable_js #1156 19/09/22 Fix codemirror z-index issue with dialogs #1178 15/09/22 Fix performance issues with searching ES0X/AC0X records 14/09/22 f### id attributes for online form checkboxgroup/radio buttons 14/09/22 Visual indicator that system log messages cannot be edited 14/09/22 System log messages AC01/AC02/AC03 relating to adoption checkout #1177 12/09/22 Smcom email sending limits now do not apply to self configured smtp 10/09/22 Separate smcom email sending limit from config limit for open source users 09/09/22 Stop publisher colour categories being chosen, add breed categories #1175 06/09/22 Remove users without VIEW_DIARY permission as diary note targets #1174 04/09/22 Set clinic calendar isRTL as well #1173 04/09/22 Set calendar isRTL for Hebrew/Arabic #1173 31/08/22 Support for importing Stripe CSV files #1172 31/08/22 Allow sort to be set for html_X_animals service methods #720 29/08/22 Address lookup from postcode for UK/Ireland/Canada/Holland #306 27/08/22 Make animals and people hyperlinks in looking for report 25/08/22 Allow multiple entry categories to be set for sac metrics #1153 24/08/22 Allow upto 20 custom emblems 23/08/22 Check the home telephone field when finding similar people 22/08/22 Change medical profile column labels to match dialog (Name->Profile) 18/08/22 Add locale for Zimbabwe en_ZW 18/08/22 SAC Metrics publisher now live #1153 16/08/22 User screen shows login/super/2fa enabled in a single column #1055 16/08/22 Support for 2FA via Google Authenticator #1055 16/08/22 Add QRCodeJS lib, backend code for one time passwords #1055 12/08/22 Option to export incoming forms in a CSV file #1164 12/08/22 Suppress system generated form fields in notification emails #1166 12/08/22 Strip style tags when storing forms #1165 11/08/22 Add Indonesia/English locale 09/08/22 Require 3 chars to be entered for vacc/manufacturer autocomplete 09/08/22 maint endpoint for sac metrics, integration tests #1153 09/08/22 First draft of UI/config for SAC Metrics publisher #1153 08/08/22 Restrict simple search to 30 chars (attacks with long queries) 08/08/22 Fix hover style for media icon mode (stops icons moving around) 05/08/22 Code to be able to migrate to another S3 compatible provider 04/08/22 Event module start and wp tags (Roman Safovich) #1161 04/08/22 Add live release rate to stats on home page 04/08/22 Fix bug where adoptable=1 can be set when location does not match 04/08/22 Final refactor/speed improvements to home screen 03/08/22 Visual indicator of cache time used on home screen sections 03/08/22 "Up for adoption" home page links should obey sites/location filters 03/08/22 News checks should be part of the batch with no blocking of home page 03/08/22 Report update checks need only be done as part of cron/daily 03/08/22 New movements with a return category not displaying correctly in the table 03/08/22 Reports, use longer cache ttl, move onto smcom servers for performance 02/08/22 Re-check animal status when animal is unlinked from a reservation 01/08/22 Implement and unit test new SAC Metrics API publisher #1153 30/07/22 Thumbnail style incorrect in transport book, person find/image broken 30/07/22 Thumbnails not styled correctly and missing sex in medical/test/vacc books 30/07/22 Improve look of tables by applying row styles 30/07/22 Fix OOM bug on iPhone due to needlessly applying table cell styles 29/07/22 Replace use of Object.assign with common.copy_object due to error reports 29/07/22 Increase cache times for animal_view and online_form_* #1158 28/07/22 Add caller and victim as columns for incident results #1157 28/07/22 Auto disable shelterview drag and drop for mobile devices 27/07/22 Show complete address for people under general search 27/07/22 Add maint_db_dump_dbfs_files cron task 24/07/22 Merge/fix PR #1151, add Sponsor flag and Sponsor/Vet fields (Roman Safovich) 24/07/22 Handle favicon.ico calls from old browsers 24/07/22 Cache 404s at proxy/CDN level as they can be a DoS vector 23/07/22 Config option to allow future intakes on shelter (on by default) #1154 22/07/22 Prevent /image and /service sending session cookie for caching 22/07/22 Retry and error notification mechanism for failed S3 PUT #1155 22/07/22 Use block elements instead of
in adoptable_js 21/07/22 Hebrew translation update (Saggi Neuemann) 19/07/22 Do not look up manufacturer/batch numbers at all if option is off 18/07/22 Annual figures: do not count neuter/spays before datebroughtin 17/07/22 Stop new animals with future intake date appearing on shelter #1150 15/07/22 Fix bug where person chooser not showing similar people during add 15/07/22 Show alerts for unsigned/signed documents on animal records 12/07/22 Fix FTP chdir/recovery path for reconnection in AdoptAPet 12/07/22 Fix partially implemented additional field type for Time 12/07/22 Fix bug where clone_from_template copied the time of DateBroughtIn 08/07/22 ActiveLitterMates wordkey 07/07/22 Fix bug that causes display of SQL interface errors to be delayed 07/07/22 Fix bug using LOGTYPE in reports after refactoring #1096 05/07/22 Restrict the maximum width of the useragent in incoming forms 05/07/22 Visual improvements to default online form template 05/07/22 Use efficient memory cache for collation/receipt sequences #1149 02/07/22 Use utf-8 when writing transaction logs 02/07/22 Set base tag for online forms so that they can be proxied #1147 01/07/22 Do not show the report toolbar for the html_report service call 01/07/22 Prevent hidden pickuplocation on new animal choosing an inactive item 28/06/22 Copy pickupaddress column when cloning an animal 28/06/22 Allow S3 credentials/endpoint to be set as sitedefs #1146 28/06/22 Hide intake time as well as date for non-shelter animals 27/06/22 If size is removed, always send M to PetFinder 24/06/22 Read through disk cache for thumbnail images to avoid reliance on CDN 22/06/22 Highlight bad email addresses in dialog, stop using global error #1138 22/06/22 Refactoring old stuff out of html.py #1145 22/06/22 Refactoring report criteria for consistency #1145 22/06/22 (sm.com) make sure account alias is set correctly when sending email 21/06/22 basic check-a-chip integration for the UK and US #1144 21/06/22 Refactor/split common out into html/validate/microchip js #1144 20/06/22 Annual figures section for non-shelter microchips implanted #1140 20/06/22 Re-implement mobile report criteria in new UI #1096 20/06/22 Fix error that can cause bad data to prevent the calendar loading 17/06/22 Prevent auto disabling of RescueGroups publisher due to transient 530 11/06/22 Stop edits to investigation records removing the person 10/06/22 Expired online forms are saved in the deletion log now 09/06/22 Fix images in PDFs: iif was causing both expressions to be evaluated 08/06/22 Revert validation fix, roles still need to be visible for super users 06/06/22 Allow font size to be chosen when printing mailing labels 05/06/22 Record the user-agent with online form submissions 02/06/22 Fix insurance not hiding from movements correctly when set to remove 02/06/22 Allow media to be moved to other animal/person records #822 01/06/22 Handle thumbnails for youtube.com/shorts URL format 01/06/22 Limit microchip fields to 15 chars 01/06/22 Implement "remember me" for mobile login #1096 23/05/22 Option to set the starting display of media tabs to table mode 21/05/22 Don't suggest state if city is blank 20/05/22 Updated Hebrew Translation (Saggi Neuemann) 20/05/22 Updated Swedish Translation (Carina Lekare) 17/05/22 Fix unicode bug when creating CSV files from publishers #1134 14/05/22 Audit and store auto-deleted online forms in the deletion log 14/05/22 Allow 15 slots for custom animal emblems (increase from 10) 12/05/22 Mobile login rewritten, fleshing out of new mobile interface #1096 11/05/22 csvimport: support ANIMALCOATTYPE (Peter Van Caeseele) #1132 10/05/22 Fix bug in medical regimens removing default values on load 09/05/22 Add cost per treatment for medical regimens/profiles #1095 06/05/22 Left align online form checkboxes on mobile 05/05/22 import PayPal CSV: allow payment type to be set per transaction #963 04/05/22 No longer hide the person field for TNR/Release movements 04/05/22 Regimen edits are now audited correctly #1129 04/05/22 Fix smartquote replacement to use unicode rather than HTML entities 03/05/22 Do not allow ES01/2 log messages to be edited #1094 27/04/22 csvimport: support declawed and special needs (Peter Van Caeseele) 27/04/22 SavourLife: Fix bug with updating held status 25/04/22 csvimport: Support person image/PDF (Peter Van Caeseele) #1126 25/04/22 Allow future dates in vacc/test give dialogs again due to outcry 22/04/22 Query builder: Animal date of birth between two dates criteria 22/04/22 Animal find: filter option for heartworm negative 21/04/22 Tweak Peter's patch to split lost/found and support additional fields #648 21/04/22 Allow incident/lost/found column config (Peter Van Caeseele) #648 21/04/22 SavourLife: do not send animals without a photo 20/04/22 Option to hide looking for (Peter Van Caeseele) #1034 20/04/22 Option to email login credentials when creating a user account #362 19/04/22 wordkeys: Extra DisplayXIf tokens for entire/neutered animals 19/04/22 csvimport: fix bug where warnings were logged for blank image/pdf rows 19/04/22 Query builder: support payment records #1116 19/04/22 Datepickers disable choice of future dates in give dialogs 18/04/22 Query builder: support combined medical data #1116 18/04/22 Query builder: test for additional fields with/without value #1122 17/04/22 Updated Swedish translation (Carina Lekare) 11/04/22 move_* screens: if first lookup item was inactive it still displayed 05/04/22 All publishers: FTP photo upload uses IDs rather than medianame #1117 05/04/22 PetFinder: Fix photo urls to use IDs rather than names #1117 30/03/22 SavourLife: Support sending bonded animals 30/03/22 CSV import: Fix for merging ANIMALFLAGS 27/03/22 Fix decoding bug when using SQL Interface->Execute Script 26/03/22 Add Mozambique en/pt locales 24/03/22 Use safer/quicker regex rather than DOM for removing HTML tags 23/03/22 Adoption checkout causing blank payment types from movement tab 23/03/22 SQL interface counting select query results off by 1 23/03/22 Docs: Do not include boarding in TOTALCOSTS for off-shelter animals 23/03/22 Use DOCMEDIAID not name for document images, stop issues with duplicates 22/03/22 Dialogs were showing last changed instead of created time 21/03/22 csvimport: Support ORIGINALOWNERFLAGS column 21/03/22 Setting location+unit via bulk change animals now writes log entries 21/03/22 Stack nested tables vertically on mobile to prevent h scroll #1103 19/03/22 Remove redundant tooltips from animals, add callouts/placeholders 19/03/22 Fix CurrentOwnerFirstname/Lastname tokens for non-shelter animals 17/03/22 Prevent endless loop with collisions using OOO coding scheme 17/03/22 Bulk change animals can now remove flags #1112 17/03/22 Publishing option to include/exclude non-microchipped #1113 17/03/22 CSV import: allow import of PDF files via ANIMALPDFDATA/NAME #888 17/03/22 PetRescue: always send microchips as they have a hide option now 15/03/22 Allow adoption checkout from Move->Adopt an animal #1110 15/03/22 SavourLife: Clear dogId after calling setDogAdopted/DeleteDog 15/03/22 Auto-updater should still check DB type/version 14/03/22 DB update to remove old ASM2 report definitions 11/03/22 Send saved clinic documents to animal if owner not available 11/03/22 Audit emails sent by diary notes 11/03/22 Fix querybuilder, CodeMirror schema change broke it 10/03/22 Add media_file service API call 09/03/22 PetFinder: Filter out permanent foster/trials from stray upload 09/03/22 Sort incidents desc so newest are included above search limit 09/03/22 Advanced find intake searches DateBroughtIn and MostRecentEntry 09/03/22 Correct table/column schema for new CodeMirror 09/03/22 Fix RTL issues with SQL/HTML editor 09/03/22 Update CodeMirror to latest stable release 07/03/22 Validate that online form field names are unique #1111 07/03/22 Coordinator/fosterer shelter view group by species 45 ================ 04/03/22 Use viewport units to increase sig size on mobile #1109 03/03/22 Fix non-shelter location filter with search #1107 03/03/22 Clone microchip number if allowing duplicates is on 02/03/22 Add some additional emblem icons 01/03/22 Use age instead of age group for shelter view sort 28/02/22 Fix non-shelter owner additional fields in templates 28/02/22 Shelterview: Location and Species (Age group tertiary sort) 25/02/22 Separate permissions for dispatch and respond to incident #1104 23/02/22 Warning popup for person records #1086 23/02/22 Dangerous flag for individuals #902 21/02/22 Allow stock deduction when marking animal deceased #268 18/02/22 SavourLife: Allow interstate adoptable to be set per animal 17/02/22 Query builder criteria for good with cats/dogs/kids/housetrained 16/02/22 CC and BCC email dropdowns append instead of replacing addresses #1060 16/02/22 Include upcoming clinic appointments in fosterer email #1102 15/02/22 Update animal and person links in additional fields during merge #1100 15/02/22 Include batch number in AnimalVaccinations table token 12/02/22 Do not warn for matching blank addresses of banned owners 10/02/22 Stop malformed showif rules causing javascript errors 10/02/22 PetFinder: send H+F animals separate from adoptability and make an option 08/02/22 SavourLife: Change to token based authentication 07/02/22 PetFinder: Support Held and Found statuses 07/02/22 Increase the size of profile/treatment/dosage boxes in medical 04/02/22 Add ANIMALPICKUPLOCATION/ANIMALPICKUPADDRESS CSV import fields 27/01/22 Bug when advanced searching for pickup location 25/01/22 Set global search autocomplete to require 3 chars #1089 24/01/22 Include media date in photo URLs to petfinder to stop relisting issues #1087 24/01/22 data-min prevented setting waiting list urgency to 0 18/01/22 Trigger batch option to reset NNN code counts for the year 18/01/22 Only auto exclude animal images from forms, people etc not sent anywhere 18/01/22 SavourLife put trial adoptions on hold instead of adopted 17/01/22 Add options UI for default animal age 13/01/22 Multi-select should use last year of litters instead of active 13/01/22 Prevent inner radio/check group fields becoming required with showif 12/01/22 Show size/weight in banner to assist with giving medications 11/01/22 Fix bug with transport dialog buttons not re-enabling #1084 11/01/22 Require 3 chars to be typed before autocomplete of city/state #1085 09/01/22 Allow SMTP server to be overridden #942 05/01/22 Rename templatedocument.Show to ShowAt to stop MySQL breaking 05/01/22 Allow $URL to be used in payment/request signature/checkout emails #1083 03/01/22 Flag filter on animal multi-select #633 31/12/21 CardCom by email option (Saggi Neumann) 31/12/21 Strip background-image CSS directives from online forms before storing 30/12/21 Multi animal select now filters the list instead of bulk selecting 28/12/21 Use pdf.js to allow viewing of PDFs in the mobile app #584 28/12/21 Allow a Retain For period in years for online form submissions #1077 27/12/21 Person should not be mandatory to create an incident from online form 26/12/21 Do not include emblems when sorting by animal name in find results 26/12/21 HasActiveReserve should observe ReservationCancelledDate 23/12/21 Additional colour options for medium theme 22/12/21 Search all media for matching notes in find animal 19/12/21 SavourLife/PetRescue option to send microchips for all listings 15/12/21 Add a medium/mid-tone theme #1076 15/12/21 Fix bug generating clinic documents with no person 14/12/21 Document template types, fixed template rename display bug #364 13/12/21 Show attachments when emailing media, use name/notes #1074 13/12/21 Hidden config for future limit on date brought in #1075 09/12/21 Clickable icon in table header to show filter line #1073 09/12/21 OOO token for animal codes (animals in month) #1071 07/12/21 Fix regression with last movement duplicating staff rota people 06/12/21 Fix regression with JQuery 1.13 and rearranging lists 06/12/21 Last movement on person using latest ID instead of date 06/12/21 Animal age not updating on all animal tabs 05/12/21 Make dark mode easier to read, use qs to force theme reload 04/12/21 Add OR support to online form showif 03/12/21 Update to JQueryUI 1.13.0 02/12/21 Regenerate light theme with flat textures 01/12/21 Dump ancient/ugly JQUI themes, map them to ASM light/dark 01/12/21 Rewrite mobile signing pad into bootstrap #1068 01/12/21 PetRescue/SavourLife - use retailer postcode if available 01/12/21 Dark mode for SQL/HTML editing, better shadows 30/11/21 Update Czech translation (Jiří Podhorecký) 30/11/21 Fix changelog display in dark mode 29/11/21 Add facility to convert images into PDFs on the media tab #1046 29/11/21 Move media image menu items into a menu button to save space #1046 29/11/21 Add $ASK LOOKUP and $ASK PAYMENTMETHOD #525 28/11/21 Add euthanized non-shelter animals section to annual figures 27/11/21 Add ASM dark mode theme 26/11/21 Fix regression in assigning values in online form multi-lookups 24/11/21 Allow coat type on add animal screen #308 24/11/21 Include time info for wp token generated tables (eg: ANIMALLOGS) 23/11/21 Special form fields should not be mandatory if they are not visible 22/11/21 AdoptAPet: Send $0 adoption fees as blank 22/11/21 Fix vacc/neutered non-shelter by type sections of annual figures 22/11/21 Always send adoptapet DOB as M/D/Y instead of locale (en_MX uses D/M/Y) 20/11/21 Truncate form name and shorten preview for online form emails 19/11/21 AdoptAPet want fees in dollars rather than cents 18/11/21 Cope with entering times in HH:MM:SS format as well as HH:MM 18/11/21 Fix use of excludefrombulkemail in online forms 18/11/21 Use utf-8 for locale file encodings (smaller) 17/11/21 Allow searching of log records #15 17/11/21 Add extra adoptapet fields for Weight/DOB/Fee #461 16/11/21 Make entering times more forgiving when just numbers entered 13/11/21 Fix exception emailing after webpy 0.62 upgrade 12/11/21 Add DocumentQRShare token for link to animalview #595 10/11/21 Revert to using generator functions directly for dumps #1062 04/11/21 Truncate email subject header to 78 chars for compatibility 03/11/21 Option to register any microchip with AKC Reunite 02/11/21 Check town/city when filtering waiting list by address 31/10/21 account ID->cost/payment type link wrong way around #293 29/10/21 Add new revXX token to repository reports and auto update #721 28/10/21 Add "Selective" option to good with/housetrained fields #803 28/10/21 Validate against empty usage dates when creating stock levels 28/10/21 Include email subject in log when sending from media tab 27/10/21 Stop using autoreload in production for performance reasons 27/10/21 Rename "Live Releases" to "Live Outcomes" for clarity 27/10/21 Drop html_adoptable_animals cache time to 10 minutes 26/10/21 Focus first field in report criteria, submit with return in input 26/10/21 Upgrade to web.py 0.62 and include with codebase 25/10/21 Bundle web.py due to different broken versions shipping with distros 23/10/21 Mark photos from online forms as exclude from publish by default 20/10/21 Record IP address with online form submissions 20/10/21 underweeks/overweeks parameters to service html_adoptable_animals 18/10/21 Blank Manufacturer/Batch when rescheduling vacc 17/10/21 Allow old HTML/FTP publisher to be disabled via sitedef #1040 17/10/21 Remove complicated smcom-specific HTML/FTP override code #1040 17/10/21 Add warn when adopting to a banned address #1054 15/10/21 When checking current owner, fosters are exit if option not set 14/10/21 If species is different, fail lost/found match altogether 12/10/21 cron tasks not adjusting for dst 12/10/21 Autoprocess attach->create should still create if attach fails 10/10/21 Petcademy: now require encryption and named folder 08/10/21 Output text when adoptable_js has no results #1052 07/10/21 PetLink: temp fix for issues with quoted line breaks in CSV 06/10/21 Include european field names in online form autofill 05/10/21 Completed filter for find incident 01/10/21 Do not include permanent fosters in long term animal alerts 28/09/21 Add Identibase (972055*/en_GB) to known chips 28/09/21 Do not show medical warning for non-active treatments 23/09/21 Fix bad type coercion in clone/update onlineform.AutoProcess 22/09/21 Add Rabies Tag column to vaccination views 17/09/21 Option to prefix animal codes during import #1027 15/09/21 Copy the current vet from template animals 15/09/21 Support comments field on all online form records 14/09/21 Option to allow auto processing of online forms #1051 13/09/21 A 0 value in Petfinder notGood fields indicates yes 10/09/21 Fix dead incident diary links 10/09/21 Button to convert trial adoptions to full adoption #1030 10/09/21 Emblem for courtesy listing flag #1036 09/09/21 Add Country/OwnerCountry wordkey 09/09/21 Do not split annual adoptions by default, rearrange logically 08/09/21 Fosterer email should not include ungiven from non-active regimens 07/09/21 Add locale for en_TZ (Tanzania) 06/09/21 Online form: create incident not using default 04/09/21 Update diary link info for non-animals when record is updated #1029 04/09/21 Warning when adopting an animal with outstanding meds #959 03/09/21 Ability to make rota work types inactive #1050 02/09/21 Add radius attribute to SavourLife 30/08/21 PetFinder allow additional fields for colors/coat_length #767 30/08/21 Remove use of HTML entities at the backend #1038 30/08/21 Use ILIKE when available for performance/indexes #1038 30/08/21 Support for translating db html entities #1038 29/08/21 Remove cruft and support for python 2 #1037 29/08/21 Fix log sorting with date/time #1047 26/08/21 Adoption self-checkout service #784 25/08/21 Animal find/search updates ages in results 23/08/21 Refactor sign_document_page into separate js file 20/08/21 Option to email online forms to adoption coordinator #1042 20/08/21 Adoptable status flag for reporting #1045 19/08/21 Disable non-functional report toolbar for charts #1041 16/08/21 Add current vet as a suggested email from animal 12/08/21 Annual figures return count including non-adoptions 11/08/21 Show receipt numbers with transactions 11/08/21 Option to show waiting list number in columns 06/08/21 Only set default death reason if deceased date was blank 06/08/21 Don't update lastchanged person on reparented/merged records 30/07/21 Option to view returned equipment loans 23/07/21 adoptable_js: Support full size images 14/07/21 OriginalOwner should always sync to Owner on non-shelter 13/07/21 Rename trap loan wordkeys to equipment, update manual #775 13/07/21 Add <> key for person documents 08/07/21 Do not load report toolbar with subreports 08/07/21 Prevent report toolbar loading multiple times 08/07/21 Allow hidden config for date diff cutoffs 08/07/21 Remove inactive log types from log type filter 07/07/21 Mandatory handling for Yes/No (Jacob Sabella) #1028 06/07/21 Separate permissions for import/export CSV #1024 06/07/21 Validate transport dates, pickup cannot be > dropoff #1025 03/07/21 Fix phone number formatting on embedded add person 30/06/21 Emblem to indicate animal has a future adoption #1021 29/06/21 Button to remove processed forms from incoming forms screen 26/06/21 Fix for resolving images in PDFs with later Python/HTMLParser 24/06/21 DateAvailableForAdoption wordkey and view/QB field #619 24/06/21 Rename trap loans to equipment loans #775 23/06/21 Querybuilder criteria for tests, extra emblems 22/06/21 Option to add pickup location/address to new animals #442 21/06/21 Strip vet info and owner name field from adoptable_js 21/06/21 Strip script tags properly before feeding to PDF converter 21/06/21 Generate monthly/annual figures when the report is requested #913 21/06/21 Add report toolbar with email/export to CSV/PDF #313 17/06/21 Fix for scaling images with alpha channel to JPG 16/06/21 Do not allow link fields to be removed from find screens #870 15/06/21 Show longer descriptions in calendar listview for tablets #976 15/06/21 ReturnedBy wordkeys #997 14/06/21 Export report: non-latin1 characters in headers break web.py 14/06/21 Use visual indicators for dialog required fields 11/06/21 Strip script tags from onlineform submissions #1004 11/06/21 When movement animal changes, update for animal #1008 11/06/21 Use native browser support for sticky table headers #908 10/06/21 Bug calculating the end of a report group for header counts 10/06/21 PetLink: support new submitDate column 10/06/21 Hide inactive lookups in smartphone interface 10/06/21 Do not include hidden raw markup fields in form submissions 10/06/21 Prevent duplicate fields in online form preview 09/06/21 Select all icon in tables now toggles #533 09/06/21 Fix datepicker focus issue on lost/found screens 08/06/21 Vacc/Medical give buttons linked to wrong permission 08/06/21 Never include generated timestamp in form preview 08/06/21 Online form preview should respond to forenames/surname 08/06/21 Select all icon in tables #533 07/06/21 asm3_onlineform_submit callback function for forms 07/06/21 Ability to rename headers for SAC CSV Export 07/06/21 Use the database report header for maps and charts 07/06/21 Remove .html and _ from subject when emailing from media 04/06/21 Ability to title case headers for SAC CSV Export 02/06/21 CTRL+A: only select visible rows and only when table is focused #1014 02/06/21 Remove inactive log types from email dialogs #1016 02/06/21 HomeAgain: issue with blank forenames for orgs 01/06/21 Fix for online form checkbox/radio on mobile layout 01/06/21 SavourLife: support holding listings for animals in care 27/05/21 Type bug caused bulk screen to set units to -1 27/05/21 Upgrade fullcalendar to last of 3.x series #998 25/05/21 Allow multiple dispatch ACOs #995 25/05/21 csvimport: Attach licenses to original owner for nonshelter 23/05/21 Add missing watermark button icon 23/05/21 Add US territories to state code list 17/05/21 Stop form checkbox labels taking up all width 17/05/21 Use exact breed matching for SavourLife 15/05/21 Only calculate total alerts from visible alerts 12/05/21 csvimport: support foster capacity (Saggi Neumann) 12/05/21 Re-index button for online form fields (Jacob Sabella) 12/05/21 Updated Norwegian translation (Astrid Nordhagen) 10/05/21 Updated Portugese translation (Nuno Leal) 07/05/21 Add Reserved/CurrentOwner first/last wordkeys 07/05/21 Register from date cutoff for microchips #1006 06/05/21 Add animal, setting microchip number ticks the box 04/05/21 Support reports and templates in undelete 03/05/21 Flag not present report builder criteria 27/04/21 Test reschedule date (Matt Bickel) 27/04/21 json_mail and json_report service methods (Jacob Sabella) 27/04/21 Fix issue with leading spaces in found.org folder names 26/04/21 Hide payment section on move_* screens if no add payment perm 23/04/21 Allow creation of reservations from bulk screen 23/04/21 Fosterer (space available) shelter view mode #999 23/04/21 Hide report categories user does not have permissions for 21/04/21 Fix to update current owner on return/re-adoption 16/04/21 Fix for merge dups bug resetting date of birth 15/04/21 ANIMALTRANSFER CSV import field 15/04/21 Allow updating units from bulk change animals #994 14/04/21 Unit/Unit and Species shelter view options 10/04/21 Escape double quotes when exporting animals as CSV 10/04/21 Map "reason" to "reasonforentry" for animals from online form 09/04/21 Allow updating of rabies tag from give vaccination dialog 09/04/21 Hide previous errors when executing queries at SQL Interface 09/04/21 Hide driver info on transport for no "View Owner" permission 44 ================ 06/04/21 Popup warning field for animals #970 06/04/21 Use created date as default sort for media icon view 04/04/21 Support autocomplete/autofill in online forms #991 03/04/21 Stop line breaks in online form recipients breaking headers 01/04/21 Stop diary notifications using inaccurate substring match #989 01/04/21 Prevent invalid dates stopping additional fields being written 30/03/21 Audit changes to additional fields #988 30/03/21 Audit changes made by clone_from_template #988 29/03/21 Failure to create trx should not stop receiving payments 25/03/21 Fix bug that set current owner to original on deceased animals 25/03/21 Use best practice cookie-based "remember me" #982 24/03/21 Permit inserts via sql interface to sensitive tables/columns 24/03/21 Configurable PDF zoom level via CSS 24/03/21 When deduplicating, validate that mobile phone contains digits 24/03/21 Allow voucher codes to be searched via global search 23/03/21 Update browser build targets for babel (minimum for CSP2) 23/03/21 Retire "remember me" due to potential security issues #982 23/03/21 Drop IE11 support 22/03/21 Choose from address book on bulk emails #968 22/03/21 Add extra incident animal keys and animal/incident jurisdiction #983 22/03/21 Online form: support additional fields for other records #986 22/03/21 Pick up areas where email auditing is missing #639 21/03/21 Update Hebrew translation (Saggi Neumann) 21/03/21 Update Spanish translation (Marga Gomis) 20/03/21 Strip potentially harmful tags before PDFising documents 19/03/21 Prevent hash tampering at SQL interface 19/03/21 Separate icon for locked/signed #985 19/03/21 Make Content-Security-Policy a sitedef instead 19/03/21 Fix bug in location filters cancelling each other on animal open 18/03/21 Leaking chooser destructors on medical screens 18/03/21 Lazy load changelog on about screen 18/03/21 Remove img.onerror inline code in favour of event delegate 18/03/21 Python 3 bug in HTML publish/image scaling 16/03/21 Add CSP and other security headers 16/03/21 Update moment.js to 2.29.1 (regex security flaw) 13/03/21 Hash stored online form submissions #974 12/03/21 CardCom Payment Gateway support (Saggi Neumann) #972 12/03/21 Microchip token for incident linked animals in doc templates 11/03/21 Unified solution for disabling autocomplete/autofill 26/02/21 Include expires on vaccinations wordkey 25/02/21 Last movement and last fosterer keys for querybuilder #271 25/02/21 Person last movement #271 24/02/21 Stop fosterers being placed into the owner field 19/02/21 Squash nulls when exporting as CSV 14/02/21 Separate transport time wordkeys 12/02/21 Show records created from online form as form/user #768 12/02/21 Prevent forms having GDPR out of sync with exclude #737 12/02/21 Avoid unnecessary audits updating adopter flag #958 12/02/21 Form validation on adoptables for old iOS devices 08/02/21 Support for current vet in CSV import/export 05/02/21 Include vacc and microchip stats on annual figures 05/02/21 output for Yes/No additional fields in query builder 02/02/21 utils.atoi strips leading 0, breaks phone comparison 02/02/21 Calendar view list/links don't work #961 01/02/21 Online form developer view without caching #960 27/01/21 Suggested linked emails when sending from animal/media 26/01/21 (depleted) stock level option to view 0 balances #637 26/01/21 Update Hebrew translation, rtl css (Saggi Neuemann) 25/01/21 csvimport: person should not be mandatory for 4,6,7 24/01/21 autocomplete attributes for username/passwords 24/01/21 document_repository service method to allow links to docs 24/01/21 Try to prevent browser autofill on email addresses 22/01/21 Preview incoming forms in a new page on mobile #932 22/01/21 Indicate adoptable status in mobile interface #27 22/01/21 Show a returning column on foster/retailer book 21/01/21 Support importing of animal logs #524 21/01/21 Fix focus bugs in TinyMCE 5 #938 21/01/21 Move owner req euth to Death, enable for non-shelter 19/01/21 Never overwrite RabiesTag with a blank 19/01/21 Add DisplayXIf* fields for PetPlan/form overlays 19/01/21 Online forms: support multiple ANDed showIf rules 19/01/21 Online forms: Yes/No defaults to blank so user must choose 19/01/21 Fix mail merge recipient list to cope with NULL 14/01/21 Showif can reference checkbox groups as nameI (0 based) 14/01/21 Cope with malformed showif rules 08/01/21 Option to skip fosterer emails if no medical items due 07/01/21 Fix for custom from addresses not loading 05/01/21 Searching does not trigger dirty form handling #492 05/01/21 Consistent transition speeds (and a little faster) 04/01/21 Do not clear the not for adoption flag during reclaim 02/01/21 Mail merge option to get the email recipient list #732 02/01/21 Refactor messy old address auto completion #562 02/01/21 Option to restrict state entry to US 2 letter codes #562 02/01/21 Exclude TNRs from annual figures species intake 31/12/20 Phone number formatting for US/UK/AU #499 31/12/20 Shelter view site mode #948 21/12/20 Fix #892 - bad disabled parameter to button 17/12/20 Temporarily roll back #892 due to unexpected side effects 17/12/20 Use case insensitive sort when regenerating person flags 16/12/20 Make "regenerate person flags" actually check and regenerate 15/12/20 Fix serious performance bug when selecting media #892 15/12/20 Do not allow media links to be emailed #892 14/12/20 Allow rabies tag to be cleared, update on delete #323 13/12/20 Update bg translation and correct date format 13/12/20 Suppress nulls when outputting subtable values in documents 13/12/20 Hide old rabies tag for new installs 12/12/20 Simple search includes historic rabies tag numbers 10/12/20 New icon for not neutered/spayed for clarity #749 10/12/20 Add an emblem and alert for no rabies vaccination #431 10/12/20 Move rabies tag to vaccination screens #323 09/12/20 Include exclude from bulk email in report criteria 09/12/20 Fix stock comments not being decoded in other languages 28/11/20 Fix waiting list/lost/found emails being sent as plain text 24/11/20 Include a link to Desktop/Tablet UI from smartphone #937 23/11/20 Add <> wordkey since TinyMCE5 hides invalid images 22/11/20 Allow a blank in vaccination edit dialog/given by #930 20/11/20 PR and SOL: Stop no adoptables preventing cancellation #935 16/11/20 Include trial adoptions in timeline #764 12/11/20 Fix display of TNR and other special movements #933 12/11/20 Unredeemed voucher book view #934 12/11/20 strip csv values before imports 11/11/20 csvimport support to update weight and dob on existing 09/11/20 HomeAgain require city in a new TownCity tag 06/11/20 Add ActiveDiet fields to query builder 04/11/20 Include administering vet in medical table keys #779 02/11/20 Omit hidden conditional fields from form posts #931 02/11/20 Fix bug when calculating vacc reschedule dates 02/11/20 Add vaccination due to query builder 30/10/20 Undeletes for document repository and extra images 30/10/20 Add Kenyan locale 30/10/20 Image resizing should be a sitedef, not configuration 27/10/20 QB criteria: Add "Size is" 27/10/20 Check the adopter flag after a person merge 26/10/20 Fix deduct stocklevel from writing positive usage records 25/10/20 Include status data with <> 23/10/20 Prevent media.delete/expired from removing media 23/10/20 Stop reset_db from removing media 22/10/20 QB criteria: date brought in, vacc given/not given #602 17/10/20 Upgrade to TinyMCE 5.5.1 17/10/20 Fix TinyMCE mobile display and table borders 16/10/20 Support additional fields in query builder #602 16/10/20 Support people and incidents in query builder #602 15/10/20 Visual query builder #602 15/10/20 Correct schema handling of views for SQL editing 14/10/20 Fix SavourLife bug where fail condition marked adopted 13/10/20 Leave DBFS intact on delete for later deletion if needed 12/10/20 Support report SQL tokens in SQL Interface #901 09/10/20 Merge person comments when importing from CSV 09/10/20 Option to hide record views in audit trail (on by default) 08/10/20 Hide TinyMCE outline/drag handles during printing 07/10/20 maint_db_dump_lookups cron target 06/10/20 Fix TinyMCE default fontsize to match old version 06/10/20 Allow template paths to be specified in rename 06/10/20 Overridable default cut off of 3 years for PetLink chips 06/10/20 Allow OSM tile location to be overridden 05/10/20 Add locale for Mauritius, correct currency symbol for India 05/10/20 Extra common punctuation in alphanumber for tattoo/chip 05/10/20 Upgrade to TinyMCE 5.3.1 05/10/20 Start date missing from AnimalMedicals wordkey 05/10/20 Non-neutered adoptable status should use alert config item 01/10/20 SavourLife now support deleting listings via API 30/09/20 asm3-adoptable-reserved class and manual example 30/09/20 Support for writing record and report views to audit log #703 30/09/20 Support for writing sent emails to the audit log #639 29/09/20 Support MOVEMENTTYPE==0 to create reservations in import 29/09/20 ANIMALENTRYCATEGORY import field, export new fields 28/09/20 Diary note completion messages linked to wrong config item 27/09/20 Add ANIMALJURISDICTION csv import field 26/09/20 Close prediction attack flaw in document signing by email #917 26/09/20 Consistent keyboard handling for alphanumber widget #914 25/09/20 Email address books #179 25/09/20 Add HomeCheckedDate person wordkey 24/09/20 Use pickup address and brought in by when lost->shelter matching 23/09/20 Support good with kids over 5/12 when csv importing 22/09/20 Completion actions not appearing under audit slider #909 22/09/20 AnimalLogsTYPE wordkey/token #912 22/09/20 Remove signature placeholders on document sign preview #910 11/09/20 Advanced find for pickup location/reason for entry #683 11/09/20 Missing view person permission breaks staff rota 07/09/20 Apply DST to service calls #899 07/09/20 Merge additional fields during csv import #894 07/09/20 Prompt to clone animal #907 07/09/20 Prevent additional fields overriding base values #904 07/09/20 Stop control keys dirtying form, fix autofocus delay #906 06/09/20 Stop csvimport/merge duplicates creating blank lookups #900 05/09/20 Fix for subtle bug with trailing commas on units 04/09/20 Complete Portuguese translation (Nuno Leal) 31/08/20 Extra shelter view filters for color, species/breed+color 27/08/20 Fix fractional weight display on documents 26/08/20 Incorporate DST into locales and option to auto adjust #899 24/08/20 Prevent double-submit of online forms #897 23/08/20 Consistent handling of breed1 and colour fields for online forms 17/08/20 Online form person deduplication should not require address 17/08/20 Include diary for in email notifications 17/08/20 Reduce cache time of json/xml_adoptable_animals to 10 minutes 15/08/20 Fix adoptapet mappings for Budgie and Chinchilla 13/08/20 Option to include submission in form confirmation email #872 11/08/20 Image watermarking (Thanks Connor9220) #881 05/08/20 Options->Reports for emailing empty reports 04/08/20 $CURRENT_DATE+/-DAY$ report tokens 02/08/20 Merging animals and people should not update log.LastChangedBy 01/08/20 Update owner when active movement person is edited 31/07/20 Include vouchers when generating person documents #876 31/07/20 Add back deleted users that are dispatched ACO #889 31/07/20 Email empty reports by default and hidden config switch #890 31/07/20 Weight should be exported/imported #891 31/07/20 Include diary time on emails #885 31/07/20 Do not validate deceased date against intake for non-shelter 31/07/20 Use current user's site when finding similar people #664 27/07/20 Diary limits should not apply to edit screens, only home page 20/07/20 Online form: Email address field type #616 20/07/20 Substitute $$TITLE$$ token when attaching online forms #882 18/07/20 Fix for title case in online forms with scandinavian characters 13/07/20 Allow UTF-8 to be chosen for encoding of PayPal files 11/07/20 Update lookingfor limit to 5000 08/07/20 Advanced find animal filter for unaltered #873 07/07/20 LitterMates wordkey outputting too many records if LitterID blank 30/06/20 Never register chips if microchipped box is unticked 29/06/20 online forms should generate sheltercode if manual codes are on #869 29/06/20 Stop online form showif/multiselect becoming required 23/06/20 Use movement mod date to prevent intake blocking adopter reg #868 20/06/20 create_document_media passing str instead of bytes #867 19/06/20 Include diary note creator in email 19/06/20 Show match added/expires on looking for report #845 19/06/20 Suppress multiple spaces in flag names #866 16/06/20 Additional fields protected by wrong MODIFY_LOOKUPS permission 16/06/20 Add animal Jurisdiction field and hide/show/default config #650 15/06/20 translate relative img looking for wrong param animal/animalthumb 14/06/20 IncidentLogs table wordkey 12/06/20 Accept comments on move_* screens #860 11/06/20 Auto reload application without the button 11/06/20 PetRescue: display_contact_preferred_method_only support 10/06/20 PetRescue: Option to control contact phone numbers 09/06/20 Fix reload application bug in a cross-browser compliant way 09/06/20 Email dialog won't use name portion for multiple email addresses 09/06/20 Include ShowIf when copying, exporting and importing online forms 09/06/20 json/xml_held_animals service calls 08/06/20 Indicate not flag in emblem tooltip 07/06/20 Remove redundant minify_js from build, simplify rollup #850 06/06/20 Online form checkboxgroup fields #527 06/06/20 Allow flags to exclude animals from some services #849 05/06/20 Encode backticks when storing #848 05/06/20 Fix bug in email dialog that kept spawning events 05/06/20 Request payment email now correctly references all linked data 05/06/20 move_adopt: not for adoption should only be a warning 04/06/20 Fix email address when requesting newly created due payments 04/06/20 Fix bad substitution of & in HTML template URLs 04/06/20 "needsfoster" additional field for Petrescue/SavourLife 03/06/20 Add "ActiveDate" alias to movements to combine dates for sorts 03/06/20 Support for async/await for older browsers #800 02/06/20 Validate times in online forms on submit #840 01/06/20 Apply client side image rotation, remove exifrestorer dep #844 01/06/20 Do not scale images twice, fix iOS applying orientation #844 31/05/20 Fix for null values when sorting from search 30/05/20 Support for Petcademy #832 29/05/20 Trailing empty flags caused by merge/adopter #838 29/05/20 Allow Created Date as a person find column #841 29/05/20 Validate dates in online forms on submit #840 29/05/20 Allow CSV import for animal flags #842 28/05/20 Fall back to old thumbnails if object-fit unavailable #839 28/05/20 Compatibility layer for older Safari and IE11 #800 27/05/20 Filters to show previously given on all medical books 26/05/20 Separate online form permissions for adding and deleting forms 26/05/20 Fix bad casing on known online form fields #835 26/05/20 Add separate permission for viewing online forms 26/05/20 Choose a sane default email when emailing from an animal 25/05/20 Include payments when generating person documents 25/05/20 Allow customising of reply-to/msg on fosterer weekly email #537 25/05/20 Option to have PDF copy of signed document sent to signer #517 25/05/20 Updated Hebrew translation (Saggi Neumann) 23/05/20 animalthumb translation broken when generating PDF 22/05/20 Use inline buttons for editing in tables for consistent style 22/05/20 Add copy service URL button for extra images 22/05/20 Media disable scaling option did nothing for DnD 22/05/20 dbms.get_id_cache for safer id generation on non-postgres 21/05/20 Buttons to copy extra images and form URLs to clipboard #834 21/05/20 Prompt user to reload when new software is deployed #833 21/05/20 Fix bad icon alignment, fix no longer needed in JQuery UI 21/05/20 Handle flipped EXIF orientations (selfies, etc) 21/05/20 Support for Chinese characters in mailing labels via unifont 21/05/20 Make CTRL+A select all transactions in accounts screen 21/05/20 Minimum lengths when looking for similar cell/email 21/05/20 Allow < and > operators for Show If #294 20/05/20 PetFinder require the CSV headings to process blank file 19/05/20 Fix for broken mail merge params after refactoring 19/05/20 Support RTL when editing documents in Hebrew/Arabic #831 19/05/20 Add cache-busting protection for common method calls #830 19/05/20 Protect csv_report and html_report from abuse #830 19/05/20 Implement flood protection earlier in the chain #830 18/05/20 Fix for payment widget assuming tax rates are whole % 18/05/20 Show spinner when creating records from incoming forms #829 18/05/20 Perform S3 delete/put in background to improve responsiveness #829 18/05/20 Log and do not retry when Stripe notifies us of non-ASM payments 18/05/20 Add en_BM locale for Bermuda 18/05/20 Remove build time from home page, add about dialog #824 18/05/20 Show warning message for IE11 users that support is ending #800 18/05/20 Refactoring: remove IIFE for common, use const and use strict 17/05/20 Switch to jshint for static js checking, remove < IE11 support #800 17/05/20 Fix csv_parse to handle accidentally included UTF8 BOM #826 17/05/20 Add separate view staff rota and merge animal permissions #682 16/05/20 Only potentially create a blank reserve for the first reserveanimalname 16/05/20 Show warning icon when create person updates a banned person #586 16/05/20 Show an icon when online form create animal/person exists #586 16/05/20 Strip base64 data uris from online form emails #823 15/05/20 Merge person should update new current owner field 15/05/20 Make sure to/subject included when logging every email #820 15/05/20 Better HTML to text support for emails #820 15/05/20 Refactor timeline to work with SQLite so all queries unit tested 15/05/20 Remove news and cached reports from config and put in disk cache #821 14/05/20 Fix null error when auto-emailing diary notes 14/05/20 Fix ShowIf to work with radio buttons 14/05/20 Attach license documents to both animal and person 14/05/20 Fix looking for to use updated good with children values 14/05/20 Remove taxes/fees from stats 14/05/20 Add PaymentFee wordkeys, PaymentAmount becomes net for compatibility 14/05/20 Do not include received payments in payrefs at the checkout 14/05/20 Support for separate tax income transactions, fix gross payments 14/05/20 Show "Email To" column when editing reports 14/05/20 Show full totals on payments, fix move_adopt sales tax on fees 13/05/20 Rename stripe to stripeh to avoid collisions on Python2 13/05/20 Option to calculate sales tax exclusively 11/05/20 Include owner<>currentowner when showing person links and icon #180 11/05/20 Do not show original owner/non shelter on person links #180 11/05/20 Reparent audit records during merge #792 10/05/20 Add visible option for when to highlight over due reserves 10/05/20 Make "exclude under weeks" publishing option an editable number 09/05/20 Hide HTML5 required attribute from invisible fields so form submits #294 09/05/20 When no animals available, send blank files to FTP adoption sites #751 09/05/20 Fix malformed HTML in media/signing menu 09/05/20 View littermates from litters should include deceased 08/05/20 Payment amounts should be gross #614 08/05/20 Add owner field for animals independent of movements #180 08/05/20 Stack emails vertically in edit online forms to help layout 07/05/20 Online Form: Skip Logic/Show If functionality #294 07/05/20 Fix introduced bug in person docs with no animal on reserve 06/05/20 Make animals optional for reservations #785 06/05/20 Fix bug in nb locale when issuing update queries 06/05/20 Fix sorting of notes containing dates in media table view 05/05/20 Fix writing of insert SQL to handle apostrophes correctly 05/05/20 PetLink will not accept more than 1 email address, strip/split if found 05/05/20 If minimap editing is on, allow right click to move pin #815 05/05/20 pdf renderer directive to switch to pisa over external cmd 04/05/20 Filter out empty CSV rows during imports to prevent harmless errors 04/05/20 AdoptAPet: Missing mapping for Havana->Havana Brown 04/05/20 Show ID on additional field editing screen 03/05/20 Don't strip protocol-less absolute URLs from documents when translating 03/05/20 Hide asilomar fields for non-dogs and cats #813 03/05/20 Auto translate relative image links in the html_report service call 02/05/20 Allow homechecked by/date fields to be on all the time #812 02/05/20 Fix for embedded images in emails #738 02/05/20 Python2 fix for importing CSV files 01/05/20 Add "datelost" and "datefound" online form fields for lost/found 01/05/20 Add support for "microchip" online form field to lost/found 01/05/20 Better rewriting of img links in docs, add media_file service call 01/05/20 Hide auto remove text if option is off #810 01/05/20 Add created since to person search 01/05/20 Add bounds checking to config numbers, tidy up 01/05/20 Configuration for removing incoming forms after complaints! #810 30/04/20 Strip dead img src before feeding to wkhtmltopdf #811 30/04/20 Show an emblem on NOT flag #805 30/04/20 Add selection of unicode glyphs to emblems #805 30/04/20 Fix find person columns not sorting in options #769 30/04/20 Add "Adoptable" find animal result column #711 30/04/20 Ability to view old litter records #807 30/04/20 Email button on animal records #809 30/04/20 Email documents from document repository #687 30/04/20 Leaving the incoming forms screen deletes processed forms #810 30/04/20 make format_date and format_time consistent with each other #808 30/04/20 Omit seconds for word processor clinic output (Julian Poidevin) #808 29/04/20 Fix display after reloading media table on edit 29/04/20 Option to share picture from share menu 29/04/20 Fix introduced bug in saving currency fields 28/04/20 Display option to turn off pink/blue borders 28/04/20 Mask Stripe secret key for security #799 28/04/20 Fixes for PayPal CSV import encoding (cp1252) 28/04/20 Refactor/rewrite of CSV parsing for py2/3 compatibility 28/04/20 Add media screen icon mode after universal user hatred of table #652 27/04/20 Online forms: Fix mandatory sig/image bugs caused by required move 27/04/20 Signed/unsigned document requests search/alerts #507 27/04/20 Fix all thumbnails to a consistent size with object-fit css 27/04/20 Use position: fixed with pageX/pageY for positioning callouts 27/04/20 Substitute animal tokens in email templates #759 26/04/20 Send media emails as multiple attachments to one message #405 26/04/20 Keep separate media created date #796 26/04/20 Retain media UI #343 26/04/20 Rewrite media UI to use a table #652 25/04/20 Stop online form signatures breaking layout in phone/portrait 25/04/20 Validate payrefs before generating checkout pages #463 24/04/20 Payment processor integration: Stripe support #463 23/04/20 csv import: allow import of unknown, fix match age 23/04/20 Strip whitespace from incoming form fields 22/04/20 Disk cache should only mkdir path folders in put operations 22/04/20 New default online form header with responsive design for mobile 22/04/20 Add location (no virtual) shelter view mode #791 22/04/20 Update online form image cap to 384Kb, clear invalid images 22/04/20 Update fr_CA translation (Stephanie Cordeau) 21/04/20 Payment processor integration: PayPal support #463 20/04/20 Remove old redudant table/col code from sql handler 20/04/20 Set online form explicit font sizes (fixes Chrome mobile) #787 20/04/20 Py3 fix for signing documents 19/04/20 Add released/TNR stats to home page #679 19/04/20 Add nullable change fields to animallitter to match ASM2 imports #496 19/04/20 Cell data-sort attribute, fix timeonshelter/age sorts in results #780 19/04/20 Online forms: put required indicator with label to prevent wrap issues 19/04/20 Remove unreadable mandatory column from form editor, use label indicator 19/04/20 Do not set reply-to header on form notifications if email submitter off #781 19/04/20 Increase quality of online form images to 640px 19/04/20 Add fortnightly payment frequency 19/04/20 Gracefully handle exif orientation missing in auto-rotate 18/04/20 Do not deactive found.org if login fails 17/04/20 Consider reserveanimalname when using online form Attach->Animal 17/04/20 identibase/anibaseuk incorrectly using US date format 16/04/20 Refactor decode_html to use HTMLParser and remove cruft 16/04/20 Fix unicode email header handling #771 16/04/20 Py3 fix for signing page service call 16/04/20 Restrict online form field labels to match field length 15/04/20 Require at least 6 digits for searching phone numbers 14/04/20 Add ReservationDate wordkey for active reserve on animals #777 13/04/20 Assign IDs and link labels correctly on online forms 13/04/20 Deduplicate owners on cell/mobile phone number #436 13/04/20 Strip non-numbers from phone number fields and query in search #776 13/04/20 Add log creation to bulk change animals #773 12/04/20 Use fixed short translatable field names in online form preview 12/04/20 Use DBFSID when accessing media for speed/accuracy 11/04/20 Audit user agent on login/logout #772 11/04/20 Don't update user activity on some endpoints for performance 10/04/20 Use field names for online form preview to save space 10/04/20 Remove foster only restriction on coordinator/fosterer shelterview 10/04/20 Add Hong Kong locale 09/04/20 Refactor to generate all possible js statically #770 08/04/20 Use flock/mutex around disk cache to prevent multiprocess bugs 08/04/20 Online form create animal not setting size or default location 07/04/20 Add missing OrganisationEmail wordkey 06/04/20 Selecting OwnerAddress twice in get_donation_query breaks view 43 ================ 06/04/20 animaltest dbupdate creates every time instead of checking 06/04/20 Check types from disk cache in case of collisions 05/04/20 When publisher checks mappings, only consider current shelter animals 05/04/20 Remove whitespace from FTP passwords 04/04/20 Log and fail gracefully for badly encoded unicode parameters in input 04/04/20 Prevent drag and drop firing for same location #765 03/04/20 Fix broken date sort caused by #700 01/04/20 Hide timeline entries involving people if user does not have permission 01/04/20 Hide location emblem if user does not have view person permission 31/03/20 Trigger batch can regenerate person additionalflag column #762 31/03/20 Only force code change if year/month are not now #761 30/03/20 Password reset mechanism from login page #758 29/03/20 Also use disk rather than RAM for common query cache 29/03/20 Use disk rather than RAM for config cache 29/03/20 Substitute person tokens in new email templates #759 28/03/20 Do not create negative accounting transactions #756 28/03/20 Assume M/D/Y when importing dates in en_CA locale 28/03/20 Complete French translation (Julian Poidevin) #753 27/03/20 Built-in adopter person flag #726 27/03/20 Allow dotted/hyphenated date formats for locales #700 27/03/20 Do not count trial adoptions on annual figures 26/03/20 Shelter view "good with" section, add counts to flag mode 26/03/20 Email templates in dialogs and mail merges #502 26/03/20 Add "Location and Breed" shelter view mode 25/03/20 Fix for JQuery3 breaking Codemirror fullscreen 25/03/20 Python3 fix for signing pad 25/03/20 Python3 fix for importing online forms from HTML 25/03/20 Online form create person should update address of existing #222 23/03/20 Add incident completion time field #438 23/03/20 Display option to show ID numbers with lookup data 23/03/20 Manually add UTF-8 BOM to CSV files to stop Excel mangling them 23/03/20 Add styling for fullcalendar widget to asm theme 23/03/20 Rearrange CSS load order so JQUI theme can style other widgets 22/03/20 Include additional fields when exporting animal/person/incident csv #621 22/03/20 Remove species/litter fields from animal medical tabs 22/03/20 Import/Export animal tests and override key duplicate values #541 21/03/20 Show original owner address when matching lost to shelter animals #45 21/03/20 Optional animalviewnotadoptable template for unavailable animals #501 21/03/20 Fix action asm theme button styles since JQUI update 21/03/20 Add vaccination expiry/reschedule period #466 21/03/20 Add microchip to lost/found #392 17/03/20 AnimalTests wordkey: do not show result for ungiven tests 17/03/20 Show mandatory when browsing online form fields #626 17/03/20 Hide homechecker slider for non-homecheckers #379 17/03/20 Embedded add person including inactive jurisdictions #675 17/03/20 Make flags column available to find person/animal #735 17/03/20 Make person looking for summary column available to find person #645 16/03/20 Undo button on medical regimens to ungive treatments #370 16/03/20 Person advanced search/phone contains not searching home phone #748 15/03/20 Refactor visibility of type slider fields #181 15/03/20 Reservation book sort desc, config for overdue display #725 15/03/20 OwnerLookingFor person wordkey #693 15/03/20 LitterMates animal wordkey #380 15/03/20 Options to send diary emails on add/change/complete #704 14/03/20 Hidden config switch for PetFinderHideUnaltered #743 14/03/20 Add voucher wordkeys and document functionality #35 14/03/20 Add voucher book and new fields Presented/Code/Animal #34 14/03/20 Fix splash to center/no-repeat for incorrect sized images 13/03/20 User roles screen broken by JQUI upgrade 12/03/20 Show cancelled reservations on the timeline #433 12/03/20 Fix JQuery Mobile by adding JQuery 2.2.4 #739 12/03/20 Show alert for clinic appointments due today #635 12/03/20 Configurable publisher frequency for adoption websites #686 12/03/20 Use Credit/Debit instead of Deposit/Withdrawal labels #393 12/03/20 Fix staff rota display after JQUI update 11/03/20 Add missing lkstransportstatus #742 11/03/20 Extra categories for good with children #454 07/03/20 Upgrade to JQuery 3.4.1 and JQueryUI 1.12.1 #739 05/03/20 Show description on stock level screen 02/03/20 Fix bug that caused 2 slashes in a value to break table sorting 01/03/20 Use standard flag code for online forms (fix missing exclude bulk) 29/02/20 Chrome shuffle bug: detect Back and force reload #716 29/02/20 Allow configurable thumbnail size under publishing options 28/02/20 PetLink only allow 2-letter ISO codes in country field 22/02/20 Add year dropdown to online form datepicker 19/02/20 Bug in SavourLife that prevented adopted animals being removed 18/02/20 PetLink, SmartTag, HomeAgain, AKC: Send person country #733 12/02/20 Copy diary notes from template animals #731 12/02/20 Form thank you page should scroll to top in case form is in iframe 11/02/20 Add MovementPayments wordkey 10/02/20 Decode addresses before loading into transport fields #729 10/02/20 Org tags missing from clinic documents #730 05/02/20 Write an initial location change for new animals #673 04/02/20 Merge additional fields on existing when processing online forms #712 04/02/20 Set animal location to user's site if default is invisible #723 30/01/20 Add full CSV escaping/quoting to all publishers 28/01/20 Better date of birth handling creating animals from forms 27/01/20 Unicode bug in tableform multiselect (affected form flags) 27/01/20 Allow a species to be chosen for online form adoptables #613 26/01/20 Advanced search cannot find flags with extended chars #715 17/01/20 Fix limit bug in adoptable_js add SHUFFLE sort #717 16/01/20 Fix OR bug that incorrectly showed completed diary notes for user 14/01/20 Add PaymentPersonAddress/City/State/Zipcode wordkeys 10/01/20 Enable Maddies publisher for all English speakers 10/01/20 Bug displaying animals in transactions with no shortcode 09/01/20 Workaround for Google Chrome 70 back bug from photo #716 08/01/20 Tokens for DocumentImgQRLink50/100/150/200 for size 07/01/20 Allow online forms to create new animal records #563 02/01/20 Consistent post_data return types between Python 2 and 3 31/12/19 found.org: Fail if we could not chdir to FTP folder 30/12/19 Fix bug displaying rota week dropdown in first week of year 28/12/19 PetLink: cancel and remove successes if username/pass is wrong #713 28/12/19 Set person country field when creating from online form #714 24/12/19 Bug in display of flags in find animal results 21/12/19 Retry AKC for 54103 and 54107 errors 17/12/19 Complete French translation (Roxanne ENGINDENIZ & Julian POIDEVIN) #699 17/12/19 Added support for French microchip ID #707 17/12/19 AppointmentFor wordkey shows real name #705 16/12/19 Movement date cannot be before intake date #651 16/12/19 Show pickup/dropoff on person links #706 12/12/19 Lint fixes to onlineform and bad required pattern 12/12/19 Logging should not convert the msg string 10/12/19 Show fosters in a separate category in multi chooser #691 03/12/19 Fix bug with use of # in dict config items #702 02/12/19 Debugging/tweaks of new AKC integration 02/12/19 found.org stop sending items overn 3 years old #697 29/11/19 Limit display of medical items for performance #701 28/11/19 Consistent limit of now+30 for datebroughtin 28/11/19 First version of standalone AKC Reunite publisher 26/11/19 Fix name2codepoint python3 reference 25/11/19 Add animal: Reload unit list on reset 24/11/19 Clinic: add shelter filter, fix bug in calendar links 23/11/19 Include manufacturer in <> 22/11/19 Allow shelter animals to be booked into clinic #625 20/11/19 Hidden config for overdue days on fosterer emails 18/11/19 Do not include custom emblems when sorting tables #663 16/11/19 First draft of direct HomeAgain registration service 12/11/19 Remove arbitrary 100 link limit on home page 12/11/19 Send 9910010 chips to AKC 09/11/19 Export animals as CSV should be async due to CDN #692 06/11/19 Write audit records for changes to lookups #666 04/11/19 Wordkeys for medical and log history #689 04/11/19 Complete diary notes on death of animal #259 04/11/19 Find animal rename Comments contain to Description contains #688 01/11/19 PICKUPLOCATION and PICKUPADDRESS wordkeys only display for pickup 01/11/19 Default sort for lost/found is date desc 29/10/19 Fix online form race condition in collation id generator #690 25/10/19 Fix bad formatting of <> wordkey 24/10/19 Show date deceased in left shelter for on-shelter death #658 21/10/19 Calculate balances based on reconciled filter #685 21/10/19 Use (any sex) instead of (any gender) as default filter text 20/10/19 Add entry category to bulk change animals #669 20/10/19 Retain audit records for 6 months instead of 3 #681 09/10/19 Logging sent emails should be the default #665 09/10/19 CSV exports not escaping double quotes #676 09/10/19 PetFinder: Option to send photo URLs instead of images via FTP 08/10/19 PetRescue: support for states animals are adoptable in 30/09/19 Convert smartquotes to ASCII before sending to PetFinder 28/09/19 Up the report items to 120 before switching to accordion 28/09/19 Updated Spanish translation (Marga Gomis) 26/09/19 PetFinder: always reupload images due to FTP bug at PF 25/09/19 Add DisplayXIfGoodWith and DisplayXIfBadWith keys 16/09/19 PetRescue: Look back 6 months, dont repeat status updates #662 12/09/19 Validate against invalid estimated ages 12/09/19 Fix display of additional field labels on find results 12/09/19 Allow additional fields in waiting list results #657 12/09/19 Fix textarea bug that can cause labels to overlap 12/09/19 Py2/3 compatible unicode fix for CSV exporting #634 11/09/19 Final PetFinder change to send images by FTP for now #644 10/09/19 PetFinder require a specific order for the new format #644 09/09/19 Fix errors when account mappings are blank 06/09/19 Extra PetFinder fields send photo URLs instead #644 03/09/19 Validation when updating stock levels that we have valid ID 03/09/19 Remove circular deps between al, utils, i18n and configuration 02/09/19 Fix "message too long" errors from logger 31/08/19 Refactor publishers and write unit tests #655 29/08/19 Make sure manual deletion of online forms can be restored #654 29/08/19 Only override destination account if received was blank 27/08/19 Splash screen should cover the container #653 26/08/19 Clone animal should include all flags 24/08/19 Polyglot code to support Python3 (tagged PYTHON3) #634 24/08/19 Refactored into asm3 package to avoid Py3 collisions #634 23/08/19 Options for microchip/neuter alerts on specific species #638 22/08/19 Fix DONATIONGIFTAID type - check not integer 22/08/19 Prevent clone_from_template breaking default flags #647 15/08/19 Add <> token 14/08/19 Copy flags when cloning from template #632 12/08/19 Update hungarian translation (NOE Allatotthon Titkarsag) 08/08/19 Prevent drag and drop returning future adoptions #643 07/08/19 SavourLife.com.au publisher (Australia) 07/08/19 ExtraIDs column to hold animal IDs from 3rd party systems 03/08/19 Show person links for additional fields linked to incidents 02/08/19 Allow bulk deletion of animals #641 02/08/19 Allow setting of altered by on bulk change animals #642 21/07/19 Show trial adoption as an adoption status in shelter view 20/07/19 Allow decimal fraction lb weights #596 19/07/19 Allow option to hide financial stats on the home page 18/07/19 Prevent negatives and zeroes being used in regimens 18/07/19 Add DONATIONGIFTAID CSV import field #630 17/07/19 Petrescue: Bad access to SOURCENUMBER 17/07/19 Some preliminary Python3 work #634 15/07/19 Minor bug fix to bonded animal merging when publishing 11/07/19 IPv6 IP restriction support #631 05/07/19 Allow html_flagged_animals to search all animals #628 02/07/19 Add LogTime keys and DocumentImgSrc/Link for incidents #624 02/07/19 Fix fault uploading extra images due to bad unload #556 13/06/19 Use mark and sweep algorithm for removal #620 13/06/19 Fix the order of output for bonded animals to their IDs #620 12/06/19 Include readable fields when auditing changes (eg: users -> USERNAME) 12/06/19 Show additional person flags in fosterer mode of shelterview #597 12/06/19 Install recommended reports on home page if none installed #576 11/06/19 Add undelete backend support #391 07/06/19 Callout/info for staff record on user account #505 07/06/19 Show adoption coordinator in foster, reserve, trial books #618 07/06/19 PetRescue: Add new mandatory regional fields 07/06/19 Fix to prevent multiple favourite images showing duplicates 07/06/19 Add Current/Reserved/BroughtInBy/Original OwnerJuridsiction keys 04/06/19 Add new Portugese translation (Stelmo Barbosa) 42 ================ 01/06/19 Option to disable auto reload of medical book/tab on new 31/05/19 Fix for Chrome F11 bug (finally!) #512 30/05/19 Add en_AE locale for UAE 25/05/19 Record animal/person merge record IDs in audit trail 19/05/19 Fix bug where date was being cast incorrectly by get_stats 19/05/19 Add html_flagged_animals service call #610 19/05/19 Include submitted images as attachments with online form emails #160 19/05/19 Allow proper mimetypes instead of forcing octet-stream #405 19/05/19 Allow send_email to handle multiple attachments #405 17/05/19 Use a generator function for Export Animals as CSV #609 17/05/19 Use / instead of , as bonded animal separator to workaround PF bug 17/05/19 When deleting preferred media choose only non-exclude photos #608 17/05/19 Fix for non-int ID types coming back from MySQLdb driver #608 16/05/19 Include separate copy of online form images on media tab #607 15/05/19 Set default entry reason when creating animal from waiting list 15/05/19 Online form image field type #160 13/05/19 Allow payment and cost types to be unlinked from accounts 13/05/19 Only allow bank accounts to be used for destination override #605 10/05/19 Allow preview of HTML templates that bypasses cache #603 09/05/19 Register old-style 10-digit hex HomeAgain chips with Found 09/05/19 Output animal name in alt attribute of adoptable_js #587 09/05/19 Allow transaction fees with payments, set by PayPal import #566 07/05/19 When importing CSV/PayPal records include importing username #600 02/05/19 Allow VAT/GST to be selectively chosen by payment type #568 29/04/19 Fix bug where using "My Fosters" with no fosters shows all 27/04/19 Allow custom emblems to be set for additional animal flags #58 26/04/19 Show additional fields on person records under person links #593 26/04/19 Add ASK ANIMALS report criteria tag #542 25/04/19 Keep incoming forms around for 28 days, show how long on screen #592 25/04/19 Show ruled lines between incoming form preview fields #590 22/04/19 Diary cutoff on calendar is 6 months to match other areas 17/04/19 Add Calibri font to document editor 16/04/19 Add html_held_animals service call 12/04/19 Found should be able to support 9-digit chip numbers starting with 1 10/04/19 Support soft release to wild #520 06/04/19 More autocomplete hints to prevent autofill of number/curency fields 30/03/19 Person match fields could not be set by csv import due to insert bug 28/03/19 Add TransportReference field to link related transports together 25/03/19 Do not update geocode on address changes if manual entry is on 25/03/19 Add support for breeder_id PetRescue field 24/03/19 Add en_TW2 for English/Taiwan with 2 decimal place currency 24/03/19 Medical wordkeys should be based on NextTreatmentDue/LastTreatmentGiven 22/03/19 Add OwnerCountry field and country to transport #264 19/03/19 Fix conflicts with template animals and additional fields 18/03/19 Do not show user table filters due to Chrome autofill bug 18/03/19 Batch should update young offshelter animal ages for desex reports 18/03/19 Support for PERSONMEMBERSHIPNUMBER CSV import column 17/03/19 Allow editing of lat/long directly near minimaps #578 17/03/19 Additional fields with default values disallow blanks #577 16/03/19 Show SMTP/sendmail errors in UI 16/03/19 Set emailerrors from_address param to prevent Google bouncing errors 10/03/19 Datepicker, go to +3 years for some vacc/diary 10/03/19 Tweak to default animalviewadoptable template (sans-serif, grid layout) 07/03/19 Online forms should force absolute redirect URLs #574 06/03/19 Emailing should support BCC #564 06/03/19 Datepicker, allow quick selection of -30/+1 year 05/03/19 Fix infrequent unicode error when reading stored documents from cut/paste html 05/03/19 Add <> person wordkey #545 05/03/19 Rename animal comments to description for clarity #569 05/03/19 add/subtract_years should do whole calendar years if possible 05/03/19 Report screen doesn't display roles correctly until refresh #555 04/03/19 Reinstate include incomplete medical items for documents 04/03/19 Access additional fields for original, broughtinby, current owner #572 04/03/19 Fixed view fields copying into autocomplete of tables #573 02/03/19 Autoset of include deceased/nonshelter on find animal not working 28/02/19 Add clinic calendar to available quicklinks 28/02/19 MPA: Use greatest of last change/active movement to trigger updates 21/02/19 Include media, log and diary in base record audit sliders #567 21/02/19 Add default animalviewadoptable template 20/02/19 Species and code mode of shelterview #548 20/02/19 Add MostRecentEntryCategory animal token #552 19/02/19 Make report_images match document_repository to mitigate upload bugs #556 19/02/19 Show satellite records on audit sliders #33 19/02/19 Validate email addresses for storage with people, reports and online forms 19/02/19 Hide additional non-relevant fields when editing mail merges/charts 18/02/19 Show gender border on all thumbnails #557 18/02/19 Wordkeys: Due keyword as alternative to Recent #565 14/02/19 Fix bug where report {tokens} can get confused with javascript 13/02/19 Sort adoptable/shelter animal dropdowns by name on online forms 13/02/19 Focus the correct multi-select when blank in online forms #558 13/02/19 Remove inactive payment types/methods from clinic create payment #560 12/02/19 <> and <> to disambiguate 12/02/19 Fix bug that causes non-ASCII chars to break outbound emails #513 11/02/19 Add 933* microchip range for Buddy ID 11/02/19 Fix bug where line endings weren't translated in html_adoptable_animals 41 ================ 28/01/19 Make the clear tables CSV import option clearer about what it does 25/01/19 Add quicklink for payment book 25/01/19 Calendar view should include clinic by default 25/01/19 Quicklink should be "receive a payment" not donation 23/01/19 Allow additional fields to be set for person records in online forms #410 22/01/19 Allow upto 10 animal images in animal_view 19/01/19 Fix bugs caused by multiple preferred images in merge animal 19/01/19 Use implant date as service date for non-shelter found registrations 18/01/19 Allow identibase to send with blank implant date 17/01/19 Fix bugs in linking to find results from shelterview status 16/01/19 Default escaping of line breaks for publishers is LF 15/01/19 Do bio processing for PetRescue 12/01/19 Grey out deceased animals in movement books/tabs #546 12/01/19 Use autocomplete="new-password" to work around Chrome autofill on dates 07/01/19 Enable adoptapet for en_CA fr_CA #543 04/01/19 Advanced person/animal search for flags should include terminator 03/01/19 Use asm3.conf instead of sitedefs #404 22/12/18 Add WEBSITEMEDIAFILENAME5-8 tokens for animal_view template 14/12/18 Incoming forms: Rename Create Animal to Attach Animal (via animalname) #532 13/12/18 PetRescue: support "good with" and "needs constant care" 12/12/18 Change "Released To Wild" to "TNR" when movement is for a cat #531 12/12/18 PetRescue: allow "bestfeature" additional field to set tagline 12/12/18 PetRescue: allow configuration of interstate flag 10/12/18 Validate that reports with criteria cannot be sent by email #526 10/12/18 PetRescue: Set multiple_animals where an animal is bonded 10/12/18 Do not include animals with no publishable images and include without == NO 08/12/18 Allow templates for non-shelter animals as hidden option #522 07/12/18 Use callouts on lookup data as tooltips get missed 07/12/18 Foundanimals, use group email for on intake registrations 04/12/18 Courtesy post was still obeying many adoptability rules and shouldn't 01/12/18 Fix error in intake counts on monthly figures when times enabled 01/12/18 Apply default death category when a deceased date is set #510 01/12/18 Add pickup/dropoff contact wordkeys for transport records #508 01/12/18 Hidden PetFinder config option PetFinderAgeBands #509 21/11/18 Add location to tooltips on medical calendar #519 19/11/18 Result count off by 1 for SELECT in sql interface 17/11/18 Include submission with confirmation message #516 16/11/18 Templates should not be applied to new non-shelter animals 06/11/18 Add signed/unsigned request reports to identify missing signatures #10 06/11/18 Record in the log when email signatures have been received #10 02/11/18 Bug in vacc where last vet hangs around, default by to current user 31/10/18 Update existing address info when importing CSV of people data #318 30/10/18 Allow drag and drop from foster to a shelter location #335 30/10/18 Time additional field type #304 29/10/18 Weekly fosterer email of medical info #366 29/10/18 Support for transport documents #479 29/10/18 PetRescue: Use immutable photo URLs 28/10/18 Advanced person search, phone number contains #486 28/10/18 Reschedule comments should go on the original vacc record #483 28/10/18 Add GivenBy column to animalvaccination #270 28/10/18 Fix bug where auto remove holds never worked on add animal #316 28/10/18 Fix bug where unspecified not adding dates properly #470 27/10/18 Maddies Pet Assistant: Send updates on record change 26/10/18 get_timeline was never cached due to now() invalidating it 26/10/18 Use a 15 min cache time on alerts/stats/timeline hp for large dbs 26/10/18 Do not do processing for disabled items on home page 24/10/18 Allow "My Fosters" location filter #72 22/10/18 Consistent field order for add/edit person screens #495 22/10/18 Separate adoption warnings from get_person for performance #500 18/10/18 Show reservation date on adoption movements for info 13/10/18 Allow reserve times to be stored, use form submission date/time 12/10/18 PetRescue: send state abbrv and use fosterer postcode if available 10/10/18 html.person_link_address that honours permissions on movement screens 09/10/18 PetRescue require breed_names as a list rather than csv 08/10/18 Refactor looking for, match comments on hidden comments too 02/10/18 Merge animal functionality #73 26/09/18 Similar name check considers animals still on shelter as well 24/09/18 PayPal import, recognise any type containing "Payment" 20/09/18 Bug allowed "Include without description" to override courtesy listing 18/09/18 Brought in warning should only apply to shelter/non-pickup/non-transfer 13/09/18 Merge GDPR contact flags during merge, CSV import, onlineform create #446 13/09/18 Add new smarttag microchip prefix 987* 13/09/18 More options for exporting animal data as CSV #484 13/09/18 ANIMALNONSHELTER CSV import field and support for export 13/09/18 "Do not publish" flag for html_adopted|deceased_animals, etc #485 12/09/18 Show clear error message when accessing subreports that don't exist 12/09/18 Fix bug that prevented group SUM working in $HEAD blocks 11/09/18 Add English/Japan locale, allow country override on options for geocoding 11/09/18 Include previous adopter virtual flag on advanced find person #476 11/09/18 Fix time bug in staff rota when generating "today" on mondays 10/09/18 Subtract 0.5 for currency rounding problems with negative amounts #480 10/09/18 Add en_NA Namibian locale 07/09/18 PetRescue: title case animal names to not set off all caps validation 07/09/18 Fix for bug that always enabled VetEnvoy publishers 04/09/18 Remove all client side geocoding in favour of simpler server side code 03/09/18 Add "Open in map" to incident, calculate on click for incident/person 03/09/18 Maddies Fund: Set new PetCode field 31/08/18 Fix long-standing bug in additional field default values #474 31/08/18 Separate additional fields on records from mandatory flag #474 27/08/18 RECENT wordkeys should use DateRequired if incomplete vacc set #477 27/08/18 Long term animal alert should obey sites 23/08/18 Update MPA when a new vacc is added or existing one changed 21/08/18 Option should be present to make additional number fields searchable 21/08/18 Refusing to share location breaks map reports #475 20/08/18 Fixed issue renaming flags containing apostrophes 17/08/18 Order regimens in document templates by regimen start date 17/08/18 PetRescue publishing via new API 10/08/18 Cap max links on home page at 100 to prevent overflows 09/08/18 Allow task cancel button to work for CSV/PayPal imports 09/08/18 Use browser location to center incident/report maps #189 09/08/18 new RESTful petrescue.com.au publisher 09/08/18 Advanced find/adoptable - ignore cruelty/hold and quarantine 09/08/18 Use picture date to invalidate 24h thumbnail cache on adoptable js 07/08/18 Allow locationid=X to be passed to html_adoptable_animals 07/08/18 Warn when animal being adopted is unaltered/has no microchip #317 07/08/18 better/added siteid filtering for person/lostfound/waitinglist #469 04/08/18 Refactor db.get_database to remove boilerplate and simplify #468 03/08/18 Allow advanced find by entry category #381 03/08/18 New litters getting expiry date due to late Litter ID update #465 02/08/18 Allow advanced search by tattoo number #452 02/08/18 Apply site filter to staff rota #455 01/08/18 Remove non-null created/lastchanged columns from ownerlookingfor 31/07/18 Additional failure condition for PetLink (Microchip already registered) 29/07/18 When grabbing limited extra publishing images (pf/ap), prefer latest 27/07/18 nopic.jpg broken the PDF engine 27/07/18 Do not XSS escape publisher logs 27/07/18 Simplify adding publishers with publish.PUBLISHER_LIST #227 27/07/18 recalculate age groups for shelter view #422 27/07/18 recalc age group on publish commit was reverted, reapplied #396 26/07/18 Found animals want a 3 year limit on chip registrations 25/07/18 Parameterised query refactoring complete #252 22/07/18 AdoptAPet now support Mexican locales 21/07/18 DocumentImgLink broken on lost animal docs #432 21/07/18 Fix bug where missing state/county field breaks labels #462 21/07/18 DocumentImgLink support for person documents #437 21/07/18 Record holds in the log #342 21/07/18 Show microchip number in banner #337 21/07/18 Live release rate on annual figures #303 20/07/18 Cope with "this is a found.org chip" message from PetLink 19/07/18 Show grand total by organisation name in shelter view #443 19/07/18 Smarttag prefixes need checking in a second place to work 17/07/18 Allow clinic appointments to be booked for fosterers/reclaimants 03/07/18 Changing text of flags should update them in animal/person #460 03/07/18 Fix search bug caused by blank last changed dates 02/07/18 Show extra images button on document templates #453 02/07/18 Status and species shelterview filter #457 01/07/18 Remove old "password" password check #458 29/06/18 Bug in testing permissions for dam/mdam 29/06/18 Disable autocomplete on date/time fields in dialogs 29/06/18 Anibase publisher should respond to chipRegisterable=false 25/06/18 Bug that meant $$HTMLHEADER overrode $$HEADER 14/06/18 Allow litters to fluctuate upwards (returns/etc) 14/06/18 Advanced animal find filter: show declawed only 13/06/18 Option to show/hide full comments on all table views 13/06/18 Show log entries on a single line instead of the complete note 12/06/18 Add Malaysian locale, fix Indian rupee symbol to use Unicode 12/06/18 Fix new TinyMCE content.min.css to match old line-height and font-size 10/06/18 Upgrade TinyMCE to 4.7.13 (hope to fix infinite loop and iPad bug) #440 09/06/18 getDescription was not substituting $$ tokens publishing to PF/AP/etc 08/06/18 Read cols for autocomplete from cursor instead of results 06/06/18 sensitive=1 param to enable personal data in service calls 05/06/18 Strip personal data from *_shelter_animals service calls 04/06/18 Attach images even when merging csv imported animals 01/06/18 Export medical.csv file with animal/medical data 30/05/18 PetFinder: updated DSH/DMH/DLH/Tabby cat breeds and adoptapet mappings 22/05/18 Do not anonymise people surrendering animals in the cutoff period 20/05/18 Clinic UI documentation, active by default #9 20/05/18 Add create payment button for appointments #9 19/05/18 Dedicated clinic calendar screen where consultant can be chosen #9 19/05/18 AdoptAPet mapping Parakeet (Other) -> Parakeet - Other 19/05/18 Add MicrochipNumber2/MicrochipDate2/MicrochipManufacturer2 wordkeys 18/05/18 Add clinic invoice template, document support #9 10/05/18 Add clinic menu options, tabs and calendar view #9 09/05/18 Non-shelter animal documents should include owner data 08/05/18 Clinic invoice ui, refinements to overdue/complete #9 01/05/18 Online form create incident/lost/found/wl/transport should use html_print 28/04/18 Clinic waiting/consulting room UI and status buttons (unreachable) #9 27/04/18 Clinic lookups and permissions #9 27/04/18 Clinic backend and unit tests #9 24/04/18 Add twitter and facebook share buttons to default animal view #429 24/04/18 Add PERSONGDPRCONTACTOPTIN csv import field 23/04/18 Make multi-site a visible option 20/04/18 Include species column in medical books #367 18/04/18 Allow @ in asm3_adoptable_sort to compare numerically 18/04/18 Add "My Undispatched Incidents" to mobile interface #415 18/04/18 Record GDPR options in the log for new people 18/04/18 Fix access to first of type in wordkey tokens #383 18/04/18 Set flags when creating people from a filtered embed person #44 18/04/18 Add GDPR Contact Opt-In to advanced person find #416 18/04/18 Add GDPR Contact Opt-In to embedded person create #419 18/04/18 is_animal_adoptable logic should consider courtesy listings 17/04/18 html_adopted_animals, html_deceased_animals service calls #384 #385 16/04/18 animalview should be using get_animal_data to honour bonded animals #421 16/04/18 AgeGroup should be now until the animal leaves the shelter #422 15/04/18 Check incident permissions at server side during open 13/04/18 PetLink: Allow an owner account to be set for intake animals #423 10/04/18 Show ungiven tests with a blank result in mobile interface #420 10/04/18 Add Belgian locales 09/04/18 Reinstate view littermates including deceased littermates 06/04/18 Allow PNG to be uploaded and converted to JPG on the way in 04/04/18 PetLink cope with encoding errors in responses 02/04/18 Remove unnecessary locale lists #395 28/03/18 Fix bug where no staff/volunteer permission wiped out person filters 27/03/18 Add document template support to lost/found and waiting list #414 26/03/18 Transport book content can be too high (allow resize) #353 26/03/18 Filter out deceased animals from advanced find (require filter) #394 26/03/18 Include email address when logging sent emails #351 26/03/18 Store unsaved changes after executing diary task #291 26/03/18 Online forms, add time field type #163 26/03/18 Online forms support "emailsubmissionto" for extra addresses #327 26/03/18 Add GDPR Contact Opt-In form field type #408 23/03/18 Remove created/lastchanged fields from role subtables 23/03/18 Hide visual aids when editing generated documents #409 23/03/18 Add pdf zoom directive 19/03/18 Resolve redirects to absolute URLs to assist CDNs 17/03/18 Apply default log type in emails, style multi-select 16/03/18 Add deletions table in preparation for #391 16/03/18 GDPR Contact Opt-In field on person records #387 15/03/18 Allow DocumentImgLink2-500 to set img size 15/03/18 Use a short term cache on person_embed/post_id to prevent repeat lookups 15/03/18 Show debug info on retrieval of images and media 15/03/18 Open records in new tab not working from find pages #399 15/03/18 MPA not sending returned foster updates 14/03/18 Allow MPA to be used in Canada/Australia 13/03/18 Remove unused img_src code, make sure date/db in all calls for edge cache 10/03/18 Allow S3 DBFS cache entries to be recycled if they have < 24h left 09/03/18 Recalculate age group of adoptable animals #396 08/03/18 MPA: Go back 7 months rather than 1 when considering foster/adoption 08/03/18 Open in new browser tab causing constant reloads for related tabs 07/03/18 PetLink do not require street address 07/03/18 Make exclude from bulk email a flag instead of separate #284 05/03/18 Fix bug with shelter view flags where text overlaps 05/03/18 Fix permission bug that prevented non-super users editing accounts 04/03/18 Reinstate mutex to avoid lack of boto3 thread safety 04/03/18 Remove unused extension code #388 03/03/18 add animal_view_adoptable_html service call #390 03/03/18 html_adoptable_animals service call #193 03/03/18 Reinstate adoptionstatus/isanimaladoptable without db calls 02/03/18 PetLink: abandon registration on account locked error 28/02/18 Refactor publishers for substitution performance #386 27/02/18 Do not attempt to scale PDFs with more than 50 pages 20/02/18 Rewrite S3Storage to use boto3 #375 15/02/18 Fix permissions around generating/saving document templates 14/02/18 Do not require nopic.jpg in DBFS, fall back to static file #365 13/02/18 Export animals as CSV should only need EXPORT_REPORT permission 13/02/18 Document Template table refactoring and fixes #295 13/02/18 Add maint_db_update cron task 12/02/18 HTML Template table refactoring and fixes #363 12/02/18 Show "real" receipt number after adding payment instead of ID 12/02/18 Add email address validation and sending feedback #352 12/02/18 Fix bad opening balance code caused by time portion in default #361 12/02/18 Fix output of HomeCheckedBy on person find results 11/02/18 Complete and test AWS S3 storage module 11/02/18 Use with blocks around file access 07/02/18 Add en_KH (Cambodia) 06/02/18 Cache schema for code complete for 24 hours server side #355 06/02/18 Fix MySQL view performance on schemajs and get_person_query #354 05/02/18 Do not include currency symbols when exporting report to CSV 02/02/18 Merge flags failed when given only one flag 40 ================ 02/02/18 Fix bad mode passing from license renewal to generate doc 01/02/18 medical, test and vacc weren't testing for valid animals #349 30/01/18 Allow backslash in coding formats to escape chars 28/01/18 Include times in report dates exported to CSV 27/01/18 AgeGroup contains age group at most recent intake now 27/01/18 Add AgeGroupActiveMovement and update exit reports to use it 27/01/18 Tidy up batch trigger interface 27/01/18 Add batch trigger for all ages/times (variable data) 26/01/18 Add NeuteringVet* wordkeys 26/01/18 Data retention options tab, removed document media years #344 26/01/18 Add infrastructure for RetainUntil to expire media 25/01/18 Add ANIMALIMAGE csvimport field, supporting HTTP or data URI 25/01/18 Add PERSONMATCHADDED/PERSONMATCHEXPIRES csvimport fields 24/01/18 Disable PetRescue due to removal of support by PR 24/01/18 Searchable jurisdictions for people/incidents #267 24/01/18 Add WebsiteMedia* fields for waiting list/lost/found/incident #330 24/01/18 Allow editing/setting of batch, expires and manufacturer in give #330 24/01/18 Add lost/found service calls #329 #334 23/01/18 Email document signing request is plain instead of html #210 23/01/18 Email document as pdf is plain instead of html message #311 23/01/18 Fix currency rounding error on report.SUM 22/01/18 Add new SmartTag prefix 900141 19/01/18 Option to mark new images not for publishing #336 19/01/18 Keep account/trx in entry order with second sort of ID 19/01/18 Convert new empty lookup items to (blank) during CSV import 16/01/18 Option to disable defaulting of manufacturer/batch #104 15/01/18 Don't strip the sign when importing currency amounts from CSV 11/01/18 DB specific leftpad/substring methods in database classes 11/01/18 Batch update person names fixes missing codes too 10/01/18 Only default batch/manufacturer if the vacc is given #104 05/01/18 Default batch number and manufacturer from last vacc of type #104 05/01/18 Add support for default payment method #274 05/01/18 Support currency grouping digits and radix for locales #319 05/01/18 Reinstate hide person record from user functionality 04/01/18 Use age group config defaults if not specified 04/01/18 Add text encoding support to CSV import for UTF16 and CP1252 04/01/18 Log some PetLink registrations as errors so we don't keep trying 03/01/18 Show time on shelter in days #322 29/12/17 Not registering microchips is the default for conversions #325 29/12/17 Add IsNotForRegistration column/flag to disable chip reg #325 29/12/17 Remove PetLink chip password field (they use tel no) #321 20/12/17 Fix message delete button not appearing for superusers #315 18/12/17 Fix PetLink publisher ignoring non-shelter/oo/cell phone 15/12/17 Don't show the intake date for non-template non-shelter animals 07/12/17 Auto fix multiple website/docphoto being set 07/12/17 Do not include animal/donations with donation/movement doc types 05/12/17 Use 5 minute memory cache for DB update locks #314 02/12/17 Add Altering Vet to Health and Identification #42 02/12/17 Add Returned By field to movements #29 02/12/17 Show reservation status column on animal/person movement tabs #261 30/11/17 Add CSV import fields PERSONMATCH* #312 29/11/17 Add anonymize button to person records #310 28/11/17 Option to anonymize person data after a retention period #310 28/11/17 Fix issue with NULL in second microchip field 22/11/17 Fix bug where person diary tasks would not request a date 20/11/17 Reset database from import CSV should delete orphaned DBFS items 13/11/17 Fix charting bugs by upgrading flot to 0.8.3 #2 13/11/17 Fix warning when adopting to a previous surrenderer #283 13/11/17 Only show miles for UK/US #307 13/11/17 Add second microchip number/implant date fields #17 09/11/17 HTML publish menu item not hiding as looking for wrong token 08/11/17 Template animals were only working from today instead of new intake 08/11/17 Prevent HTTPError subclasses breaking with no request #302 08/11/17 Dirty the animal form when a unit is selected from the dropdown #298 08/11/17 Use sortable tables for displaying audit trails 08/11/17 Show all incidents on animal record #11 07/11/17 Fix update_3010 to populate AdditionalFlags when importing from ASM2 06/11/17 Fix error in import PayPal where only the last flag was set 02/11/17 More relative URIs including for animalthumb when generating PDF 31/10/17 Add en_ES locale for English (Spain) 28/10/17 Fix mismatch XSS escaping breaking join for onlineform email 28/10/17 Support importing of licenses via CSV #301 28/10/17 CSV import/export VACCINATION* and MEDICAL* fields #282 28/10/17 Add ORIGINALOWNERJURISDICTION and PERSONJURISDICTION #299 28/10/17 PetLink warnings are still success 24/10/17 Refactored incoming online form and some animal updates #252 23/10/17 Fix bug where exclude from publish did not appear for .jpeg 20/10/17 Fix bug where .JPG could not be preferred web/doc 20/10/17 Enable CORS for service API 19/10/17 configuration and dbfs parameterised #252 18/10/17 Holds ending today alert should show tomorrow #297 17/10/17 Security fix for raw dates passed to calendar functions #296 16/10/17 animalcontrol refactored for parameterised queries #252 15/10/17 Hide movement date for reservations 14/10/17 50% of animalcontrol refactored #252 14/10/17 Refactored animal module to use parameterised queries #252 13/10/17 Include additional fields with *_shelter_animals call #288 13/10/17 Add xml/jsonp/json_recent_changes #286 12/10/17 Fix for displaying animal/person additional fields in documents 11/10/17 Cleaned up movement delete for dangling/phantom reserve #277 11/10/17 Allow CTRL+SHIFT+F to also be used for codemirror fullscreen #292 11/10/17 Writing database statements to execute log broke with params #290 11/10/17 Show 365 days as 1 year in date_diff #287 30/09/17 Ignore invalid geocodes (null, 0,0*) when drawing maps 27/09/17 Make cloning logs the default option for everyone with opt out on demand 20/09/17 Post CSV data as the body for petlink, rather than multipart 18/09/17 Allow register on intake to AVID users where register overseas is on 18/09/17 Show return button on foster book 16/09/17 Add asm3_adoptable_limit value to adoptable_js 15/09/17 Fix animal cloning to assign new receipt numbers, include tax 15/09/17 Fix PetLink publisher to use new REST API 13/09/17 Strip commas from email names to prevent splitting of addresses 11/09/17 Disable cloning of logs when cloning animals 10/09/17 Prevent intake dates being more than a week in the future 08/09/17 Saving licence documents using licence id instead of person id #280 06/09/17 Add support for vaccination and intake histories to MPA 05/09/17 Make complete/disabled rows a little more visible 02/09/17 Show PDFs inline from document repository 26/08/17 Add report header/footer tokens for organisation/address/city/state 25/08/17 Dump redundant delays and increase animation speed/responsiveness 24/08/17 Clone animal missing IsTrial/IsPermanentFoster/ReserveStatus 22/08/17 PayPal UI complete #56 21/08/17 First draft of PayPal CSV import backend #56 21/08/17 Use utf-8-sig for decoding unicode CSV to remove any BOM 20/08/17 Monthly figures double count of foster/retailer movements #234 19/08/17 Deleting FIV tests should not clear the FIV/L box/date 18/08/17 Add utils.UnicodeCSVReader, import csv files as UTF-8 17/08/17 Ability to specify asm3_adoptable_sort to adoptable_js 15/08/17 Export->SQL Dump(media) #225 14/08/17 Remove publisher limit, add as a param to get_animal_data #272 14/08/17 CC ignored on document signing request email #273 10/08/17 Add $CONST X=Y$ for constant values in report SQL #256 10/08/17 Wordkeys for FollowupDate2/FollowupTime2 and 3 #204 10/08/17 Show Cloning... dialog during clone 10/08/17 Auto return fosters on transfer as well as adoption #255 10/08/17 Fix media cloning bug #243 05/08/17 Handling for most common backend errors we see 30/07/17 Always include animalname/reserveanimalname in online preview too #238 30/07/17 Always include an extra date/time field in all online form posts #265 30/07/17 Always show first and lastname in online preview if available #238 30/07/17 Retain EXIF data when using HTML5 image scaling #6 29/07/17 Add animal should set first in list for invalid defaults #253 29/07/17 Show a column for breed on the reservation/foster books #232 29/07/17 Add PDF margin support #32 29/07/17 Include recent TNR, transfers and escapees in lost/found match #18 28/07/17 Anibase UK have rebranded as Identibase 27/07/17 Fix MySQL performance issue with get_person_query (Cliff Ingham) #263 27/07/17 Add jurisdiction table and person/incident fields #266 25/07/17 Refactor and add Person/Animal name resolution back to additional #262 20/07/17 Add media.DBFSID/MediaSize, remove _scaled names and PDF batch scale #260 19/07/17 Bad logic for KNOWN_ERRORS meant always true and no scaled PDFs 18/07/17 Filter fosterers to user site if set for shelterview fosterer mode 05/07/17 Use 2-step downsampling when scaling images for smoothness 27/06/17 Setting web preferred should clear exlclude from publish 16/06/17 Send maddie's fund animals in batches due to timeouts #89 12/06/17 Add MediaMimeType indexed field #230 11/06/17 Fix unit tests after database refactoring #230 10/06/17 Break up publish.py #233 09/06/17 Database insert/update/delete methods #230 08/06/17 Move query/execute into db object and port all execute_many #230 08/06/17 Move create of sequences/views/sp into db objects with get_id #230 08/06/17 Remove DISTINCT from animal/people as unnecessary and slower #231 07/06/17 DB refactor phase 1 (separate provider class abstractions) #230 06/06/17 Only write new or changed config items #229 06/06/17 configuration read-through cache for performance #229 04/06/17 Use new movement date for auto closing foster movements 31/05/17 Add WEBSITEMEDIANAME2-4 shorthand for publish.get_animal_view 31/05/17 Add extra default reports (intakes/outcomes, print for adopters, etc) 30/05/17 Remove meetapet publisher (supported via rescuegroups) #146 30/05/17 Calendar view lists not decoding HTML entities #223 30/05/17 Allow daily boarding cost to be set on bulk change 25/05/17 First development of Maddie's Pet Assistant publisher #89 25/05/17 Remove slow DB session storage - cachemem uses dictionaries or memcache 23/05/17 Completed full/json refactoring - rota/reports/waitinglist/etc #173 22/05/17 Refactor onlineforms and options #173 22/05/17 Refactor move_* targets, fix broken calls to templatelist #173 22/05/17 Refactor lookups/lostanimal/litter/mailmerge/report/report_export #173 22/05/17 Remove noisy debug publisher logging (only alert/success needed) 21/05/17 Overnight batch need only update variable data for shelter animals 18/05/17 Fix bug where required vacc 2 has to be > expired vacc 1 (>=) 12/05/17 Performance fixes for HTML publisher #215 12/05/17 Fix lookingfor/match report to use execute_many for performance 12/05/17 Only force a reload once from /main on build discrepancy 12/05/17 Limit max number of lost/found and looking for matches for performance 11/05/17 Fix bug with duplicate config items in PostgreSQL 11/05/17 Use LATEST_VERSION instead of build as seq/view/sp trigger 11/05/17 Record execution times for all batch functions 11/05/17 Reduce csv_report/html_report cache time to 10 minutes 11/05/17 Additional indexes to speed up get_alerts plus 120 sec cache 10/05/17 Allow order of diary task elements to be set #138 08/05/17 Allow user accounts to have logins disabled #211 07/05/17 Wire up cc field when sending media/as pdf #200 06/05/17 Audit deleted satellite records #201 06/05/17 Return nopic for missing animal_thumbnail #209 04/05/17 json/xml service call to get data for a single animal #207 04/05/17 Strip personal data for adoptable_js #207 02/05/17 Include species in adoptable/shelter online form dropdown 01/05/17 Refactor licenses, citations, logs, diaries #173 30/04/17 Add missing index on additional.LinkID for performance 26/04/17 Excluded images should not be counted in WebsiteImageCount 21/04/17 Fix unicode bug in saving and reloading diary notes/tasks #138 20/04/17 asm3_adoptable_extra callable function to add extra content to each item 20/04/17 Move csvimport to async framework #1 20/04/17 Complete function async task framework, switch trigger batch processes #1 20/04/17 Simplify adoptable_js for mobile devices and fix iframe on iOS #199 18/04/17 check_sql checks for unclosed $ and engine protects against them 18/04/17 Export animal csv frontend screen/option #21 17/04/17 Backend to export one or more animal rows as CSV #21 17/04/17 Coordinator and Fosterer shelter view mode #191 17/04/17 Allow zero payments through Receive a Payment screen #196 17/04/17 Allow movements to be assigned on Receive a Payment screen #196 17/04/17 Prevent non-shelter publishing bug with fosters/retailers #195 12/04/17 Add <> alias wordkeys 09/04/17 Only use postcodes for geo calculations in the UK due to Google issues 07/04/17 Convert email incident notes to use emailform #179 07/04/17 Record media tab emails in the log #12 05/04/17 Use iframe container for animal_view calls #182 05/04/17 Add asm3_adoptable_filters to select visible dropdowns and tagline #182 05/04/17 Add breed and size filters to adoptable_js #182 31/03/17 Extra clarifying text on mobile/email signing 31/03/17 Copy comments as well as fee to template cloned animals 30/03/17 Do not include animals with future adoptions when publishing #185 30/03/17 Show sheltercode box on mobile add animal if manual codes enabled #190 29/03/17 Fix bug with litter references not being URI encoded for litter mates 29/03/17 Add cost total wordkeys #177 29/03/17 Create audit records for bulk animal change 29/03/17 Signing pad too small on hi-res landscape tables #183 28/03/17 Basic support for importing online forms from HTML files #186 27/03/17 Fix memory error and show currency symbol with {SUM} #187 22/03/17 Include built in flags with $ASK PERSONFLAG$ and $ASK ANIMALFLAG$ #26 22/03/17 Secret GeocodeWithPostcodeOnly config for Google issues with Wales 21/03/17 Add given/remaining counts to medical book/tab 21/03/17 Add asm3_adoptable_filter support to adoptable_js #171 21/03/17 Prevent signing pad breaking if last document to sign is deleted 21/03/17 Document repository drag and drop support #139 20/03/17 Publishing option to exclude animals with no bio/description #157 19/03/17 Use person keys from latest movement instead of active for future adoptions 18/03/17 Add administering vet wordkeys to vaccinations and tests #166 18/03/17 Fix person_embed/lookup performance issues where not caching #176 18/03/17 Include mandatory additional fields on embedded add person widget #175 16/03/17 Revert #172 due to double load bug, remove IE8 hash/history support 16/03/17 Remove asilomar tables and code - no longer needed #5 16/03/17 Add new live asilomar figures report #5 16/03/17 Add missing Mountain Dog mapping for adoptapet 15/03/17 Fix weird back behaviour due to missing popstate #172 14/03/17 Include other return types in annual figures/returns 14/03/17 Fix miscount in monthly figures where start of day included intake 13/03/17 Use flake8 for make/compilepy 13/03/17 Refactoring code.py to remove smelly html.controller* code #173 13/03/17 Refactoring code.py to use new ASM/JSONEndpoint #173 12/03/17 Allow the (any) text to be translated in adoptable_js 11/03/17 Fix for adoptable_js comparing age groups with unicode 11/03/17 Support for asm3_adoptable_translate dictionary with adoptable_js 10/03/17 Add en_CA locale based on en_GB #164 10/03/17 Removed unused adjust_hour function #164 10/03/17 Add non-whole hour timezones along with fraction support #164 09/03/17 Add DDL dump and licence/payment data dump #165 08/03/17 online form: create transport bugs (type and city/state) 07/03/17 Chocolate Labrador Retriever mapping missing for adoptapet.com 07/03/17 Order medical books by required ascending #161 07/03/17 When cloning animal media, only copy dbfs for file media 06/03/17 mailmerge: generate documents should not support pdf/save #159 05/03/17 Mobile interface not honoring view staff/volunteer permissions #155 03/03/17 Person links to non-shelter should not show location #154 03/03/17 Detect all ASM/HTTPError subclasses, not just validation #3 03/03/17 Add en_BG locale for English/Bulgaria 03/03/17 Increased app thumbnails to 85px, removed redundant IE CSS expression() 02/03/17 Add species/age/gender selector to animal_view_adoptable_js #24 02/03/17 Make thumbnail default size 150x150 instead so they can be browser scaled 02/03/17 Add animal_thumbnail service call #24 02/03/17 Add animal_view_adoptable_js service call #24 01/03/17 Medical profile, loading single/multi broken #150 01/03/17 Status field does not belong on medical profile #150 01/03/17 Remove died off shelter from move_deceased #152 01/03/17 Add indexes for DiedOffShelter/NonShelterAnimal #151 01/03/17 update_foster_animal_statuses is redudant with foster on shelter #152 01/03/17 Remove died off shelter tickbox, add it to banner #152 01/03/17 Optimised update_animal_status to load movements/cfg on start #152 01/03/17 Rewrite update_animal_status to single pass, sets died off shelter #152 01/03/17 Died off shelter is now a read-only denormalised field #152 01/03/17 Merge cron.reports into cron.daily 28/02/17 Rabies tag should be shown for both cats and dogs #30 28/02/17 HTML5 validation is not supported on IE9 28/02/17 Add HTML5 pattern to stop whitespace in required online form fields 27/02/17 Show fivl/declawed for cats, heartwormtest/rabiestag for dogs #30 27/02/17 Remove iOS6 upload detection #144 27/02/17 Include non-neutered/spayed adoptable animal selection #31 26/02/17 Create transport from online form #65 25/02/17 Annual and half-yearly due payments setting due date incorrectly 25/02/17 Allow bulk changing of transport status #99 25/02/17 Add DisplayWeight wordkey to show kg or lb/oz in documents 25/02/17 Move looking for and lost/found match reports into configuration #149 25/02/17 cron.py: remove extra exception handling as it hides stack traces 25/02/17 Move asm.news into configuration #149 25/02/17 Log retention to 14 days, record all success/alerts #149 25/02/17 Rewrite publish_logs to use new table #149 25/02/17 Move publishing logs into their own table #149 24/02/17 Ability to clone transports for multiple animals #131 24/02/17 Allow search of Created By on animal/person find advanced #130 24/02/17 Add Created By to find animal/person/waiting list available columns #130 24/02/17 Add transport type field #108 23/02/17 Show the URL for extra images for easy copying into documents 23/02/17 Report MAX function broken and comparing minval 22/02/17 Move->Adopt/Reserve/Reclaim should require payment permissions 22/02/17 Removed unused VIEW_ANIMAL_VET permission 22/02/17 Signing ids were not being passed to the mobile signing pad 21/02/17 Add listMonth to calendar view #20 21/02/17 Upgrade fullcalendar.js and moment.js #20 20/02/17 Add Amazon S3 storage to dbfs #134 19/02/17 Refactoring file storage, maint_switch_dbfs_storage #134 18/02/17 Add file storage to dbfs #134 18/02/17 Correct formatting for <> 17/02/17 Separate DOA in home page stats, ignore died off shelters in stats 17/02/17 HTML template cloning broken since dialog_show_add refactor 16/02/17 Locales for Aruba en_AW, nl_AW 15/02/17 Notes additional fields not saving on add new animal #140 15/02/17 Option to disable fine-grained incident permissions #132 15/02/17 Refactor js out of mobile.py 15/02/17 Allow online form fields to be set by querystring #133 15/02/17 Default reserved owner email for shelter/foster animals #135 14/02/17 Include first time an animal was published in history #137 13/02/17 Fix sql injection bug in diary.user_role_where_clause 12/02/17 Fix check licence mobile form breaking add diary (no closer) 10/02/17 Fix receipt number/ID numbering bug 10/02/17 Add altered mode of shelter view 10/02/17 Add en_LB (Lebanon) locale, pegged to US English 09/02/17 Fix SQL injection bugs in user module 08/02/17 Fix for upper() bug when type is none 08/02/17 Update fr_CA translation 02/02/17 "Mark homechecked" box on move->adopt should default to unchecked 02/02/17 PetFinder "Mixed Breed" breed, adoptapet mapping to new primary mix #127 01/02/17 Chip registration publishers should not write a log if no data 31/01/17 Add "Name" shelterview group, like an old phone book by letter #85 31/01/17 Default current vet in vacc/test/med give dialogs #128 31/01/17 Add OwnerFlags and AnimalFlags wordkeys #129 31/01/17 Use simpler timeline for sqlite databases to retain compatibility 30/01/17 Disable database timeouts for cron tasks 28/01/17 Add publish_3pty target to do all 3rd party publishers sequentially 27/01/17 validate.dirty should include richtextarea controls #125 27/01/17 Remove redudant config escaping as breaking email sig formatting #125 26/01/17 Don't lock type/species/intake date if lock and manual code options are on 26/01/17 Bulk geo batch should go for newer people first 26/01/17 Remember failed geocodes as 0,0 to prevent trying again with addr hash 24/01/17 When loading into options/richtextarea use value method 24/01/17 Right-align account totals and any currency in tableform #7 24/01/17 Include neuter/spay info in annual figures #116 23/01/17 Show deceased date in banner 23/01/17 Died off shelter animals should retain active movement #124 23/01/17 Hide person names in banners if user lacks view person perm #105 23/01/17 Include return reason and comments in movement display #114 23/01/17 No need to show movement number and return date for some books #122 21/01/17 Initial stock usage records were orphaned #120 20/01/17 People records created by online forms don't get geocodes #118 20/01/17 Fix broken hashes generated by geo.py #118 20/01/17 Add support for keys to bulk geocoding service #118 20/01/17 Unit availability was still showing fosters who left a unit 18/01/17 Use JSON encoding for town/counties instead of controller_str 17/01/17 initials field in onlineform not being transferred 17/01/17 Format stock unit price/cost correctly, show value 15/01/17 get_latest_movement should not return future movements #115 15/01/17 Record errors during html_to_pdf 13/01/17 Config to have annual figures not split adoptions by transferin 11/01/17 Fix missing diedoffshelter clause in annual figures 10/01/17 Fix unicode bug in display of publishing options #96 09/01/17 Changing internal location does not clear unit #90 09/01/17 MySQLdb requires UTF-8 for escape_string rather than unicode #94 09/01/17 Allow transfer in and adoption fee to show on add new animal #106, #109 09/01/17 service html_report/csv_report|mail returns SQL error for an invalid report #110 09/01/17 Allow due/receive dates to be overriden with payment widget #112 09/01/17 Add extra payment fields to payment widget on Move screens #22 07/01/17 Fix incorrect IsTransfer clause in annual figures #111 06/01/17 Set LastChangedDate/By when using Receive donation/payment button 04/01/17 Fix broken link to sheltermanager.com/my/ on change password 01/01/17 Don't hide the fee field for non-shelter template animals 31/12/16 Update geocode during Add Person screen 31/12/16 Fixed bug where updating geocode from create embedded person was broken 31/12/16 Allow non-unique licence numbers 27/12/16 Allow regimen start date to be edited since it can be on screen 27/12/16 lksize should be editable and is not like other lks tables 27/12/16 Don't set membership flag when entering vet license number 27/12/16 When merging people, include administering vet from test/vacc/medical 22/12/16 Add size for onlineform/waiting list, defaults for size/species #103 21/12/16 Code around problems with missing CID fonts scaling output of Microsoft Print PDF 20/12/16 Add swiss locales 18/12/16 Don't send blank service dates to foundanimals for intake registration 11/12/16 Sex shelterview mode #87 11/12/16 Entity name in medical books for any active movement, not just foster 10/12/16 Include db= parameter in report {IMAGE} substitution 07/12/16 Don't send regularly emailed reports if there's no data to show 07/12/16 Show fosterer name/link in medical books 07/12/16 AVID UK allow registration of overseas chips #100 06/12/16 requirefollowup ac filter should search to the end of today 05/12/16 Fix for calculating baby split templates, make 12 months 365 days not 366 02/12/16 Followup alerts should compare against the end of the current day 30/11/16 SmartTag: animalstatus to now be one of DECEASED/ADOPTED/NOT ADOPTED 30/11/16 Nanochip brand regex was one zero too long 29/11/16 Inactivity timeout bugs caused by caching of config.js from logging #91 29/11/16 Creating an embedded owner should trigger the change event #92 28/11/16 Fix error where email pdf not defaulting owner email address 24/11/16 HTML publisher should only remove pages just before uploading new ones 22/11/16 Logout handlers should use smaccount parameter if available 21/11/16 Fix unhandled exception with wrong account on service calls 17/11/16 Fix broken users.logout not clearing old sessions 17/11/16 Record IP in audit log for login/logout 16/11/16 Add Feist publisher breed 16/11/16 Include AdministeringVetID when cloning test/vacc/treatment 13/11/16 Use DMY data format for fr_CA 12/11/16 Set default death category on move->deceased 12/11/16 Switch to github, issue tickets are renumbered ----------------- 12/11/16 Fill in for Safari/iOS/IE8 lack of HTML5 required attribute #496 11/11/16 Add Software column to PetLink publisher 11/11/16 Fix QR codes in templates to work with PDF export #490 11/11/16 Add renew licence button to copy previous licence #503 10/11/16 Online forms should not create auto reserves to banned owners #473 10/11/16 Fix bug where LostArea/FoundArea fields missing on new databases 09/11/16 Allow movements to be added from bulk change animals #452 08/11/16 Deceased animals should not have an active movement #501 08/11/16 Adjust template animal dates during cloning to intake diff #485 08/11/16 Show adoption coordinator in banner #495 05/11/16 Add <> and <> wordkeys 05/11/16 Use person membership number for vet licence if vet flag active 04/11/16 Add fosterer as a find animal column 03/11/16 Count fosters as total time on shelter 03/11/16 Allow maint_variable_data to override config check 03/11/16 Use complete querystring as cache key for service calls 02/11/16 Add dedicated fr_CA translation 02/11/16 Show Canadian publishers for fr_CA 01/11/16 Use 23:59:59 time component in monthly figures/asilomar 28/10/16 Prevent empty/null second breed breaking breedname 26/10/16 Strip empty signature placeholders when converting to pdf #492 26/10/16 Put location filters on a config switch, off by default #486 21/10/16 Fix bad postcode comparison for lost/found match 20/10/16 Add ANIMALMARKINGS column for CSV import 19/10/16 Do not use XSS protection when cloning online form fields 19/10/16 Sensible behaviour when word processor TAB key is pressed 18/10/16 Allow embedded