Download the latest version here: www.paderdesign.de ------------------------------------------------------------------ v1.2.83_077: guestbook\guestbook_mail.php: Applied wordwrap like in Bugfix v1.2.83_058 v1.2.83_076: contact-form\contact-form.php: Applied wordwrap like in Bugfix v1.2.83_058 v1.2.83_075: functions\standard.php: Added new function convertGigDates() (not in use yet) v1.2.83_074: guestbook\guestbook_delete.php: Applied new function blockIP() v1.2.83_073: functions\standard.php: Added new function blockIP() v1.2.83_072: Bug fix: calendar\showGigDetails.php: When a gig is disabled for front end, one still can make it visible in the showDetails() by guessing the GigID in the URL query => changed the brackets in the SQL query v1.2.83_071: Bug fix: calendar\showGigDetails.php: Added missing htmlspecialchars() to prevent SQLi v1.2.83_070: Bug fix: \gallery\gallery.php: The URL query for an album began with '?&' instead of '?' v1.2.83_069: gallery\gallery.php: If URL querie has a non existing album name, an error message gets thrown. v1.2.83_068: gallery\gallery.php: Changed use of $_REQUEST-vars into $_GET-vars v1.2.83_067: Bug fix: gallery\gallery.php: Added missing htmlspecialchars() to prevent SQLi v1.2.83_066: Bug fix: guestbook\guestbook_mail.php: Added missing htmlspecialchars() to prevent SQLi v1.2.83_065: Bug fix: contact-form\contact-form.php: Spam senders often place dozens of blank lines at the end of their message. ⇒ Applied a regex via pregmatch() to replace multiple blank lines with one blank line v1.2.83_064: Bug fix: Blocking spam with phrases instead of words failed ⇒ guestbook\functions.php.messageIsSpam(): Optimised the block "test for blocked words" v1.2.83_063: guestbook\functions.php.addGuestbookEntry(): Returns now either the $Code or -1 in case of failure v1.2.83_062: guestbook\guestbook_form_internal.php: Added at the top the foreach() to optimize all POST variables (like in contact_form) v1.2.83_061: guestbook\functions.php.sendMail(): Removed argument "Datum", but value gets generated via time() instead. v1.2.83_060: Bugfix: emails from guestbook showed "\r\n" instead of proper line breaks ⇒ guestbook\functions.php.addGuestbookEntry(): mysqli_real_escape_string() got applied also to message for database storage, and also forwarded to sendemail() ⇒ moved sendmail() from inside addGuestbookEntry() to guestbook\guestbook_form_internal.php v1.2.83_059: mail\mail.php: Applied wordwrap like in Bugfix v1.2.83_058 v1.2.83_058: Bugfix: Front End > Guestbook: Sending email fails when a single line is longer than ~10k characters ⇒ guestbook\functions.php.sendMail(): Applied wordwrap at 70 chars regarding to www.faqs.org/rfcs/rfc2822.html > 2.1.1. Line Length Limits v1.2.83_057: styles\gigkalender.css: Compiled with Sass v1.2.83_056: frontend\example_formate.css: Compiled with Sass v1.2.83_055: Front end > Calendar > List Date and Time do not break on mobile ⇒ gigkalender12\calendar\list.php Just one table cell for date and time ⇒ frontend\example_formate.css Removed "white-space: nowrap;" in ".GigKalender #List td" Removed "padding-right: 0.5em;" in ".GigKalender #List td" Added "display: inline-block;" for ".GigKalender .GigDate" and ".GigKalender .GigBeginning" v1.2.83_054: includes\frontend_language_selector.php Rewritten to detect browser language, should frontend language been set to 'auto' v1.2.83_053: admin\includes\setup\SetupFrontendLanguage.php Added "auto" as selectable language (to use browser language) ⇒ entire file rewritten v1.2.83_052: Contact form: Added two missing language vars $L_Form_Completion_Time and $L_Block_IP_Address v1.2.83_051: Updated embedded CKEditor to version 4.21.0 v1.2.83_050: install\head.php Added meta tag to make page responsive v1.2.83_049: includes\header.php Added meta tag to make page responsive v1.2.83_048: functions\standard.php > getShortenedString() Deprecated: Function utf8_decode() is deprecated in \functions\standard.php on line 30 ⇒ changed to mb_strlen(), since the installation ensures support for the mb module again v1.2.83_047: functions\standard.php > getShortenedString2() Deprecated: Function utf8_decode() is deprecated in \functions\standard.php on line 1 ⇒ changed to mb_strlen(), since the installation ensures support for the mb module again v1.2.83_046: example_*.php (all example files) Added meta tag to make page responsive v1.2.83_045: index.php: Changed the entire session cookie creation v1.2.83_044: Bugfix: \frontend\example_formate.css: W3C CSS Validator: Property "x-border" doesn't exist. ⇒ removed v1.2.83_043: Bugfix: \frontend\example_formate.css: W3C CSS Validator: Line 253: Same color for "background-color" and "border-top-color" ⇒ set both to transparent, like in styles\gigkalender.css v1.2.83_042: Bugfix: includes/error_reporting.php: ⇒ MySQL Error Mode set to MYSQLI_REPORT_OFF for distribution v1.2.83_041: installation.txt: Updated requirements regarding PHP version 8.0 v1.2.83_040: Bugfix: Back-end: calendar\backend_selectGig.php: It shows a SQL statement v1.2.83_039: installation.txt: Updated requirements regarding PHP module 'mbstring' v1.2.83_038: install\index2.php: The installation also checks, if 'mbstring' module in PHP is enabled v1.2.83_037: Bugfix: When gallery is opened there is this message: ⇒ Deprecated: Implicit conversion from float 136.51612903225808 to int loses precision in \gallery\functions.php on line 53 ⇒ devision $newwidth/ratio caused a float, which does not work in functions like imagecreatetruecolor() ⇒ added a round(). v1.2.83_036: Bugfix: In some search engine results, like Ecosia, there was a PHP warning shown: ⇒ "Warning: Undefined array key "HTTP_ACCEPT_LANGUAGE" in /includes/backend_language_selector.php on line 7" ⇒ Apparently search engines do not have a language set, so here an empty language string is given ⇒ includes\backend_language_selector.php: Changed it with an isset() v1.2.83_035: Bugfix: Front-End: Gallery: ERROR about missing 'original' folder was given ⇒ gallery\gallery.php: $OriginalsPath was wrong defined v1.2.83_034: Bugfix: Front-End: Calendar: Several warnings in detail view, shortend strings were not required, the gig notes were shown twice and an 'x' was printed out twice ⇒ calendar\includes\frontend\subString.php: It was a WIP, but fixed now. v1.2.83_033: Bugfix: Fatal error: Uncaught mysqli_sql_exception: Unknown column 'SetupContactURL' in 'field list' in functions\standard.php:12 ⇒ includes\error_reporting.php: MySQLi Error Mode is permanently set to 'MYSQLI_REPORT_ERROR' ⇒ GigKalender 1.4 must have it permanently set to 'MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT' v1.2.83_032: \guestbook\includes\showAllGuestbookEntries\subString.php ⇒ Applied new function getShortenedString2() v1.2.83_031: \filesharing\filesharing.php: the mb_strtolower() has to vanish, as GigKalender will not relay on mbstring functions any longer ⇒ Removed counting of uppercase characters in file name ⇒ Removed mb_strtolower(), so file names keep their uppercase chararcters v1.2.83_030: \calendar\includes\frontend\subString.php ⇒ Using new function getShortenedString2() v1.2.83_029: \calendar\includes\frontend\GigNotes.php ⇒ Applied new function getShortenedString2() v1.2.83_028: Bugfix: Deprecated: strip_tags(): Passing null to parameter #1 ($string) of type string is deprecated in \functions\standard.php on line 11 ⇒ \functions\standard.php: getShortenedString2() ⇒ Added an IF statement v1.2.83_027: \guestbook\includes\showAllGuestbookEntries\subString.php ⇒ Applied new function getShortenedString2() v1.2.83_026: \functions\standard.php: - to get rid of mb_strlen() and mb_substr ⇒ Added new function getShortenedString2() v1.2.83_025: includes\error_reporting.php: For backward compatibility with PHP versions < 8.1, MYSQLI error mode will be turned off here. v1.2.83_024: Bugfix: \install\deinstall.php - Fatal error: Uncaught mysqli_sql_exception: Unknown table 'gigkalender12_gigs' ... thrown in \install\deinstall.php on line 30 ⇒ Rewritten a fair part of \install\deinstall.php by using two new functions v1.2.83_023: Bugfix: install\deinstall.php: If you run deinstallation although GigKalender isn't installed, a Fatal Error gets thrown. - Fatal error: Uncaught mysqli_sql_exception: Table 'gigkalender12_setup' doesn't exist ... thrown in \functions\standard.php on line 11 - included was still the old \includes\header.php ⇒ including the new \install\head.php v1.2.83_022: Bugfix: On deinstall: Fatal error: Uncaught mysqli_sql_exception: Unknown table 'gigkalender12_menu' in install\deinstall.php on line 59 ⇒ \install\deinstall.php: Added an IF EXISTS to SQL statement v1.2.83_021: Bugfix: /frontend/example_gallery.php ⇒ If subfolder 'original' doesn't exist, a warning gets thrown: ⇒ Warning: Undefined array key -1 in \gallery\gallery.php on line 67 ⇒ \gallery\gallery.php: added an IF clause to filter for missing folders v1.2.83_020: install/index2.php: Modified to make use of install/head.php v1.2.83_019: install/index.php: Modified to make use of install/head.php v1.2.83_018: Installation failed under new XAMPP with PHP 8.1 and MariaDB ⇒ This happened, because installation and backend both included the same includes/head.php ⇒ The includes/head.php requested a var from database table, which did not exist before it got installed ⇒ Apparently the new MariaDB v10.4.24 is not failing silently anymore ⇒ Added new file install/head.php v1.2.83_017: Bugfix: frontend/example_gallery.php?&album=demo&image=1 ⇒ Deprecated: nl2br(): Passing null to parameter #1 ($string) of type string is deprecated in \gallery\gallery.php on line 161 ⇒ https://github.com/justinrainbow/json-schema/pull/666 ⇒ added an "if ($Text!==NULL)" v1.2.83_016: Bugfix: /frontend/example_calendar_past.php: Fatal error: Uncaught mysqli_sql_exception: Unknown column 'SetupFrontendCalendarGigDetailsURL' in 'field list' ⇒ functions/standard.php.getFrontendURL($Var): added an IF to perform getSetup() to not perform it on vars defined in gigkalender.ini.php v1.2.83_015: Bugfix: Password with a '<' could not be stored into database ⇒ functions\standard.php.editCurrentUser(): Removed the strip_tags() functions v1.2.83_014: Bugfix: Password with a backslash could not be stored into database ⇒ user\editCurrentUser.php: Using Post variable $_POST['UserNewPassword'] directly instead of $UserNewPassword v1.2.83_013: includes\login.php: Enabled 'autofocus' on input field 'username' v1.2.83_012: Bugfix: functions\import\12\user.php: Importing users with a backslash in password failed ⇒ Defined '"' as escape parameter v1.2.83_011: .htaccess: Enabled COMPRESSING FILES v1.2.83_010: .htaccess: Enabled BROWSER CACHING v1.2.83_009: Renamed function logoutInactiveUser() into logoutInactiveUsers() v1.2.83_008: frontend\example_contact-form.php: Replaced the German sentence with a shorter English one ("Please, drop me a message") v1.2.83_007: frontend\example_contact-form.php: Removed unused variables v1.2.83_006: contact-form/contact-form: $L_Result_NOK got replaced by $L_ERROR_Email_could_not_be_sent v1.2.83_005: contact-form/contact-form: $L_Result_OK got replaced by $L_142 v1.2.83_004: contact-form/contact-form: mail() is now using the new language var $L_New_message_via_contact_form as subject v1.2.83_003: contact-form/contact-form: mail() is now using the guestbooks email address for administration (setup var 'SetupGuestbookMail') v1.2.83_002: Bugfix: Former update files did not rename "images/filesharing_notes.gif" to "images/filesharing_sheet-music.gif" ⇒ the full version has been correct v1.2.83_001: Updated embedded CKEditor to version 4.16.0 v1.2.83: New feature: Admin: Export: Exported files are now saved in subfolders named by current date and time v1.2.82_008: Gallery: A demo album is now permanently included v1.2.82_007: Bugfix: Front-end: Calendar: Notes in Detailview did show text non-formatted (all formats removed) ⇒ removed "$GigNotes = strip_tags($GigNotes);" ⇒ removed "$GigNotes = htmlspecialchars($GigNotes, ENT_QUOTES);" v1.2.82_006: Bugfix: Front-end can not load calendars: ⇒ "Warning: include_once(calendar/calendar_wrapper.php): Failed to open stream: No such file or directory in calendar\calendar.php on line 14 ⇒ moved "calendar/_keep/calendar_wrapper.php" back into "calendar\" v1.2.82_005: frontend\example_formate.css: changed to "display: inline-block;" in .GigKalender .pagination v1.2.82_004: frontend\example_formate.css: added "margin: 0;" to .GigKalender .NewsEntryHeadline v1.2.82_003: frontend\example_formate.css: removed "margin-bottom" in .GigKalender .NewsNavigation v1.2.82_002: frontend\example_formate.css: added "margin: 0;" to .GigKalender .GuestbookEntryHeadline v1.2.82_001: frontend\example_formate.css: removed "margin-bottom" in .GigKalender .GuestbookNavigation v1.2.82: New feature: The listed albums in the gallery got a pagination v1.2.81_005: admin\import.php.81: Warning: A non-numeric value encountered... ⇒ applied using function formatFileSize() v1.2.81_004: admin\export.php.40: Warning: A non-numeric value encountered... ⇒ applied using function formatFileSize() v1.2.81_003: removed all get_magic_quotes_gpc() (deprecated since PHP 7.4) v1.2.81_002: contact-form\contact-form.php: Optimized layout of emails sent after filing the form v1.2.81_001: contact-form\contact-form.php: Added missing honey-pot as spam protection, a hidden URL field. v1.2.81: Back end: Calendar: Added a new button to copy an existing gig to a new one v1.2.80_193: contact-form\contact-form.php: Implemented an Anti Spam Timestamp, which can identify spam by calculating the time spent to fill the form v1.2.80_192: guestbook\guestbook_form_internal.php: Implemented an Anti Spam Timestamp, which can identify spam by calculating the time spent to fill the form v1.2.80_191: gallery\gallery.php.142: Added a CSS identifier "Image", id="Image" v1.2.80_190: gallery\gallery.php.144: Removed the unnecessary
-Tag v1.2.80_189: frontend\example_formate.css: Removed "x-width: 100%;" in ".GigKalender .NewsEntryHeadline" v1.2.80_188: frontend\example_formate.css: Removed "x-width: 100%;" in ".GigKalender .GuestbookEntryHeadline" v1.2.80_187: gallery\templates\gallery_entry.php.28: The string 'Images' got replaced by a language variable $L_Images v1.2.80_186: frontend\example_formate.css: ".GigKalender .GuestbookEntryComment": ⇒ removed "font-style: italic;" v1.2.80_185: frontend\example_formate.css: ".GigKalender .NewsNavigation": ⇒ removed "font-size: 0.8em;" v1.2.80_184: frontend\example_formate.css: ".GigKalender .GuestbookNavigation": ⇒ removed "font-size: 0.8em;" v1.2.80_183: frontend\example_formate.css: ".GigKalender .NewsEntryDate": ⇒ removed "font-size: 0.8em;" v1.2.80_182: frontend\example_formate.css: ".GigKalender .GuestbookEntryDate": ⇒ removed "font-size: 0.8em;" v1.2.80_181: frontend\example_formate.css: ".GigKalender .GuestbookEntryHeadline": ⇒ removed "padding-top: 2px;" v1.2.80_180: frontend\example_formate.css: ".GigKalender .NewsEntryHeadline": ⇒ removed "padding-top: 2px;" v1.2.80_179: frontend\example_formate.css: ".GigKalender .NewsEntryHeadline": ⇒ removed "font-size: 1em;" v1.2.80_178: frontend\example_formate.css: ".GigKalender .GuestbookEntryComment": ⇒ removed "font-size: 0.8em;" v1.2.80_177: frontend\example_formate.css: ".GigKalender .GuestbookEntryText": ⇒ removed "font-size: 0.9em;" v1.2.80_176: frontend\example_formate.css: ".GigKalender .NewsEntryText": ⇒ removed "font-size: 0.9em;" v1.2.80_175: Bugfix: Front-end: News: An image in a news entry does not spawn the container, so the image overlaps the next entry. ⇒ frontend\example_formate.css: Added "overflow:auto;" to ".GigKalender .NewsEntryText" v1.2.80_174: update.sql.php: script gives out a hint now on renaming attempt, the target file or folder name already exists. v1.2.80_173: Bugfix: Back-end threw "Warning: include(includes/setup/SetupRefreshTime.php)" ⇒ In a previous version "SetupRefreshtime.php" got renamed into "SetupRefreshTime.php" ⇒ the correspondening update file did not consider that v1.2.80_172: Bugfix: Front-end: Accessing Guestbook when not logged in as Admin threw "Notice: Trying to access array offset on value of type null in /functions/standard.php on line 1126 ⇒ its a new restriction of PHP 7.4 ⇒ fixed in functions\standard.php.IsUserAdmin() v1.2.80_171: Bugfix: Front-end: When opening a direct link to gig details, the Back-button does not work ⇒ now it leads to 'calendar'. But for past gigs, it does not link to 'calendar_past' (archived gigs). This will get fixed in v1.4, since it requires changes to gigkalender.ini.php v1.2.80_170: Bugfix: Front-end: A gig scheduled for present day is NOT listed in 'calendar' nor in 'calendar_past' ⇒ calendar/calendar_sql.php.19: had to be "GigDate>='.$Timestamp" v1.2.80_169: Bugfix: admin\setup.php:18: Including "SetupRefreshtime.php" had to be "SetupRefreshTime.php" v1.2.80_168: contact-form\contact-form.php: Changed imploding to use "\r\n" v1.2.80_167: contact-form\contact-form.php: Added mime-version to header v1.2.80_166: contact-form\contact-form.php: Added user-agent to header v1.2.80_165: Bugfix: Contact Form: Email got not send with umlauts in name ⇒ contact-form\contact-form.php: converting name string into 64bit utf-8 v1.2.80_164: Bugfix: guestbook\guestbook_mail.php.37: Wrong data inserted into fields of messageIsSpam() v1.2.80_163: Guestbook-Form: 'http' in Name field is detected as spam v1.2.80_162: Guestbook-Form: blocked words in Name field are detected as spam v1.2.80_161: Contact-Form: 'http' in Name field is detected as spam v1.2.80_160: Contact-Form: blocked words in Name field are detected as spam now v1.2.80_159: Bugfix: contact-form\contact-form.php: added missing asterixes (*) for required form fields v1.2.80_158: Bugfix: contact-form\contact-form.php: added missing charset for form ⇒ accept-charset="UTF-8" v1.2.80_157: Bugfix: contact-form\contact-form.php.18: form failed handling umlauts ⇒ removed "htmlentities($$key)" v1.2.80_156: Bugfix: contact-form\contact-form.php: replaced several language variables with those in language files v1.2.80_155: Bugfix: guestbook\guestbook_form_internal.php.150: check on 'code' is not required anylonger ⇒ removed v1.2.80_154: Bugfix: guestbook\guestbook_form_internal.php.149: Applied variable $L_ERROR_Message_contains_invalide_characters v1.2.80_153: frontend\example_formate.css: changed width of input fields and textareas v1.2.80_152: frontend\example_formate.css: textarea can be resized vertical only v1.2.80_151: Bugfix: frontend\example_formate.css: input field and textarea had different width v1.2.80_150: Bugfix: contact-form\contact-form.php: added missing spam test for the message v1.2.80_149: Bugfix: Some emails from contact form were lacking the url to block spam, except the IP query ⇒ contact-form\contact-form.php:52: replaced $_SERVER["HTTP_REFERER"] with a call of new function getCurrentURL() v1.2.80_148: contact-form\contact-form.php: fixed unclosed div container after sending form v1.2.80_147: contact-form\contact-form.php: Added the generation of $Path for including files v1.2.80_146: Bugfix: styles\gigkalender.css: Removed some disabled declarations and fixed comments v1.2.80_145: Bugfix: Back End: Calendar: List: If you enabled "Status" in the attributes, there had been "Status" twice in the print preview v1.2.80_144: Bugfix: Front End > Calendar > Table View: table headers can not be enabled v1.2.80_143: Bugfix: Front End: Calendar: List-View: design got distorted by overlong lines ⇒ now breaking the lines to behind the date and beginning time v1.2.80_142: Bugfix: gigkalender.ini.php: avoids double-slashes in URLs because of a final slash in the $GigKalenderPath v1.2.80_141: contact-form/gigKalender_kontaktForm_v06.php: File deleted v1.2.80_140: contact-form/gigKalender_kontaktForm_v06.php: File deleted v1.2.80_139: contact-form/gigKalender_kontaktForm_v06.php: File deleted v1.2.80_138: install\iniSetup.php: on default, the $SetupNewsChannelURL is empty now, so internal links work correct after installation, but can be changed if necessary v1.2.80_137: frontend/example_guestbook_form: missing HTTP_REFERER when page is being opened directly v1.2.80_136: news\news.php: reusing generated Pagination at top and bottom v1.2.80_135: news\functions.php.getNewsFrontendNavigation(): function renamed into getNewsFrontendPagination() v1.2.80_134: Bugfix: news\backend_showAllNews.php:29: Wrong session variable v1.2.80_133: Bugfix: guestbook\backend_showAllGuestbookEntries.php:36: Wrong session variable v1.2.80_132: guestbook\guestbook_show.php: reusing generated Pagination at top and bottom v1.2.80_131: guestbook\functions.php.getGuestbookFrontendPagination(): removed the $Locator to differentiate between Top and Bottom pagination v1.2.80_130: guestbook\functions.php.getGuestbookFrontendPagination(): removed JavaScript on form v1.2.80_129: guestbook\functions.php.getGuestbookFrontendNavigation(): renamed into getGuestbookFrontendPagination() v1.2.80_128: Bugfix: Back End: Calendar: List: set to short pagination > pagination is missing the query in the last button v1.2.80_127: Bugfix: Front End: GB and News pagination: When less than 9 pages listed, first button contains a query in its URL v1.2.80_126: installation.txt: Updated v1.2.80_125: functions\standard.php.transformPassword(): Function removed (not in use) v1.2.80_124: includes/editor: Folder removed v1.2.80_123: Updated embedded CKEditor to version 4.11.4 v1.2.80_122: Cleaned up code in calendar\includes\showAllGigs\*.* v1.2.80_121: Back End > Calendar> List: loading faster now, by not including sub files for empty fields ⇒ Calendar List in Back End loads ~36% faster v1.2.80_120: calendar\includes\showAllGigs\GigDate.php: file removed v1.2.80_119: calendar\includes\showAllGigs\subString.php: file removed v1.2.80_118: Files in calendar\includes\showAllGigs don't make use of the file subString.php anymore ⇒ now using new function getShortenedString() ⇒ Calendar List in Back End loads ~40% faster v1.2.80_117: functions\standard.php: new Function getShortenedString() v1.2.80_116: Bugfix: calendar\backend_showAllGigs.php: table cells for GigStatus had no CSS class declaration for printing v1.2.80_115: Bugfix: calendar\backend_showAllGigs.php: GigStatus had been in English always v1.2.80_114: Bugfix: Back End: Calendar: Add Gig: Autocomplete listed from database, but also just typed in strings (browser-side form data) ⇒ added 'autocomplete="off"' to all input-tags in charge v1.2.80_113: includes\footer.php: changed PaderDesign-URL to the GigKalender page v1.2.80_112: Bugfix: guestbook\guestbook_form_internal.php: Gets real visitor IP via new function getRealIP() ⇒ might reduce spam by blocking the real IP. also, before one IP was returned as 'unknown' v1.2.80_111: moved function getRealIP() from contact-form\contact-form.php to functions\standard.php v1.2.80_110: Bugfix: Front End: Guestbook: Pagination: First button got wrong URL when no URL defined in gigkalender.ini.php ⇒ functions\standard.php.getFrontendURL(): $Path is generated now by str_replace() v1.2.80_109: Bugfix: guestbook\functions.php.addGuestbookEntry(): Adding new entries failed, because empty ICQ variable wasn't set to NULL v1.2.80_108: Bugfix: guestbook\functions.php.addGuestbookEntry(): Optimized to give out error messages in case adding new entry to database failed v1.2.80_107: Bugfix: functions\standard.php.getFrontendURL(): did not consider the variable $SetupGalleryURL defined in gigkalender.ini.php v1.2.80_106: Bugfix: functions\standard.php.getFrontendURL(): did not consider the variable $SetupGuestbookEmailURL defined in gigkalender.ini.php v1.2.80_105: install\iniSetup.php: $SetupUserMaximumInactivityTime = "180"; v1.2.80_104: frontent\example_guestbook_add.php: file removed v1.2.80_103: Bugfix: languages\deutsch.php: expression of variable $L_021 optimized. v1.2.80_102: Bugfix: Back End: Some buttons too short, e.g. in Import: define min-width v1.2.80_101: Bugfix: Email from new guestbook entry always said "Uhr" behind the entry time v1.2.80_100: Bugfix: Email from a new guestbook entry always said "Datum" independent of selected language v1.2.80_099: Bugfix: Front End: Current Month: URLs to gig details were wrong v1.2.80_098: Bugfix: Back End: Calendar: List: On adding a new gig, URLs with https:// are changed into "http://https:/" v1.2.80_097: Bugfix: Google Maps URL did not work, because Google turned of the direct URL service ⇒ Map URLs are now opening an OpenStreetmap map v1.2.80_096: functions\standard.php: renamed function getGoogleMapsURL() into getMapsURL() v1.2.80_095: Bugfix: in email about new guestbook entry, a missing ICQ number was shown as "NULL" v1.2.80_094: Bugfix: languages\english.php: Fixed several bad expressions "Are you sure you..." into "Do you really want to..." v1.2.80_093: Bugfix: Back End: Calendar: List: renamed header from "Gig View" into "List View" v1.2.80_092: Bugfix: Front End: Guestbook: If pagination is not displayed, the entry link moved into wrong position, because of an empty div container ⇒ \guestbook\functions.php.getGuestbookFrontendNavigation(): gives out a " " now v1.2.80_091: Bugfix: Back End: CSS: some small buttons too short, width set to 6em v1.2.80_090: Bugfix: Back End: CSS: some buttons were too short, like the one during installation ⇒ CSS: width set to auto v1.2.80_089: Bugfix: Back End: Calendar: Year: several warnings when subfolder 'cache' is missing v1.2.80_088: Bugfix: Installation made use of a page refresh timer ⇒ removed v1.2.80_087: Bugfix: imports used the delimiter defined in the code, not the one defined in the setup v1.2.80_086: Renamed all variables $ErsterWochentag into $FirstDayOfTheWeek v1.2.80_085: Renamed all variables $Zelle into $Cell v1.2.80_084: Renamed function TimestampAusDatum() into getTimestampFromDate() v1.2.80_083: Renamed all variables $TimestampVonHeute into $TimestampOfToday v1.2.80_082: Renamed function WochentagVonDatum() into getWeekdayFromDate() v1.2.80_081: Renamed URL query parameter Jahr into Year v1.2.80_080: Renamed CSS class Jahr into Year v1.2.80_079: Renamed all variables $Tag into $Day v1.2.80_078: Renamed all variables $wochentag into $Weekday v1.2.80_077: Renamed all variables $timestamp into $Timestamp v1.2.80_076: Renamed all variables $MonatsName into $NameOfMonth v1.2.80_075: Renamed CSS class XXX into Month v1.2.80_074: Renamed all variables $unixtimestamp into $UnixTimestamp v1.2.80_073: Renamed all variables $Jahr into $Year v1.2.80_072: Renamed all variables $Monat into $Month v1.2.80_071: functions\standard.php: Optimized function v1.2.80_070: Renamed all variables $Inhalt into $Content v1.2.80_069: Renamed function GetTooltip() into getTooltip() v1.2.80_068: Renamed function AnzahlGigsMitGleichemDatum() into getNumberOfGigsAtSameDay() v1.2.80_067: Renamed all variables $AnzahlGigsMitGleichemDatum into $NumberOfGigsAtSameDay v1.2.80_066: Renamed function AnzahlTagedesMonats() into getDaysOfAMonth() v1.2.80_065: Renamed all variables $AnzahlTagedesMonats into $getDaysOfAMonth v1.2.80_064: Renamed all sql queries containing ['Anzahl'] or ['zahl'] into ['number'] v1.2.80_063: Renamed all variables $AnzahlZeichen into $NumberOfCharacters v1.2.80_062: Renamed all variables $AnzahlDateien into $NumberOfFiles v1.2.80_061: Renamed all variables $result into $Result v1.2.80_060: Renamed function AnzahlVeroeffentlichterNewsInDatenbank() into getNumberOfPublishedNewsEntries() v1.2.80_059: Renamed all variables $sql into $SQLQuery v1.2.80_058: Renamed all variables $SQL_Befehl into $SQLQuery v1.2.80_057: Renamed all variables $resultat into $Result v1.2.80_056: Renamed all variables $aktuellerEintrag into $CurrentEntry v1.2.80_055: Renamed all variables $obersterEintrag into $TopEntry v1.2.80_054: Renamed all variables $AnzahlGigsImZeitraum into $NumberOfGigsInPeriod v1.2.80_053: Renamed all variables $EintraegeProSeite into $EntriesPerPage v1.2.80_052: Renamed all variables $AnzahlEintraege into $NumberOfEntries v1.2.80_051: Renamed all variables $CurrentPage into $CurrentPage v1.2.80_050: Renamed all variables $AnzahlSeiten into $NumberOfPages v1.2.80_049: news\functions.php.getNewsFrontendNavigation(): removed function parameter $Locator v1.2.80_048: Bugfix: Front End: Guestbook: It wasn't possible to add a guestbook entry by accessing the form directly v1.2.80_047: Bugfix: images/bgindex.jpg: file removed v1.2.80_046: Bugfix: Back End: CSS: Background color still blue, changed into dark-grey v1.2.80_045: Bugfix: Installation fails, when subfolder 'cache' is missing ⇒ functions\standard.php.emptyDirectory(): now checks first whether directory exists v1.2.80_044: Frontend: guestbook form: visitors with blocked IPs can not see the form anymore v1.2.80_043: Bugfix: Frontend: On adding a GB entry, sending of email fails on certain email domains, e.g. "urx7.com" ⇒ guestbook\functions.php.sendMail(): sender email address is the admin email address now ($SetupGuestbookMail) v1.2.80_042: guestbook\functions.php.writeSpamLog(): Removed all blanks " " in spam log headers, like "[ Email ]" to ""[Email]"" v1.2.80_041: Bugfix: guestbook\functions.php.writeSpamLog(): String "[ eMail ]" changed into "[ Email ]" v1.2.80_040: Bugfix: functions\standard.php: When new Pagination lists less than 10 pages, button for last page has no page identifier (leads to page 1 then) v1.2.80_039: Back End: News: new Pagination v1.2.80_038: Back End: Guestbook: new Pagination v1.2.80_037: Bugfix: Back End: User was not logged out when max. Inactivity was up v1.2.80_036: removed variable $L_150 from the language files (not in use anymore) v1.2.80_035: Bugfix: frontend\images\guestbook_form.png: file missing due to update gigkalender_v1.2.79_009_DEV_update_80_022_DEV ⇒ applied new modification date to file v1.2.80_034: Bugfix: calendar\showGigDetails.php: When showing multiple gigs (from Month View) there was no empty row between the gigs listed v1.2.80_033: removed variable $L_203 from the language files v1.2.80_032: renamed all variables $L_ERROR_eMail_could_not_be_sent into $L_ERROR_Email_could_not_be_sent v1.2.80_031: renamed all variables $L_203 into $L_ERROR_Email_could_not_be_sent v1.2.80_030: Bugfix: Back End: Admin: Users: adding new user enforced to assign a language (not necessary) v1.2.80_029: Bugfix: languages\english.php: Improved variables $L_055 and $L_056 v1.2.80_028: Bugfix: Back End>Guestbook: after editing an entry with an empty ICQ field, it had value 0 in database. Now it is NULL. v1.2.80_027: Bugfix: Back End>Admin>Import: There had been no notice about not having anything selected v1.2.80_026: Back End>Admin>Import: Removed the use of SessionCookies v1.2.80_025: Bugfix: Back End>Admin>Tools: Strings were English only v1.2.80_024: Bugfix: calendar\calendar_wrapper.php: $timestamp was written upper case v1.2.80_023: Bugfix: calendar\includes\frontend\GigDetailsLink.php: GigDetailsLink showed timestamp in link instead of GigID, so link did not work v1.2.80_022: guestbook\functions.php.addGuestbookEntry(): optimized function v1.2.80_021: guestbook\functions.php.EintragHinzufuegen(): renamed into addGuestbookEntry() v1.2.80_020: guestbook\functions.php.messageIsSpam(): just cleaned up the code v1.2.80_019: guestbook\guestbook_form.php: simplified the handling of $BackURL v1.2.80_018: guestbook\guestbook_form.php: senden!='' changed into isset($senden) v1.2.80_017: guestbook\guestbook_form.php: removed the conversion of POST-vars into standard vars v1.2.80_016: guestbook\guestbook.php: added the conversion of $_Post-vars into standard vars v1.2.80_015: guestbook\guestbook.php: added the conversion of $_GET-vars into standard vars v1.2.80_014: guestbook\guestbook.php: removed the conversion of REQUEST-vars into standard vars v1.2.80_013: guestbook\functions.php.isFormReload(): return type set to BOOL v1.2.80_012: guestbook\functions.php.isFormReload(): added escaping of special characters via mysqli_real_escape_string() v1.2.80_011: update.sql.php: added capability to delete files and folders v1.2.80_010: Bugfix: filesharing/downloadNotes.php renamed into 'downloadSheetMusic.php' v1.2.80_009: Bugfix: filesharing\notes renamed into 'sheetmusic' v1.2.80_008: Bugfix: submenues\filesharing.php: renamed "downloadNotes" into "downloadSheetMusic" v1.2.80_007: Bugfix: images/filesharing_notes.gif renamed into filesharing_sheet-music.gif v1.2.80_006: Bugfix: languages\english.php: Variable $L_Notes renamed into $L_Sheet_Music v1.2.80_005: Bugfix: Back End>File Sharing: menu button 'Notes' renamed into 'Sheet Music' v1.2.80_004: Back End>Admin>Import: After importing, all checkboxes are unticked. v1.2.80_003: Bugfix: functions\standard.php.getFrontendURL(): "Notice: Undefined variable: SetupGuestbookFormURL" v1.2.80_002: $CharsSetupUserMaximumInactivityTime can have 3 chars, is Small Integer and default 60 minutes v1.2.80_001: Bugfix: guestbook/guestbook_delete.php: If guestbook entry gets deleted via email and $SetupGuestbookURL in gigkalender.ini.php is not set, back link to guestbook is wrong ⇒ gives out a notice now v1.2.80: New feature: gigkalender.ini.php: new variable $SetupFrontendGuestbookBlockedIPsLimit guestbook\guestbook_delete.php v1.2.79_009: languages\deutsch.php.$_ERROR_Old_guestbook_entries_NOT_deleted: changed into "FEHLER: Alte Gästebuch-Einträge NICHT gelöscht!" v1.2.79_008: languages\english.php.$L_203: changed into "ERROR: Email could NOT been sent!" v1.2.79_007: guestbook\guestbook_show.php: applied a

tag for the headers of guestbook entries v1.2.79_006: languages\english.php.$L_182: changed into "The GigKalender is offered free of charge."; v1.2.79_005: languages\deutsch.php.$L_182: changed into "Der GigKalender wird kostenlos angeboten."; v1.2.79_004: gigkalender.ini.php: improved error messaging, if connection to database failed v1.2.79_003: help/threads.php: updated to HTML5 v1.2.79_002: functions\standard.php.MonatsNameVonDatum(): rename into getNameOfMonthFromNumberOfMonth() v1.2.79_001: functions\standard.php.MonatsNameVonDatum(): function rewritten v1.2.79: New Feature: gigkalender.ini.php: new variable $SetupFrontendCalendarArtistFilter ⇒ Entering an artist name will display gigs of this particular artist only v1.2.78_052: guestbook\functions.php.GuestbookNavigation(): renamed into getGuestbookFrontendNavigation() v1.2.78_051: news\functions.php.getNewsFrontendNavigation(): return type set to :String v1.2.78_050: news\functions.php.NewsNavigation(): renamed into getNewsFrontendNavigation() v1.2.78_049: includes\backend_language_selector.php: If language file not found, it gives out an error message v1.2.78_048: includes\backend_language_selector.php: Using global var $PATH for including files v1.2.78_047: Bugfix: guestbook\guestbook_form.php: entering a website URL without protocoll triggers error message v1.2.78_046: languages\english.php.$L_Frontend: renamed into $L_Front_End_Calendar v1.2.78_045: languages\english.php.$L_Frontend: "Front End" ⇒ "Front End - Calendar" v1.2.78_044: languages\english.php.$L_202: "Calendar" ⇒ "Back End - Calendar" v1.2.78_043: languages\english.php.$L_067: "Back End" ⇒ "Back End - General" v1.2.78_042: Backend: Admin: Members: numbers of asterix * in column Password represented password length v1.2.78_041: Bugfix: Frontend>Gallery>Image-View: Double-Arrow-Icon to jump to first or last image is always a link, even when grayed out gallery\gallery.php v1.2.78_040: Bugfix: example_guestbook-and-news.php: Pagination of News leads to example_news.php ⇒ functions\standard.php.getFrontendURL(): Function revised and fully implented in all front end views v1.2.78_039: frontend/images/guestbook_add.png: renamed into 'guestbook_form.png' v1.2.78_038: Guestbook: renamed all 'add' into 'form' v1.2.78_037: guestbook/guestbook_add.php: renamed into 'guestbook_form.php' v1.2.78_036: gigkalender.ini.php: added comments, that URLs should be absolute paths v1.2.78_035: Bugfix: languages\deutsch.php: $L_071 = "Deine Anmeldedaten waren NICHT korrekt!"; v1.2.78_034: frontend/example_full.php: New example file, which demonstrates a full website v1.2.78_033: functions\standard.php: New function getFileNames():Array v1.2.78_032: functions\standard.php: New function formatFileSize():String v1.2.78_031: Bugfix: filesharing\filesharing.php: Renaming of files caused names like test_1_1_1_1.mid ⇒ entire code rewritten v1.2.78_030: filesharing\filesharing.php: partially rewritten v1.2.78_029: Bugfix: filesharing\filesharing.php: removed all utf8_encode(), since it caused various mistakes v1.2.78_028: Bugfix: language/english.php: $L_197 = "ERROR: At least one file name contains upper case letters!"; v1.2.78_027: Bugfix: language/english.php: $L_199 = "Error:" changed into "ERROR:" v1.2.78_026: Bugfix: language/english.php: 4 times changed "At least on filename contains" into "At least one file name contains" v1.2.78_025: Bugfix: Frontend: Gallery: gives out a warning on unknown file formats, like BMP, TIF, PSD,... ⇒ gallery\functions.php.getArrayOfImagesInFolder(): returns only known file formats like jpg, jpeg, png and gif ⇒ file extensions can be lower or upper case now v1.2.78_024: gallery\functions.php.getArrayOfImagesInFolder(): rewritten function for using globe() v1.2.78_023: gallery\functions.php: removed obsolet function countImages(); v1.2.78_022: guestbook\guestbook_add.php: gives out an error message, if message contains a blocked character. v1.2.78_021: guestbook\functions.php.messageIsSpam(): Function returns 'noSpam', if message does not look like spam v1.2.78_020: guestbook\functions.php.messageIsSpam(): Improved the way it checks for characters, it saves the detected blocked character into spam.log v1.2.78_019: guestbook\functions.php.messageIsSpam(): Improved the way it checks for words, with surrounding blanks v1.2.78_018: news\news.php: Faster code to calculate page of requested article, when accessed from news feed with NewsID v1.2.78_017: Bugfix: news\news.php: If NewsID referred to not existing article, a warning was thrown: "Warning: A non-numeric value encountered..." v1.2.78_016: Bugfix: Backend: renamed all GET variables "inhalt" into "content" v1.2.78_015: Backend: Calendar: List: Pagination: Removed the title "Page:" v1.2.78_014: styles/gigkalender.css: page centered: body {margin: 0 auto 0 auto;} v1.2.78_013: styles/gigkalender.css: Maximum page width set: body {max-width: 1200px;} v1.2.78_012: Removed subolder 'gallery/albums/album' v1.2.78_011: functions\standard.php: removed obsolet function GigsPublished() v1.2.78_010: Optimized code in calendar\table.php v1.2.78_009: Optimized code in calendar\list.php v1.2.78_008: Optimized code in calendar\calendar_past.php v1.2.78_007: Optimized code in calendar\calendar.php v1.2.78_006: functions\standard.php.GigsPublished(): Optimized code v1.2.78_005: Bugfix: Front End: Calendar: If all gigs in period are 'Option', there was no note about no gigs, just nothing. ⇒ functions\standard.php.GigsPublished(): missing brackets in SQL command v1.2.78_004: languages/deutsch.php: updated strings $L_060 and $L_075 v1.2.78_003: languages/english.php: updated strings $L_060 and $L_075 v1.2.78_002: languages/deutsch.php: $L_109: changed into "Gästebuch-Formular" v1.2.78_001: languages/english.php: $L_109: changed into "Guestbook Form" v1.2.78: New Feature: Back End: Admin: Front End: User can let language blank, so browser language will be detected v1.2.77_032: languages/deutsch.php: $L_Headline08: changed into "Kalender - Vergangene Gigs:"