Documentation

Manual

Release notes

------------------------------------
V2.7d   unreleased

- Order dancer export by uid

------------------------------------
V2.7c   2024-11-07

- Bug fix: Barcode print can fail under certain circumstances on PHP 5.3 

- Bug fix: SP-Barcodes print shows error message on PHP 5.3 

- Better centering of barcode printout on paper type EU-B

- More PHP 8 compatibility fixes

------------------------------------
V2.7b   2024-09-24

- Filter and search functionality for list of dancers

- Corrections on license key calculation on Linux systems

- Update FPDF utility from 1.7 to 1.86

- Update PDF_Code128 utility from 1.0 to 1.2

- More PHP 8 compatibility fixes

- Further documentation updates

------------------------------------
V2.7a   2024-05-15

- Bug fix: Play a sound also for Open Tip

- Bug fix: If auto hide=0 put paging activated, do not play sound
  on every new page

- Bug fix: Despite selected "no welcome", a welcome screen could
  be displayed as long as no tip had been created.

- Reworked touch screen functionality for the caller screen,
  should now work on current browsers

- Experimental use of BIOS product key for license generation

- Add enabling of MSI codes to documentation

- Further documentation updates

------------------------------------
V2.7    2024-03-13

- Allow playing of a sound when squares have been mixed
  (New admin setting & new config.php setting)

- Excluded non-numerical barcodes from ExcelImport, as they were imported
  wrong

- PHP 8.1 compatibility

- Documentation updates

------------------------------------
V2.6a   2023-10-04

- In class mode, the reg screen in active mode now also shows
  class dancers independend of the active flag, provided the 
  dance program matches.

- Excel import now also accepts comma as separation character.

- Documentation updates

------------------------------------
V2.6    2022-11-07

- Error corrections on the Excel import

- App admin authorization now alteratively with password instead via IP
  using new parameter $to_conf['admin_pw'] in config.php

- Fix problem in changing dancer beau/belle from app extended functions

- Removed support for old WampServer installations

------------------------------------
V2.5d   2022-08-30

- Optimised display for statistics overview

- Corrected a small error in formatting barcode numbers with leading
  zeroes when filling up the page during barcode print

- Eliminate some control characters during an Excel import

- Bugfix: Allow for printing a single barcode

- Added a section "Troubleshooting connection problems" in the Wifi section of
  the manual.

- New function "Setdancer" on the admin menu, that allows to reset the
  status flags of all dancers.

- Corrections to the ExcelImport function and the new option to also create
  dancers that already have an barcode.


------------------------------------
V2.5c   2019-11-11

- A new option "PVLLS" can be used to punish dancers that try to trick
  the program on "alternating" dances.

- The ExcelImport function now can also import class member lists.

- The Import function now asks if you try to leave the page before an
  import has completed. 

- Bug fix: License calculation fixes for Linux systems

- Bug fix: PHP7 compatibility for automatic determination of default language

- Better documentation of the "Alternating" mode in the manual

------------------------------------
V2.5b   2019-03-10

- Bug fix: The new algorithm introduced in v2.4 still tended to produce
  "double sit out" or "not enough dancers found" errors under certain 
  circumstances. Hopefully better now.

- Bug fix: In a situation where a whole square would have to sit out
  because of an unbalanced number of belles and beaus the program now
  aborts mixing with an error message, requesting to switch more dancers
  to dance both positions.

- Bug fix: Prevent active dancers from being deleted in the edit user dialog
  during a dance, as this did break the program.

- Feature: You can now mix using the barcodes "NEW" or "OPEN".
  The special barcode PDF now also provides these codes.

- Documentation for WiFi access

------------------------------------
V2.5a   2019-02-21

- Bug fix: The new algorithm introduced in v2.4 tended to produce
  double sit out errors, especially often for small groups (9 to 15 dancers).
  This shouldn't happen any longer. 

- Bug fix: Switching of "posmode" on the admin screen did not work correcty.

- Bug fix: Adding additional barcode fields on the user edit screen did
  not work on older web browsers (not supporting the outerHTML property)

- Feature: It is now possible to ignore a double sit out error.
  In certain situations (e. g. during a class with 12 class members
  that are allowed to dance every tip and 9 angels), this might be
  necessary.

- Feature: The mini statistic box shown when mixing the squares has now
  links that allow you to list dancers scheduled to dance a special dance
  position. In case of an unbalanced number of dancers, this makes it easier
  to change some of the dancers.

- Many new dancers in dancer-190221-tri.data

------------------------------------
V2.5    2019-01-08

- New: Dancers can now have more than two barcodes. Use the "+" marker at the
  end of the barcode list on the user edit screen to add as many barcodes as
  you need.
  This required a new dancer.data file format and a new database structure.
  NOTE 1: After an upgrade, use the "database: check" function to
  update your database.
  NOTE 2: Old program versions will not be able to import the new data.dancer
  file format.

- New: Barcodes can now be printed for a given number range.

- Bug fix: When using the "avoid" feature, tip gereration could fail 
  with error message
  "Check tip error: Warning: sprintf() [function.sprintf]: Too few
  arguments in sd-v2.4/src/tipinc.php on line 168"

- Bug fix: When using filltype "repeat" for barcode printing, a useless
  barcode was printed between the end and the start of the repeat sequence

- Bug fix: Barcode and Special barcode PDF files contained HTML garbage 
  after the end of the PDF code

- Documentation fixes and updates

- German language release notes in the file "aenderungen.txt"

------------------------------------
V2.4     2018-10-16

- New algorithm for deciding who dances beau and who dances belle, that
  hopefully solves the long known bug of the program that led to unwanted
  splits of fixed couples, especially of couples that are not composed of
  exactly one beau and one belle.
  This is enabled by default and can be deactivated using the new 
  "Pos mode" option on the admin screen. Please report if you should run
  into problems.

- On the admin screen, the "Class couples" setting showed
  the wrong status when in "normal" or "ignore students" mode

- A new option "repeat" for barcode printing allows to fill
  the rest of the page with a repetion of the selected barcodes.

- Bug fix: Redo breaks the program when used on an open tip or
  with no previous tips.

- Additional documentation for dancer.data

------------------------------------
V2.3     2017-11-17

- Modified licensing algorithm for Windows 10
  This will (hopefully) save Windows 10 users from losing 
  their Triangles Rotation license on major Windows 10 updates.
  Note: Windows 10 users will need to get an update of their Triangles
  Rotation license key! The update can be obtained online and automatically.

- Additional error indications for usage via Android API

- Internal: 
  In preparation of PHP 7 compatibility, replace POSIX regex functions with
  PCRE, and MySQL with MySQLi

- Internal: 
  Created a test suite for automatical software tests

- Additional documentation

- Documentation fixes

------------------------------------
V2.2g    2017-05-01

- Bug fix: V2.2f introduced the problem that under special circumstances
  it was impossible to get back the display screen using the "Display"
  link from the menu.

- Bug fix: Caller display was broken when three squares were present.

- DB check now displays possible duplicate dancers records that already have
  two barcodes in red color.

- Default value for display columns now "3 if 16:9"

- Superuser only: Allow a "dancer only" export

------------------------------------
V2.2f    2017-03-12

- Bug fix: Avoid error message on auto unique names if no dancer is present

- Bug fix: Secondary barcodes were not accepted when trying to set partner
  with an "AS COUPLES" scan

- Bug fix: "Red out" checkbox on admin screen kept loosing its checked status

- New "no welcome screen" option allows to eliminate the welcome screen

- "autohide" will still be honoured after a manual switch to "display" mode.
  Time counts from last mixing, no autohide will occur when manually switching
  to the display after the autohide time period has already expired.

- Additional troubleshooting documentation

- Additional German documentation translations

- Documentation corrections

------------------------------------
V2.2e    2016-11-15

- New dancer database file 161115-dancer-tri.data

- Additional "delete" option for "Setclass" to delete the class flag of all
  dancers once a class has ended.

- Bug fix: make input field below the dancer names on caller screen
  editable (again)

- Improved mouse drag & drop on caller screen 

- Modifications for extended app functions

- Additional documentation

------------------------------------
V2.2d    2016-05-05

- Fix a bug introduced in V2.2c:
  The "check square" function of the app was broken and showed
  an error message "invalid field count"

------------------------------------
V2.2c    2016-03-24

- On barcode printing with fillup type "all", when
  filling up the page, lookup and print dancer names for codes 
  already assigned

- A new warning message will occur when you try to mix squares but
  have an unbalanced number of belles & beaus (this does not yet
  work perfectly, will be improved in a later version).
  You can explicitly ignore this message (but this is not recommended).

- When searching free barcodes for new assignments in ExcelImport, 
  also check alternate barcodes.

- The new admin screen option "clock" now enables display of a clock
  in the lower right corner of every screen.

- Experimental drag & drop implentation for caller screen

- Caller screen allows to toggle between 2 and 4 squares

- Move menu info "Last tip" behind Caller menu entries (if present)

- Experimental work around for correct Reg & Display screen 
  representation of accented letters on some broken computers

- Experimental version of a blacklist to allow global deletion of
  obsolete dancer records 

- App shows program level of tip

- App now shows error messages if tip generation failed.
  Requires app version >= 0.23, older apps will show "Server error"

- App in admin mode now shows correct number of present squares for open tip

- Additional German translations

------------------------------------
V2.2b    2015-10-29

- ExcelImport now also recognizes C3b and C4

- ExcelImport now allows dancer name and gender flag
  to be empty if a barcode is given.

- ExcelImport now allows club name to be empty for
  existing dancers; their club name will remain unchanged
  in that case.

- Three new paper formats added for barcode printing:
  Support for US Letter format and printing of bigger
  barcode cards

- Translations for error messages in tip generation added

- Documentation updates


------------------------------------
V2.2a    2015-05-18

- Fixed a bug introduced in V2.2 which broke the "New dancer" function.

- Rewritten code for "auto unique names", now hopefully removing the race
  condition that could lead to wrong short names in Multiscreen mode
  (especially short names with multiple dots at the end).


------------------------------------
V2.2     2015-05-03

- New "avoid" feature added.
  Please note that this required a change of the 
  database structure, so use "check database" after the update
  to modify your database accordingly.
  This feature also required a change of the dancer.data
  format, this means that older versions of the program
  will not be able to read newer exports of the dancer.data
  file.

- dancer.data format changed (see above)

- Database structure changed (see above)

- On ExcelImport for specials, also the secondary barcode
  can be used to identify the dancer

- On ExcelImport for specials try to recognize duplicate imports

- Abort ExcelImport on detection of wrong character set

- Corrected a bug on the automatic creation of unique names
  which could result in short names having a dot too much
  at the end.

- Reorganized manual and added a search function

- New admin screen setting "square arrangement" modifies default
  square ordering on the caller display

- Documentation and translation of "setclass" function

- Additional German translations of some manual chapters

------------------------------------
V2.1f     2015-02-15

- Correct a display paging error that occasionally could
  lead to a display of an empty page ("Page 2 of 1")

- New configuraton option "Class couples" allows to ignore 
  fixed couples during class mode

- Indicate activated "Class" mode in "New" link

- On empty configuration, guess language using browser settings

- Ignore locks to non-existing squares

- Check database now warns about possibly duplicate dancer records

- ExcelImport now drops leading and trailing spaces on first, last
  and club names

- Check database removes a single trailing space on first names
  (as those break the unique names mode)

- Improved and documented the experimental caller display

- Additional translations on statistics

- Additional German translations of some manual chapters

- Corrections in documentation 

------------------------------------
V2.1e     2014-11-19

- Bug fix: paging of dancer display still
  required "register_globals"

- Bug fix on Import new dancers that was introduced
  in V2.1d: Import stops on inconsistent data

- Experimental support for registering dancers
  via the Android app; this includes a new 
  special barcode "APP" which creates a security
  code for access from the app

------------------------------------
V2.1d     2014-11-01

- Bug fix on paging of dancer display that
  was introduced in V2.1c

- Bug fix on "3 if 16:9" columns mode

- On "import new dancers" try to import club names
  of dancers where the club name was unknown

- Support basic admin functionality for the app

- Support for "check square" function of the app

- Additional help texts

- Additional German translations of help texts

- Alternative download link for bcompiler binary in manual


------------------------------------
V2.1c     2014-09-12

- New option for switching between dancer position naming "Beau+Belle" 
  or "Boy+Girl"

- Optionally allow three column dancer display (instead of the
  standard two columns).

- Corrected a bug on display size calculations

- Additional help texts

- Additional German translations of help texts


------------------------------------
V2.1b     2014-05-15

- Corrected a bug on importing new dancers where the dancer barcode
  already exists as secondary barcode 

- Corrected handling of adding secondary barcodes on import of new
  dancers

- Corrected a bug in the edit dancer dialog which could corrupt data
  after an error message (e.g. duplicate barcode) occured on "save"

- Corrected a bug on setting partners in the edit dancer dialog
  which could lead to broken relation links.

- New sub option "shared reg & disp" for multiscreen mode

- Additional help texts

- Additional German translations of help texts

------------------------------------
V2.1a     2014-03-12

- Bug fixes for app mode (register_globals related)
  (this bug was introduced in V2.1)

- Bug fix on edit dancer data: allow empty M-ID field 
  (this bug was introduced in V2.1)

- Produce a warning message and ask for a confirmation of "new tip" 
  when the last tip is older than 20 hours.
  (as this probably means that you just forgot to reset tip statistics)

- Tip undo/redo (including warnings) now also works in combination 
  with open tips.

- Always try to create database tables with ENGINE MyISAM
  for better performance on slower computers.
  (Database check function now also tries to change type of existing
  tables.)

- Corrections in check/creation of configuration cache which
  could lead to an unusable configuration when copying the program
  on to a different system.

------------------------------------
V2.1      2014-02-16

- Corrections in help texts

- Corrected calculation of line height on font size change for 
  dancer display table
  (Note: you probably need to adjust your browser to the new
  calculation by using the "big" or "small" function on the display
  screen once)

- Reworked code: PHP setting register_globals is no longer needed
  (Although this means that the application is now PHP 5.4 compatible,
  unfortunately there is no working bcompiler for that PHP version
  available; searching for a solution...)

------------------------------------
V2.0k     unreleased

- Corrections in help texts

- Dancer mixing algorithm improved: The effect of dancing too often
  with the same dancers in one square while not dancing with some
  others is now reduced.

- Correction on top menu: Changes of version v2.0j led to top menu
  being too wide so that a part was cut off at right screen border.

------------------------------------
V2.0j     2014-01-26

- New secondary barcode for dancers
  NOTE: Database structure and dancer.data format changed!
- Top menu now fixed against scrolling for faster navigation
- Error correction: Do not import partnership relations for "new"
  dancers (created wrong and inconsistent relations in previous version)
- Corrections in help texts

------------------------------------
V2.0i     2014-01-18

- New option "max squares" to limit number of squares
- Correct an error in dancer list (special flag not displayed
  correctly)
- Add display of active flag in dancer list
- Correct an error affecting the possible partners available
  in the edit user dialog
- Some code cleanup
- More help
- Correct error on recreating binconf.php
- Better error message for missing binary version

------------------------------------
V2.0h     2013-12-02

- Error corrections for Android app
- Change timeout for special scan messages from 2 min to 20 sec
- Add "autocomplete off" to scanner input field to avoid input hints
  on some browsers
- Start rework of bilingual scanner messages
- Some code cleanup

------------------------------------
V2.0g     2013-11-19

- Implement $to_conf['ip_allow'] to restrict access for non-app requests
- Modified for use with Android client app
- Additional documentation & translations
- Code cleanup for welcome screen

------------------------------------
V2.0f     2013-11-08

- Check for duplicate barcodes on edit dancer record
- Fixed a bug on importing a dancer record with no level flags set
- Additional translations
- Partial restructuring of docs
- Additional documentation
- Changed file format to DOS (LF->CR/LF) to avoid problems of 
  users editing the file on Windows
- Error correction for selection of "omit own" for regmode "special"

------------------------------------
V2.0e     2013-10-25

- If a ../config.php exists, this will take precedence over
  ./config.php; this makes it possible to keep a local config.php
  during updates
- Add header
- Hide short name when autonames option is switched on
- Time limited license
- New config.php.template as real template, remove old config.php
- New help index and general operation chapters 
- Use HTML entities for Umlauts in doc
- Link to manual index

------------------------------------
V2.0d     2013-09-18

- Fix top margin for page layout b for barcode printing
- Try to reduce tendency to set dancers into same square number as
  before
- Bug fix for import of short barcodes
- Bug fix for setting of dancer program level on excel import
- Bug fix set level for new dancers
- Bug fix: Level Special barcode scan did not set level in database

------------------------------------
V2.0c     2013-08-10

- Fix error "cannot load font metric file"
- More translations en->de added
- Add consistency check function for admin
- Fix font for show raw database config
- Take account of PHP word size: different bytecode per version
- Compile only for highest bytecode version
- Add uname to binconf and ignore config on change in uname
- New sysinfo.php utility for debugging purposes

------------------------------------
V2.0b     2013-07-21

- Default sd logo for welcome screen
- Started to implement multi language support
- Moved all images to new img dir

------------------------------------
V2.0a     2013-07-19

- Implement alternating dance programs
- Switch from HTML barcodes to PDF
- Prefer Code128-C over Code128-A/B
- Print all barcodes into a single (posibly multi page) document
- Bigger font for names
- Sorting corrected (also use last name)
- Add printing for special barcodes
- Some corrections in help texts
- Better documentation of barcode printing selection
- Doc of paper type
- Doc of red out
- Changed format of table tip to include dance level
- Implement alternating dance program
- Show dancer progs when dancer registers
- Implement INFO special barcode
- Implement PrXX special barcode
- Bugfix punishmode
- Prefer low prog dancers on low prog tips of alternating dances
- On alternating dances, for the high prog tips use mainly high tip dances
  to calculate equal sitouts
- Add regmode dancer marking in alternate mode (higher level
  dancer get a >> in front of their name
- Implement "red out" option
- Add statistics for alternating dance programs in tri_lese_tips 
  and InOut stat display
- Code cleanup
- remove now unused old functions tri_optimize_sitouts, TesteTaenzerTausch,
  HatSeltenerGetanzt

------------------------------------
V2.0      2013-07-07

- Introduce flags for B, MS, PL

------------------------------------
V1.7a     2013-07-06

- Change default page change time for non-ajax-scan from 60000 to 6000 sec
- Registry access for 64bit windows

------------------------------------

Back to Index