New feature #7810 Implement max/min date for date question

DEV: implemented min/max dates for datepicker in Date question
DEV: supported formats/dates:
DEV: - fixed dates in format YYYY-MM-DD (e.g. 2013-08-24)
DEV: - {qcode}: reference to another datefield
DEV: -      supported on same (dynamic, JS) and on previous pages (PHP)
DEV: -      honors survey date format and date formats in
DEV: -      advanced attributes of a date question (mixing date
DEV: -      formats in one survey should be no problem)
DEV: - {expressions}: only on following page
DEV: -      Things like date from previous answer+3 days as min
DEV: -      for another question is possible using eg.
DEV: -      {date("Y-m-d",strtotime(departure)+3*60*60*24)}
DEV: -      on a following page
DEV:
DEV: I recycled the dropdown_dates_year_min/max fields
DEV: to avoid cluttering up the user interface. The fields still
DEV: take fixed years in format YYYY for backward compatibility,
DEV: so old survey will work as they used to.
DEV:
DEV: This also fixes #7981 (bug in jquery UI) because we do not use
DEV: the yearrange function of the datepicker anymore,
DEV: which is affected by this bug.
DEV:
DEV: Tested in FF and Chrome
renamed dropdown_dates_year_min/max

need to make DB-conversion and add to import_helper
Update DB for name change of attrib fields
Make sure min/max year from old lss-files are imported
fix for year=0 in dropdown-boxes

When dropdown boxes are used and a min/max value refers to an empty
variable
or zero value, default range is now used
Fixes issue #8065: Answer code conversion to '0'

DEV: when exporting to CSV/EXCEL etc. and conversion
DEV: of Y or N to '0' was chosen, values were wrongly
DEV: exported as 'missing values' (empty)
DEV:
DEV: nasty php typing problem....probably same problem
DEV: with issue #8039
small change to also honor 'false'

thanks to Shnoulle
Fixed issue #8039: Problems with subquestion code '0'

DEV: Both described issues were separate incidences of
DEV: the same thing: php empty()/($var) treat the '0'
DEV: as not set or empty.
DEV: isset() on the other hand also returns "" as true.
DEV: I am afraid this problem may be present more often in
DEV: the code. Maybe implement a custom function
DEV: is_set() which also returns FALSE for "" but TRUE for '0'
Fixed issue : Ranking question are not side by side in IE7
Dev: IE7 round up
Dev: I don't see this first time ?
Dev: trying overflow hack too : no way
Fixed issue : caption is visible with IE7
Dev: summary are removed from HTML5, but we're not in HTML5 actually
Dev: For HTML5, seems better to use ARIA-described and ARIA-labeleledby for input
Dev: BUT label inside td can be used to for little screen browser : show whole block
Dev: see Opera mini screenshot at bug #6698
Fixed support for prefilling using questioncodes.
Dev In case of duplicate question codes (which should not be used anyway),
the prefilling will fill each question.
Fixed #8093: Error on R-export (syntax) while running as a plugin
Fixed #7979: Question Group order not saved
Dev Changed cancel button in plugin settings to be a link instead.
Dev Added support for links to SettingsWdiget.
Merge branch '2.05' of github.com:LimeSurvey/LimeSurvey into 2.05
Fixed #7885: Multiple issues with excel/tsv export and subsequent import
dev: Fixed for 2.05 only
dev: it would be best to solve backward compatibility in the model so we don't have to do it for all import/exports separately, check my comment in the survey.php to keep track of changes
Merge branch '2.05' of https://github.com/LimeSurvey/LimeSurvey.git into 2.05
Fixed #8093: Error on R-export (syntax) while running as a plugin
Git Ignore local settings files
dev: All routes ending in _json are excluded from csrf protection now