This file is a laundry list of changes that have been made to the database,
localization, and preference files as development proceeds. The reasoning is
that the installer/upgrader is a low priority feature that is best implemented
once Netjuke has reached a feature freeze for the version. This document will
NOT be released -- instead the normal CHANGELOG will be updated. Use this list
as a reference of changes you need to make (especially the database changes) or
you may notice breakage in your working copy.


            *****    NETJUKE CHANGES FROM 1.0b17 TO 1.0b18    *****

OUTSTANDING CHANGES :

Need to check for safe mode and display a warning/disable backtick calls
Compilation field to group compilations accurately
Attempt to autodetect language based on charset
Better process control for batch d/l
Add other languages to get_lang_in_639
View options for columns in search.php
Ratings system
Convert spaces to underscores option, force lowercase/uppercase for batch organize
Add 'Explore' icon into search.php depending on column
Integrate winamp/xmms control plugins as jukebox option
XML output of data from tr-info and batch tools
XML import in add new track
Ensure trash dir is defined on new install
Add 'shn' as option. No tag information, but at least shorten users could catalog manually
MusicBrainz support
Add year to batch edit

DATABASE CHANGES :

ALTER TABLE `netjuke_userprefs` ADD `icon_set` VARCHAR( 100 ) DEFAULT 'default' NOT NULL ;
ALTER TABLE `netjuke_sessions` ADD `icon_set` VARCHAR(100) DEFAULT 'default' NOT NULL;
ALTER TABLE `netjuke_tracks` ADD `mtime` DATETIME NOT NULL ;
ALTER TABLE `netjuke_userprefs` ADD `language` VARCHAR( 2 ) DEFAULT 'en' NOT NULL ;
ALTER TABLE `netjuke_sessions` ADD `language` VARCHAR(2) DEFAULT 'en' NOT NULL;
ALTER TABLE `netjuke_genres` ADD `parent_id` INT(11) default 0;
ALTER TABLE `netjuke_albums` ADD `comments` TEXT;
ALTER TABLE `netjuke_genres` ADD `comments` TEXT;
ALTER TABLE `netjuke_artists` ADD `comments` TEXT;
ALTER TABLE `netjuke_tracks` ADD `license` TEXT;
ALTER TABLE `netjuke_userprefs` ADD `explore` VARCHAR( 1 ) DEFAULT 't' NOT NULL ;
ALTER TABLE `netjuke_sessions` ADD `explore` VARCHAR( 1 ) DEFAULT 't' NOT NULL ;
ALTER TABLE `netjuke_tracks` ADD `rating` SMALLINT(6) DEFAULT '0' NOT NULL;
ALTER TABLE `netjuke_genres` ADD `license` TEXT;
ALTER TABLE `netjuke_artists` ADD `license` TEXT;
ALTER TABLE `netjuke_albums` ADD `license` TEXT;
ALTER TABLE `netjuke_tracks` ADD `exclude` CHAR(1) DEFAULT 'f' NOT NULL;
ALTER TABLE `netjuke_albums` ADD `exclude` CHAR(1) DEFAULT 'f' NOT NULL;
ALTER TABLE `netjuke_artists` ADD `exclude` CHAR(1) DEFAULT 'f' NOT NULL;
ALTER TABLE `netjuke_genres` ADD `exclude` CHAR(1) DEFAULT 'f' NOT NULL;
ALTER TABLE `netjuke_userprefs` ADD `theme` VARCHAR( 100 ) DEFAULT 'Artekopia' NOT NULL ;
ALTER TABLE `netjuke_sessions` ADD `theme` VARCHAR(100) DEFAULT 'Artekopia' NOT NULL;

CREATE TABLE `netjuke_themeprefs` (
`us_email` VARCHAR( 75 ) NOT NULL ,
`theme` VARCHAR( 100 ) NOT NULL ,
`setting` VARCHAR( 100 ) NOT NULL ,
`value` VARCHAR( 200 ) NOT NULL ,
PRIMARY KEY ( `us_email` , `theme` , `setting` ));
ALTER TABLE `netjuke_userprefs` DROP `bgcolor` ,
DROP `text` , DROP `link` , DROP `alink` , DROP `vlink` ,
DROP `td_border` , DROP `td_header` , DROP `td_header_fc` ,
DROP `td_content` , DROP `font_face` , DROP `font_size` ;
ALTER TABLE `netjuke_sessions` DROP `bgcolor` ,
DROP `text` , DROP `link` , DROP `alink` , DROP `vlink` ,
DROP `td_border` , DROP `td_header` , DROP `td_header_fc`,
DROP `td_content` , DROP `font_face` ,DROP `font_size` ;
ALTER TABLE `netjuke_sessions` CHANGE `theme` `theme` VARCHAR( 100 ) DEFAULT 'artekopia' NOT NULL ;
UPDATE netjuke_sessions SET theme = 'artekopia';
UPDATE netjuke_userprefs SET theme = 'artekopia';


LOCALIZATION CHANGES :

PREFS_FORMS_ICONS in prefs.php
ADMPREFS_FORMS_ICONS in appearance-prefs.php
ADMPREF_FORMS_LANGPACK_CAPTION_7 added to inc-admin_prefs-edit.php
COMMON_BEDIT_TB_BATCHREFRESH_HELP added to inc-lib_inc-common.php
COMMON_BEDIT_TB_BATCHREFRESH added to inc-lib_inc-common.php
COMMON_BEDIT_TB_BATCHORGANIZE_HELP added to inc-lib_inc-common.php
COMMON_BEDIT_TB_BATCHORGANIZE added to inc-lib_inc-common.php
TRBEDIT_REFRESH_DONE added to inc-admin_tr-batch-edit.php
SEARCH_ADV_FORM_YEAR added to inc-search-adv.php
SEARCH_ADV_FORM_FA added to inc-search-adv.php
TRINFO_FORM_YE added to inc-tr-info.php
TRINFO_FORM_DA added to inc-tr-info.php
TRINFO_FORM_LM added to inc-tr-info.php
TRINFO_FORM_LI added to inc-tr-info.php
TRINFO_FORM_CM added to inc-tr-info.php
TRINFO_FORM_LY added to inc-tr-info.php
TXTVIEW_HEADER_LICENSE added to inc-text-view.php
TREDIT_FORM_LI added to inc-admin_tr-edit.php
TXTEDIT_HEADER_LICENSE added to inc-admin_text-edit.php
TREDIT_FORM_YE added to inc-admin_tr-edit.php
SEARCH_ADV_FORM_LI added to inc-search-adv.php
BRWS_PLAY_EDITGE_HELP added to inc-index.php
DTFINDER_PLAY_HELP added to inc-admin_dup_finder.php
DTFINDER_PLAY_AR_HELP added to inc-admin_dup_finder.php
DTFINDER_PLAY_AL_HELP added to inc-admin_dup_finder.php
DTFINDER_PLAY_GE_HELP added to inc-admin_dup_finder.php
DTFINDER_INFO_HELP added to inc-admin_dup_finder.php
DTFINDER_DLOAD_HELP added to inc-admin_dup_finder.php
SRCH_AR_FILTER_HELP added to inc-search.php
SRCH_AL_FILTER_HELP added to inc-search.php
SRCH_GE_FILTER_HELP added to inc-search.php
RNDM_FORM_BTN_SEARCH removed(!) from inc-random.php
RNDM_FORM_BTN_SAVE added to inc-random.php
RNDM_FORM_BTN_PLAY added to inc-random.php
TRBEDIT_FORM_TR_LIC added to inc-admin_tr-batch-edit.php
BRWS_EXPLORE_HEADER added to inc-index.php
BRWS_BROWSE_HEADER added to inc-index.php
BRWS_GE_HELP added to inc-explore.php
BRWS_AL_HELP added to inc-explore.php
BRWS_AR_HELP added to inc-explore.php
EXPLORE_LISTARTISTS_HEADER added to inc-explore.php
EXPLORE_LISTALBUMS_HEADER added to inc-explore.php
EXPLORE_GENRE_HELP added to inc-explore.php
TRBREPORT_HEADER added to inc-admin_tr-batch-edit.php
EXPLORE_PLAY_GE_HELP added to inc-explore.php
EXPLORE_RANDPLAY_GE_HELP added to inc-explore.php
EXPLORE_EDIT_GE_HELP added to inc-explore.php
EXPLORE_PLAY_AL_HELP added to inc-explore.php
EXPLORE_RANDPLAY_AL_HELP added to inc-explore.php
EXPLORE_EDIT_AL_HELP added to inc-explore.php
EXPLORE_PLAY_AR_HELP added to inc-explore.php
EXPLORE_RANDPLAY_AR_HELP added to inc-explore.php
EXPLORE_EDIT_AR_HELP added to inc-explore.php
MDEDIT_FORM_NO_GENRE added to inc-admin_md-edit.php
ADMPREF_FORMS_RADIOTYPE_CAPTION_4 added to inc-admin_prefs-edit.php
BRWS_PLAY_ALL_HELP added to inc-index.php
BRWS_RANDPLAY_ALL_HELP added to inc-index.php
BRWS_PLAY_ALL_AR_HELP added to inc-index.php
BRWS_RANDPLAY_ALL_AR_HELP added to inc-index.php
BRWS_PLAY_ALL_AL_HELP added to inc-index.php
BRWS_RANDPLAY_ALL_AL_HELP added to inc-index.php
SRCH_EDIT_HELP added to inc-search.php
SRCH_EDIT_AR_HELP added to inc-search.php
SRCH_EDIT_AL_HELP added to inc-search.php
SRCH_EDIT_GE_HELP added to inc-search.php
SRCH_QS_YE added to inc-search.php
SRCH_QS_CO added to inc-search.php
SRCH_QS_LI added to inc-search.php
SRCH_QS_LY added to inc-search.php
ADMPREFS_FORMS_ICONS added to inc-admin_prefs-edit.php
ADMPREF_FORMS_JUKEBOXPASS_HELP added to inc-admin_prefs-edit.php
ADMPREF_FORMS_JUKEBOXURL_HELP added to inc-admin_prefs-edit.php
ALPHA_EDIT_GR_HELP added to inc-alphabet.php
MDEDIT_FORM_BTN_DEL added to inc-admin_md-edit.php
MDEDIT_FORM_BTN_REF added to inc-admin_md-edit.php
MDEDIT_FORM_BTN_ORG added to inc-admin_md-edit.php
MDEDIT_DELETED_MSG added to inc-admin_md-edit.php
BRWS_EDIT_AL_HELP added to inc-index.php
BRWS_EDIT_AR_HELP added to inc-index.php
ADMPREF_FORMS_CUSTOM added to inc-admin_prefs-edit.php
ADMPREF_FORMS_THEMES added to inc-admin_prefs-edit.php
TFBCKP_GENRE_START added to inc-admin_db-maintain.php
TFBCKP_GENRE_HELP added to inc-admin_db-maintain.php
TFBCKP_GENRE_DONE added to inc-admin_db-maintain.php
TFBCKP_GENRE_DESC added to inc-admin_db-maintain.php
TFBCKP_GENRE_READ added to inc-admin_db-maintain.php
ADMORG_NO_FORMAT added to inc-admin_organize.php
COMMON_XML added to inc-lib_inc-common.php
COMMON_XML_HELP added to inc-lib_inc-common.php
ADMPREF_FORMS_ENABLEXML added to inc-admin_prefs-edit.php
ADMPREF_FORMS_ENABLEXML_HELP_1 added to inc-admin_prefs-edit.php
ADMPREF_FORMS_ENABLEXML_HELP_2 added to inc-admin_prefs-edit.php
TREDIT_FORM_EXCLUDE added to inc-admin_tr-edit.php
TRBEDIT_FORM_EXCLUDE added to inc-admin_tr-batch-edit.php

inc-prefs.php: removed PREFS_CHECKFORM_*
inc-prefs.php: added PREFS_CHECKCOLOR
inc-prefs.php: removed color/font block
inc-prefs.php: removed PREFS_FORMS_CUSTOM
inc-prefs.php: added PREFS_FORMS_GENERAL, PREFS_FORMS_DETAILS, PREFS_FORMS_ADDITIONAL
inc-admin_prefs-edit.php: removed color/font block
inc-admin_prefs-edit.php: renamed ADMPREFS_FORMS_ICONS to ADMPREF_FORMS_ICONS
inc-admin_prefs-edit.php: renamed ADMPREFS_FORMS_THEMES to ADMPREF_FORMS_THEME
inc-admin_prefs-edit.php: added ADMPREF_FORMS_GENERAL, ADMPREF_FORMS_DETAILS
inc-lib_inc-theme.php: completely new
inc-admin_prefs-edit.php: removed ADMPREF_CHECKFORM_BGCOLOR,ADMPREF_CHECKFORM_FONTFACE,
  ADMPREF_CHECKFORM_FONTSIZE, ADMPREF_CHECKFORM_TEXT, ADMPREF_CHECKFORM_LINK
  ADMPREF_CHECKFORM_ALINK, ADMPREF_CHECKFORM_VLINK, ADMPREF_CHECKFORM_BORDER
  ADMPREF_CHECKFORM_HEADER, ADMPREF_CHECKFORM_HEADERFC ADMPREF_CHECKFORM_CONTENT
inc-admin_prefs-edit.php: added ADMPREF_CHECKCOLOR


PREFERENCES FILE CHANGES :
DEFAULT_ICON_SET added to prefs (default of 'default')
JUKEBOX_URL added to prefs (default of '')
JUKEBOX_PASS added to prefs (default of '')
ENABLE_XML added to prefs (default of 'f')
DEFAULT_THEME added to prefs (default of 'custom')
DEFAULT_THEME changed: remove .php extension (default: artekopia)
all color and font settings removed from inc-prefs

If you install from scratch just add this define block to inc-prefs.php:
define(  'DEFAULT_THEME', 'artekopia');
define(  'DEFAULT_ICON_SET', 'default');
define(  'JUKEBOX_URL', '');
define(  'JUKEBOX_PASS', '');
define(  'ENABLE_XML', 'f');


NEW FILES :
admin/md-edit.php		            - Metadata editor for genre/artist/album info
explore.php                     - Explore navigator for hierarchical browsing
xml.php                         - XML endpoint for netjuke data
lib/inc-html.php                - Code that generates HTML
lib/inc-utility.php             - Misc utility code

lib/inc-theme.php                 - Theme base class
locale/lang/inc-lib_inc-theme.php - language file file for inc-theme.php


NOTES FOR INSTALLER:

Upgrade utility should scan files and add the mtime's to the database. This
should allow the db-maintain tool to begin working upon the first run.

GENERAL CHANGE DESCRIPTIONS :

- db-maintain now reliably detects tag changes using file mtime. Genres, artists, and albums are migrated properly.
- Appearance prefs and user prefs now offer icon sets
- There is a rapid switch toolbar in the admin prefs to ease navigation.
- Icons have been removed from the language packs
- Norwegian language pack has been added
- Netjuke will now set the error level based on the presence of a -dev flag. This should help users with more arcane PHP configs
- Search by year and date added
- Added != operator to search options
- Added year display in track info
- Added support for storing license information
- Search by license, edit license, view license
- View date added and time modified in track info
- ID3 writeback overhaul
- Added up/down arrows for playlist editing
- Implemented 'Adjust Sequence' utility ;)
- Added inc-legacy.php for legacy functions
- Migrated date/time function calls to adodb versions (handle larger dates)
- Added housekeeping code that will remove unshared, Random playlists more than a month old
- new 'colorful' iconset, more precise icon-size-definitions, no link-underlines anymore
- random playlists can now be saved or played directly
- explore view added
- Metadata editor added - capable of editing genres/artists/albums and supports creation of sub-genres
- Much better looking file location reporting
- Play all now supports sub-genres
- Icons integrated into explore view, help strings added
- Theme system implementation (in progress)
- Theme authoring document added to docs
- Playall function of play.php now supports multiple id's
- Added play all buttons to main genre browse, latest artists, latest albums
- Added ability to quick search by license, year, comments, and lyrics in search.php
- New exclude option to exclude tracks, artists, albums, or genres from random
- Metadata editor now writes changes back to files
- Editors are now allowed to edit text fields for tracks
- problem with arrow appearing on second to last track fixed
- ID3 writeback now writes album/artist/genre comments and images and the year frame
- Added XML integration features (RSS feeds, import/export)
- new subgenre generator in the DB maintain section
- Added themeing system and updated documentation. Checked in a handful of themes
- Upgraded to adodb 3.4
- Delete, refresh, organize buttons now work for groups (and on Windows!)
- Organize works reliably under Windows
- Organize now performs a sanity check on the organize string
- XML Icons added throughout interface
- Cleaned up and organized inc-common.php. Split into inc-utility, inc-html, and inc-common
- New play latest mode for play.php
- Index page now uses inc-html functions
- Theme system completely changed, removed all colors/fonts from session/inc-prefs
- Themes will now optionally invert icons in headers
- Added theme info alert to prefs
- Exclusions from random has been implemented (track and group levels)
- AAC and shn added to list of importable extensions
- Fixed various bugs