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