root/trunk/wifidog-auth/CHANGELOG @ 1032

Revision 1032, 81.4 KB (checked in by benoitg, 7 years ago)

Move files around (couldn't be done with previous svn operation)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
12006-05-09 Benoit Grégoire  <bock@step.polymtl.ca>
2        * Working (if slightly basic) theme manager.  You can pick the theme in the network configuration.
3        To add your own theme, read wifidog/media/network_theme_packs/README.txt
4        * Cleanup and document the wifidog directory structure
5        * Minor HTML corrections for content types
6        * Completely rip out the old local_content system, and a bunch of obsolete defines and config variables.
7        * Get rid of PHP generated stylesheets
8       
92006-05-09 Benoit Grégoire  <bock@step.polymtl.ca>
10        * Finish content assignation system
11        * Content ordering is now global (network, nodes and everywhere content cand now be in mixed order).
12        * Implement 'everywhere' content
13        * Change MainUI::apendContent to MainUI::addContent
14
152006-04-28 François Proulx <francois.proulx@gmail.com> 
16        * Fixed error in initial data script
17       
182006-04-28 Benoit Grégoire  <bock@step.polymtl.ca>
19        * wifidog/login/index.php: Correctly use DEFAULT_NODE_ID from config.php instead of hardcoded 'default'
20
212006-04-28 François Proulx <francois.proulx@gmail.com>
22        * Fixed initial_data schema script so that it adds a dummy server.
23       
242006-04-25 François Proulx <francois.proulx@gmail.com>
25        * Updated JavaScript code to work with Google Maps v2 API
26        * v2 will now provide full maps of European countries and is a bit faster
27        * Updated the schema accordingly with new GMaps values
28       
292006-04-24 Benoit Grégoire  <bock@step.polymtl.ca>
30        * Dependencies.php:  Small fix in case gettext isn't installed
31
322006-04-24 Benoit Grégoire  <bock@step.polymtl.ca>
33        * AuthenticatorLDAP.php:  Merge patch from jguevara@unitec.edu.  Fixes #125
34
352006-04-24 Benoit Grégoire  <bock@step.polymtl.ca>
36        * Major system locale handling overhaull.  Hopefully abstract out the UTF8 problems once and for all,
37        allowing everyone to define them the same way.  Fix a few bugs along the way. 
38        Should also be a little faster.
39
402006-04-24 Benoit Grégoire  <bock@step.polymtl.ca>
41        * Revert Rob's SYSTEM_PATH change.  Sorry about that.  The devs spent hours to finally get the PATH
42         stuff consistent and fixing the countless bugs that this process introduced.
43         Maybe some links still need to use BASE_URL_PATH instead of BASE_SSL_PATH,
44        (or vice-versa) but it was on purpose that SYSTEM_PATH was not made available to Smarty. 
45        We already have 3 defines to be used for links and html refs, that's enough
46         BASE_SSL_PATH should be used to enter SSL mode (if available)
47         BASE_NON_SSL_PATH should be used to break out of SSL mode of when we
48         explicitely do not want someting to be referenced over http
49         BASE_URL_PATH should be used in all other cases to avoid needless SSL warning
50       
512006-04-17 Rob Janes <janes.rob@gmail.com>
52        * javascript for validating and navigating forms.
53        * help text (untranslated).
54        * EVENT_LOGGING enabling/disabling flag.
55        * use SYSTEM_PATH instead of BASE_URL_PATH and BASE_SSL_PATH where ever appropriate.
56        * standardize Smarty variables for Network and User info by adding assignSmartyValues($smarty, $self) to Network and User.
57        * change_password only allowed if logged in.
58        * non-superadmin can only use change_password to change their own password.
59        * superadmin can use change_password to change any user password by entering in their password for the old password.
60        * page_header div defined and positioned in MainUI
61
622006-04-04 Benoit Grégoire  <bock@step.polymtl.ca>
63        * /classes/Content/IFrame/IFrame.php: Change a few methods from private to protected as the private methods broke IFrameRest
64
652006-04-01 François Proulx <francois.proulx@gmail.com>
66        * Dumped initial schema from working install
67       
682006-03-31 Benoit Grégoire  <bock@step.polymtl.ca>
69        * dump_initial_data_postgres.sh:  Add the content_available_display_pages table to the dump, can someone re-generate the initial data from a working install
70        * Remove the ?> tags from all the classes.
71
722006-03-27 Benoit Grégoire  <bock@step.polymtl.ca>
73        * Fix bug where right_area_bottom content wouldn't be displayed.
74        * Minor CSS cleanup
75
762006-03-28 François Proulx <francois.proulx@gmail.com>
77        * Fixed error in initial schema (bad client encoding)
78       
792006-03-28 François Proulx <francois.proulx@gmail.com>
80        * Fixed schema 37 : left_area_top
81        * Updated initial schema
82       
832006-03-27 Benoit Grégoire  <bock@step.polymtl.ca>
84        * First step in massive simplification of CSS and templates
85        * Implement the new main CSS structure
86        * Implement working content assignation interface and content ordering for both network and nodes.
87        * Display of content according to assignation work on 'portal' and 'login'.  'everywhere' not yet implemented
88        * Get rid of some ISF specific interface elements
89        * Finally replace the overly complicated start button by a "Use the Internet" link that will not
90         get you out of your working tab
91        * Fix #118
92
932006-03-26 Benoit Grégoire  <bock@step.polymtl.ca>
94        * init_php.php: Fix stripslashes_cb() so it actually works, this means the aust server should work properly with auth servers with magic quotes turned on.
95        This is still not recommended however.
96        * Remove some spurious error ouptut on logout.
97        * Remove potential error in network id parsing
98
992006-03-22 François Proulx <francois.proulx@gmail.com>
100        * Fixed Google Maps URLs bug
101        * Since Google Maps does not provide Javascript over SSL (it does but the certificate does not match)
102          the code path to the map does not use SSL, but the outgoing URLs do.
103        * Removed lost echo in Locale.php
104       
1052006-03-21 Benoit Grégoire  <bock@step.polymtl.ca>
106        * login/index.php: Remove huge security hole introduced by stylistic changes in the file. 
107        A user could login to any hotspot by simply filling a blank form because of a gratuitous
108        change from empty to is_null everywhere.  Remove escaping or REQUEST parameters in non SQL
109         related code, as this would lead to double unescaping down the line.  Remove logic dependent
110          on encapsulated side effects of object method call.
111
1122006-03-19 François Proulx <francois.proulx@gmail.com>
113        * Updated French translations
114       
1152006-03-18 Rob Janes <janes.rob@gmail.com>
116        * path_defines_base working for combinations of DocumentRoot, Alias,
117          and installed wifidog-auth directory, correctly setting SYSTEM_PATH
118          and WIFIDOG_ABS_FILE_PATH dynamically.
119        * classes/Locale.php::getBestLanguage changed to correctly parse
120          HTTP_ACCEPT_LANGUAGE, comma is the correct delimiter not semi-colon.
121          Ignores SESS_LANGUAGE_VAR if invalid.
122
1232006-03-18 Rob Janes <janes.rob@gmail.com>
124        * Fixed bug #77 classes/EventLogging.php non-variable pass by reference
125
1262006-03-16 François Proulx <francois.proulx@gmail.com>
127        * Removed stale owner_sendfiles.php (now integrated in the Content Manager)
128        * Cleaned up a bunch of stale TODOs
129       
1302006-03-16 Max Horváth <max.horvath@maxspot.de>
131        * updated language files (new german strings have already been translated)
132        * added LDAP authentication
133        * Dependencies class can check for an PHP extension now
134        * Dependencies class can check for multiple files on a single dependency now
135        * Authentication classes moved to it's own directory
136        * The getAuthenticator method now uses the much safer and faster
137          call_user_func_array function to return an authenticator object
138        * the available authenticator classes are now being displayed in a select
139          box on the network administration page
140        * the link to and the Google hotspots map as is won't be shown to an
141          unauthenticated user at a real hotspot
142
1432006-03-16 Benoit Grégoire  <bock@step.polymtl.ca>
144        * hotspots_map.tpl:  Use base_url_path instead of base_ssl_path
145
1462006-03-09 Benoit Grégoire  <bock@step.polymtl.ca>
147        * init_php.php: Try to fix #102 by inspection
148        * Delete AbstractDbMySql.php, and collapse AbstractDbPostgres.php
149          into AbstractDb.php to prepare for eventual switch to PDO file.
150        * incoming_outgoing_swap.php:  Delete file, closes #85
151
1522006-03-09 Max Horváth <max.horvath@maxspot.de>
153        * fixed small bug in the InterfaceElements class
154        * fixed PHP notices in portal/index.php and Locale class
155        * fixed small bug in Authenticator class which in resulted in a fatal PHP
156          error if a user logged out when his session was already gone
157    * using the {$isUserAtHotspot} smarty variable you can check now in every
158      template if a user calls the portal from a hotspot or not
159
1602006-03-08 Max Horváth <max.horvath@maxspot.de>
161        * fixed small bug where clicking on the start button at the portal page
162          didn't open the wifidog portal, but the requested page
163        * updated source to generate a clean PHPdoc output
164        * updated PHPdoc generating script
165
1662006-03-07 Max Horváth <max.horvath@maxspot.de>
167        * init_php.php now does a 100% strict check for variable types of
168          elements to be processed when magic_quotes are turned on
169        * fixed duplicate use of SSL_AVIABLE define in common.php
170          This fixes ticket #95.
171        * fixed problens with slashes in htospots_map.php
172          This fixes ticket #97.
173        * fixed variable typo in NodeListXML.php
174        * introduced new InterfaceElements class which is being used to create
175          HTML code - this reduces HTML markup in PHP code and reduces HTML errors
176          we had i.e. on the node administration page (unclosed div).
177          It is being used on the node administration page now and will be updated
178          for the other admin pages ...
179        * when adding an owner or tech officer on the node admin page and pressing
180          enter in the input field the statistics where called (no owner or tech
181          officer was added) - this has been fixed
182        * database schema update 35 wasn't compatible with PostgreSQL version 7,
183          the update script has been changed to be compatible with it ...
184          This fixes ticket #94.
185        * Gabriel Hahmann did a translation of WiFiDog-Auth in portuguese ... it has
186          been included
187          This fixes ticket #98.
188        * on node administration page owners have less rights than admins
189
1902006-03-02 Max Horváth <max.horvath@maxspot.de>
191        * converted PNGs to GIFs because Internet Explorer cannot handle alpha
192          transparency of PNGs
193
1942006-02-28 Max Horváth <max.horvath@maxspot.de>
195        * the content selector for an owner could produce notices
196        * the button add existing content in the content manager will only be shown
197          if content is actually available
198        * the start button on the portal page won't be shown anymore if a user
199          didn't access it from a WiFiDog hotspot
200        * deleted wifidog/templates/message_unknown_hotspot.html as this error
201          message will be displayed using the genecir error message template
202        * display of generic error messages will be handled by the MainUI class
203        * deleted wifidog/portal/missing_original_url.php as its functions is being
204          handled by wifidog/portal/index.php now
205        * deleted wifidog/templates/message_default.html as its functions is being
206          handled by wifidog/gw_message.php now
207        * deleted wifidog/templates/message_activate.html as its functions is being
208          handled by wifidog/gw_message.php now
209        * account validation hints finally show the real validation grace time
210          (used to display 15 minutes)
211        * deleted wifidog/templates/message_denied.html as its functions is being
212          handled by wifidog/gw_message.php now
213        * deleted wifidog/templates/message_failed_validation.html as its functions
214          is being handled by wifidog/gw_message.php now
215        * deleted wifidog/templates/user_management_menu.html as its not being
216          used anymore
217        * deleted wifidog/local_content/default/footer.html as its not being
218          used anymore
219        * deleted wifidog/local_content/default/header.html as its not being
220          used anymore
221        * deleted wifidog/local_content/default/portal.html as its not being
222          used anymore
223        * deleted wifidog/local_content/default/new.css as its wasn't ever used
224        * deleted wifidog/local_content/README as its content isn't valid anymore
225          used anymore
226        * Login site now uses a Smarty template to render HTML page
227        * class MainUI now also delivers $isOwner variable for Smarty
228
2292006-02-26 Max Horváth <max.horvath@maxspot.de>
230        * Hotspots map page now uses a direct Javascript call for the link
231          "Show me on the map" (resulting in the browser not jumping to the top of
232          the page if a user clicks on such a link)
233        * refactored hotspot status page, it now uses node list classes to generate
234          output
235        * WIFI411_CSV has been removed from hotspot status page - it didn't work
236          properly - a working version can be added to /wifidog/classes/NodeLists
237        * RSS feed of hotspot status now delivers language of user
238        * RSS and XML feed of hotspot status now actually do deliver data from
239          the requested network (before the code accepted network selection but
240          actually switched back to the current network)
241        * RSS feed of hotspot status page now gets announced in browser
242
2432006-02-25 Max Horváth <max.horvath@maxspot.de>
244        * fixed undefined variable bugs in statistic classes (use of date_from and
245          date_to), variables were processed directly from request, without any
246          check
247          This fixes ticket #71.
248        * clicking on a username in user logs now generates a individual user
249          report as it does when clicking on a username on the online users page
250        * Changing the value of the "Is persistent" checkbox doesn't have to
251          saved when JavaScript is enabled in the browser. Before this change
252          you had to save a content. So if you wanted to delete a persistant content
253          you first had to uncheck this checkbox, save the content and delete the
254          content after saving it. If JavaScript is enabled in your browser you
255          can go straight ahead, uncheck the checkbox and delete the content.
256          This fixes ticket #73.
257        * when processing global arrays if magic quotes is enabled, WiFiDog will
258          check for type variables
259          This fixes ticket #84.
260        * the RSS feed of nodes now delivers the correct link to the nodes homepage
261          This fixes ticket #80.
262        * small fix in schema_validate.php which should affect nobody (in schema
263          version 9)
264          This fixes ticket #79.
265        * fixed "Show all available contents for this hotspot" link which didn't
266          work if WiFiDog wasn't located in the root folder of the webserver
267        * the "Show all available contents for this hotspot" link won't be shown
268          anymore unless all requirements are meet that all content of a hotspot
269          would be shown. The requirements are: you need to have at least one
270          Content Group tagged artistic and locative content, with at least one
271          content group element available for display.
272          This fixes ticket #35.
273        * adjusting the location of a node via the Google maps geocoding service)
274          and clicking the button "Use these coordinates" didn't work
275          This fixes ticket #81 and #82.
276        * the content select box now only shows the content to a user of which is
277          is the owner from (same mechanism has already been used on the content
278          manager page) or all content if the user is a superadmin
279        * wifidog/admin/content_admin.php removed, because the content manager now
280          uses the generic object administration interface
281        * the creation date of a network can be changed now (this value wasn't
282          displayed in the admin interface, even though it was present in the
283          database)
284        * revamped administration sidebar, cleaner interface for the superadmin,
285          for the owner of a node nothing changes
286        * added "server administration" section to the administration interface
287        * Added administration of webservers. For one webserver not much changes.
288          The SSL available setting has been moved to this section (and removed
289          from config.php). Running WiFiDog on two or more webserver (with one
290          database) you now can define the different hostnames of the webserver.
291          Of course you can also define, which of those webserver serves SSL. This
292          is for example essential for the Google maps feature (different API keys
293          for different hostnames)
294        * for every network you now can define it's own Google Map initial values
295          and map types
296        * Hotspots map page now supports different maps for different networks
297        * Hotspots map page now supports different map types for different networks
298          This fixes ticket #69
299        * Hotspots map page now offers full multilingual support (text in the
300          JavaScript file was english only)
301        * Hotspots map page now uses a Smarty template to render HTML page
302
3032006-02-21 Max Horváth <max.horvath@maxspot.de>
304        * fixed access restriction for HTMLeditor in templates folder
305        * fixed XML error in HTMLeditors CSS and HTML templates
306        * fixed undefined variable bug in content class ContenGroup
307        * start page now uses a Smarty template to render HTML page
308        * start page now also displays information about deployed/operational nodes
309        * information about valid/online users and deployed/operational nodes gets
310          cached if caching has been enabled (valid/online users for 1 minute,
311          deployed/operational nodes for 5 minutes)
312
3132006-02-17 Max Horváth <max.horvath@maxspot.de>
314        * refactored lost username site - now it also includes the help toolbox
315        * lost username page now focuses input field automaticly (like on login or
316          signup page)
317        * refactored lost password site - now it also includes the help toolbox
318        * lost password page now focuses input field automaticly (like on login or
319          signup page)
320        * refactored sesend validation email site - now it also includes the help
321          toolbox
322        * refactored resend validation email page now focuses input field
323          automaticly (like on login or signup page)
324
3252006-02-16 Max Horváth <max.horvath@maxspot.de>
326    * added full PHPdoc documentation to Mail class
327    * added more temporary-email-address-providers to the black-list
328        * Login site now uses a Smarty template to render HTML page
329        * refactored signup site - now it also includes the help toolbox
330        * removed Phlickr directory in /lib dir as Phlickr must be installed via
331          PEAR
332        * modified gen.sh to include new template folders for the
333          translation file generation
334
3352006-02-15 Max Horváth <max.horvath@maxspot.de>
336        * Login site now uses a Smarty template to render HTML page
337
3382006-02-14 Max Horváth <max.horvath@maxspot.de>
339        * converted Session class to PHP5 style
340        * moved code used used to init PHP into wifidog/include/init_php.php
341        * fixed bug regarding APC (super globals weren't initialized before their
342          first use
343        * in an attemp to enter the administration interface of WiFiDog and not
344          being logged in you'll be redirected to the administration interface after
345          a successful login, if you are an admin or owner of a node. This only
346          works for a virtual login, as it isn't needed to be done when logging in
347          via a WiFiDog node (then you have to login anyway on the splash page
348          first)
349        * fixed preview of network in administration interface as content for a
350          network as is isn't available in the code, yet
351
3522006-02-13 Rob Janes <janes.rob@gmail.com>
353    * cron/cleanup.php needed new way to call common.php
354        * added cron/vacuum.php to round things out
355
3562006-02-07 Benoit Grégoire  <bock@step.polymtl.ca>
357        * Fix a bunch of file inclusion bugs in the statistics subsystem.
358          This is only a ad-hac fix. It seems the requires for just about every
359          class have been stripped off. This must be fixed, all classes should
360          require_once all classes or include that they need that isn't included by
361          a parent class.
362
3632006-02-06 Benoit Grégoire  <bock@step.polymtl.ca>
364        * wifidog/local_content/default/hotspot_logo.jpg: Delete deprecated file
365        * wifidog/local_content/default/hotspot_logo_banner.jpg: Delete deprecated
366          file
367
3682006-02-04 Max Horváth <max.horvath@maxspot.de>
369        * MainUI class now uses Smarty templates to render HTML pages
370        * display of debug messages by using $_REQUEST['debug_request'] on any
371          page is now only possible for a super admin
372        * caching class now supports lifetime of a cache and every data type
373          supported by PHP (except the resource-type)
374        * Content class caches available content plugins for 7 days if caching has
375          been enabled -> results in a nice speed-up on every page call because
376          of 17 saved filesystem queries
377        * converted Security class to PHP5 style and it's functions to static
378          functions
379        * fixed broken HTMLeditor support
380        * implemented PEAR::HTML_Safe cache support - if PEAR::HTML_Safe has been
381          installed it strips down all potentially dangerous content within HTML
382          that has been entered using the content plugins Langstring,
383          TrivialLangstring and HTMLeditor
384        * moved /wifidog/include/HTMLeditor to /wifidog/content/HTMLeditor
385        * fixed thrown exception in path_defines_base.php (sprintf() was used
386          uncorrectly)
387        * template for definition of SYSTEM_PATH has been added to config.php
388          for easier definiton when path detection failes
389        * from now on caching is enabled by default in config.php - it means that
390          WiFiDog caching features will automaticly be used if PEAR::Cache_Lite
391          has been installed
392        * updated installation file to represent all the new modules that can be
393          installed to use all WiFiDog features
394
3952006-01-31 Benoit Grégoire  <bock@step.polymtl.ca>
396        * path_defines_base.php:  Fix syntax errors in the exception thrown. Add
397          more meaningfull output
398
3992006-01-29 Max Horváth <max.horvath@maxspot.de>
400        * WiFiDog now detects APC PHP cache and eAccelerator PHP cache and disables
401          both PHP caches, because WiFiDog currently doesn't run with either of
402          those PHP caches (I'm still investigating why)
403        * added a missing <ul> HTML tag on the administration page
404        * the validation mail sent to new users now includes the full path to the
405          WiFiDog installation (before it assumed WiFiDog to be installed in
406          the document root of the webserver)
407        * fixed display of start button of portal when WiFiDog is not installed
408          in the document root of the webserver
409        * replaced $_SERVER["DOCUMENT_ROOT"]-stuff with our defines made in
410          path_defines_base.php
411        * updated HTMLeditor content class to use the new, moved stylesheet.css
412        * fixed error messages not displaying technical support e-mail address
413
4142006-01-25 Max Horváth <max.horvath@maxspot.de>
415        * a notice message regarding timezones was being displayed when running PHP
416          5.1.0+ due to rewritten date functions of PHP. There is a new config flag
417          in config.php named DATE_TIMEZONE. Set it to your local timezone.
418          Don't forget to update your local.config.php in case you're using it.
419
4202006-01-24 Benoit Grégoire  <bock@step.polymtl.ca>
421        * Dependencies.php:  We missed one more instance of non-unifrom code for
422          path detection. The Dependencies class now uses the code in
423          include/path_defines_base.php like the rest of the system. Also make it
424          returns more usefull error messages.
425        * SmartyWifidog.php: Output the error returned by Dependencies if Smarty
426      cannot be found for some reason.
427
4282006-01-23 Max Horváth <max.horvath@maxspot.de>
429        * Removed compiled PHPdoc documentation
430        * moved createDoc.sh to "doc" directory, documentation can be generated on
431          the fly now, in the future we'll be generating a nightly PHPdoc on
432          wifidog.org
433        * renamed "ChangeLog" to CHANGELOG, resulting this file being parsed by
434          PHPdoc
435        * moved "header.gif" image to its own folder in the images directory
436        * touched almost every PHP file in WiFiDog auth server for PHPdoc generating
437          compiling without any warnings
438        * Initialized uninitialized variables in Node class
439        * Fixed initialization error of one variable
440        * Configuration file (config.php) will be read before path detection is
441          being started (otherwise there was no chance to set a manual SYSTEM_PATH)
442
4432006-01-22 Benoit Grégoire  <bock@step.polymtl.ca>
444        * common.php: Real fix for Ticket #59 ;)
445        * common.php: Untested fix for Ticket #59
446
4472006-01-18 François Proulx <francois.proulx@gmail.com>
448        * Remove unneeded .cvsignore files since the svn:ignore property is set to
449          the same list
450
4512006-01-11 Rob Janes <janes.rob@gmail.com>
452    * classes/User.php: added setters, getters, throw exceptions, added
453      refresh() subr, tweaked language
454
4552006-01-09 Max Horváth <max.horvath@maxspot.de>
456        * createDoc.sh: added description of how to install requirements
457
4582006-01-08 Benoit Grégoire  <bock@step.polymtl.ca>
459        * common.php: Improve path detection code, and start moving PATH detection
460          back to a central location. You should NEVER go to any $_SERVER[]
461          variables for path related stuff, all you need is already available
462          in defines.
463        * UserReport.php: Remove dangling reference to BASEPATH.
464        * install.php: Use centralised path detection.
465
4662006-01-04 Benoit Grégoire  <bock@step.polymtl.ca>
467        * config.php, common.php: Completely remove SYSTEM_PATH from config.php,
468          making one less config option to manage.  It is now autodetected.
469
4702006-01-03 Rob Janes <janes.rob@gmail.com>
471        * added support for classes/EventLogging.php.
472        * modified include/common.php to pull in the EventLogging class
473        * modified index.php to kick start error logging with minimal setup.
474          I didn't setup a css for this, so any errors are simply pushed out
475          when the logging channel is destructed.
476        * other changes to include/common.php - a host of utility functions,
477          prefixed with "cmn" to avoid namespace collision.
478        * stock config.php, added global $AVAIL_LOCALE_ARRAY, cause of my change
479          to include/common.php, wrapping the require_once in a function.
480
4812006-01-04 Pascal Leclerc <isf@plec.ca>
482    * install.php: New security validation and small bugs fix in admin account
483      creation
484
4852006-01-02 Rob Janes <janes.rob@gmail.com>
486        * split static stylesheet.css from smarty template stuff.
487          local_content/default/stylesheet.css has only smarty template stuff.
488          local_content/common/stylesheet.css has all the rest.
489        * classes/MainUI.php changed to <link ...> the common stylesheet.css, while
490          still smarty fetching the templated stylesheet.
491        * classes/SmartyWifidog.php changed to set a smarty template variable so
492          that the templating stylesheet could work.
493
4942005-12-29 François Proulx <francois.proulx@gmail.com>
495        * Integrating Philippe's code for User class
496        * This build needs extensive testing please
497        * E-mail blacklisting (Mail class)
498
4992005-12-29 François Proulx <francois.proulx@gmail.com>
500        * Added Aidan's file_exists_incpath function to Dependencies class
501        * Translated and standardized most of PostgreSQL abstraction class.
502        * Removed blank lines at end of many files
503        * Tested the new Phlickr package, which fixes URL on Flickr
504
5052005-12-28 Max Horváth <max.horvath@maxspot.de>
506        * Removed BASEPATH define from source - resulting in a better
507          require-overview
508        * speed improvement of 7% by optimizing Dependencies class
509        * improved documentation of content classes
510
5112005-12-26 François Proulx <francois.proulx@gmail.com>
512        * Fixed bug when the same user was owner of many nodes
513        * Added missing reference to content_display_location initial data in dump
514          script
515
5162005-12-26 François Proulx <francois.proulx@gmail.com>
517        * Tiny modifications to config.php
518        * Reinserted the deprecated defines, created errors on my system
519        * Fully translated FormSelectGenerator class, Locale
520        * Added comments to Utils, Locale etc..
521        * Fully tested installation from scratch using blank database with
522          installation script
523        * Improved installation script a bit
524        * Synched SQL for CVS schema 29 --> 33
525
5262005-12-26 Max Horváth <max.horvath@maxspot.de>
527        * added new headers to every source file
528        * converted file to represent a tab as four (4) spaces
529        * added PhpDocumentor documentation
530        * added WiFiDog skin to HTMLeditor
531        * language selection in a content class now shows the language name instead
532          of the language code
533        * added caching support to content classes Langstring and TrivialLangstring
534
5352005-12-15 Max Horváth <max.horvath@maxspot.de>
536        * fixed bug in dependencies class when gettext support for PHP is not
537          available
538
5392005-12-14 Max Horváth <max.horvath@maxspot.de>
540        * fixed bug in config.php:59 ... was unable to select DB server
541
5422005-12-08 Max Horváth <max.horvath@maxspot.de>
543        * added FCKeditor to the supported libraries
544        * added new content type: HTMLeditor
545        * added new caching class which uses PEAR::Cache_Lite - must be enabled in
546          config.php
547        * HTMLeditor is the first class using the new caching class
548        * removed unused function from content type Langstring
549        * beautified and reorganized config.php and added a new switch for the
550          caching class
551
5522005-12-06 Max Horváth <max.horvath@maxspot.de>
553        * fixed SQL bug when calling the "report configuration" page as a node owner
554
5552005-12-05 François Proulx <francois.proulx@gmail.com>
556        * Crunched the Google Maps Div block for better display on small screens
557
5582005-12-05 Max Horváth <max.horvath@maxspot.de>
559        * fixed bug when calling the preview version of a login page
560
5612005-11-30 Benoit Grégoire  <bock@step.polymtl.ca>
562        * User.php: Fix a bug in the sql query in isUserValid(). Checked that the
563          change works with postgresql 7.4 and 8. It is still not understood why
564          ISF doesn't encounter this bug on it's production server.
565
5662005-11-28 François Proulx <francois.proulx@gmail.com>
567        * Improved Flickr user output
568        * Mostly completed Flickr admin UI
569        * Changed display algorithm to display sequentially
570
5712005-11-25 Rob Janes <janes.rob@gmail.com>
572        * EventLogging class initial checkin
573
5742005-11-14 Max Horváth <max.horvath@maxspot.de>
575        * fixed path to included classes
576          Guys, please check the paths to included files twice next time you're
577          moving files
578
5792005-11-12 François Proulx <francois.proulx@gmail.com>
580        * Fixed schema 33 update
581        * fixed css
582
5832005-11-11 François Proulx <francois.proulx@gmail.com>
584        * Fixed Admin hotspot location map
585        * Take note: Google Maps updated their API key system, so that you simply
586          need to register a key for the whole domain.
587          ie. one key for http://auth.abc.org will work even in sub-directories
588        * Changed the Content classes structure to make them "pluggable" more easily
589          as requested during last developpers meeting
590        * node_list.php now support column sorting, node_id are naturally sorted
591          (numerical order, alphabetic)
592        * Added 2-dimensionnal natural sort algorithm to Utils class
593        * fixed Node::getSelectNodeUI to naturally sort by node_id
594        * Improved Flickr content class
595        * Modified Flickr database schema
596        * Modified CSS look and feel
597
5982005-11-08 Philippe April  <philippe@ilesansfil.org>
599        * Put a note to mention the roles of users in the logged in users list
600        * Fixed online users link to statistics
601
6022005-11-01 Max Horváth <max.horvath@maxspot.de>
603        * added german translation
604        * modified gen.sh to include geocoder and statistics classes for the
605          translation file generation
606        * modified hotspot status page to allow translations of every string
607        * modified node list page to allow translations of every string
608        * modified FAQ page to allow translations of every string
609        * fixed bug in FAQ page which caused the Safari browser to display very
610          large text
611        * modified online users page in administration to allow translations of
612          every string
613        * added Phlickr directory to /lib
614
6152005-10-25 Francois Proulx <francois.proulx@gmail.com>
616        * /classes/DateTime.php : First iteration of DateTime abstraction class
617        * Basic support for datetime input field.
618        * TODO : Overhaul with full-fledged datetime selector...
619
6202005-10-25 Francois Proulx <francois.proulx@gmail.com>
621        * AuthenticatorRadius : Fixed legacy variable misuse
622
6232005-10-24 Benoit Grégoire  <bock@step.polymtl.ca>
624        * AuthenticatorRadius:  Fix bug reported by kouete, by inspection. Fix not
625          actually tested. Guys, read the documentation of the function parameters
626          when you code, it's there to help you ;)
627
6282005-10-21 Francois Proulx <francois.proulx@gmail.com>
629        * Integration testing for Radius debugging
630        * Added network_id parameter to hotspot_status.php for selecting network
631        * Default network will be automatically selected...
632
6332005-10-04 Francois Proulx <francois.proulx@gmail.com>
634        * Scaled down network logo
635        * Changed CSS accordingly
636        * Modified online users SQL query to sort better
637
6382005-10-04 Francois Proulx <francois.proulx@gmail.com>
639        * Removed unwanted file from checkout
640
6412005-10-07 Philippe April  <philippe@ilesansfil.org>
642        * Released wifidog-auth-1.0.0_m2
643
6442005-10-06 Benoit Grégoire  <bock@step.polymtl.ca>
645        * AuthenticatorLocalUserNoSignup:  Make a new authenticator, identical to
646          AuthenticatorLocalUser but disalowing new user signup.  When setting up
647          a server, you can add your users, and then change the authenticator class
648          from AuthenticatorLocalUser to AuthenticatorLocalUserNoSignup
649        * signup.php: Actually enforce it. Still needs improvement, as the network
650          is still shown for signing up.
651
6522005-10-04 Francois Proulx <francois.proulx@gmail.com>
653        * Translated some error message in SQL abstraction
654        * Cleaned up error messages when starting from scratch
655        * Added link to install script, when the database is empty.
656        * Fixed initial data dump script
657
6582005-10-04 Benoit Grégoire  <bock@step.polymtl.ca>
659        * Remove a bunch of deprecated methods from the Node object,
660          document undocumented methods.
661        * Make the node id editable.  This allows the gateway "MAC address as node
662          ID" patch by London wireless to be usable with the standard auth server,
663          and to transition to using MAC address as node ID.
664        * Fix a saving problem with all the content types with some versions of PHP
665        * Add a new Content type:  IFrameRest.  This allows the result of a REST
666          style query returning HTML to be displayed in a HTML iframeset. Currently
667          supported are substitution of the node_id, the user_id and the last
668          display date in the get query.
669        * CVS version of the auth server should now be "reasonnably" safe to use in
670          production, so the 2005-09-01 notice is no longuer in effect.
671
6722005-10-04 Francois Proulx <francois.proulx@gmail.com>
673        * Translated signup page messages
674
6752005-09-27 Benoit Grégoire  <bock@step.polymtl.ca>
676        * Partial login page content manager support (Node only for now)
677
6782005-09-27 Philippe April  <philippe@ilesansfil.org>
679        * Guess the best language from what the browser sends,
680          otherwise use the default.
681
6822005-09-26 Francois Proulx <francois.proulx@gmail.com>
683        * Translated the few new sentences on the login page
684
6852005-09-26 Benoit Grégoire  <bock@step.polymtl.ca>
686        * login/index.php, stylesheet.css:  Make the create new account bigger, and
687          remove unnecessary words.
688
6892005-09-26 Francois Proulx <francois.proulx@gmail.com>
690        * Completed translations
691
6922005-09-26 Francois Proulx <francois.proulx@gmail.com>
693        * Fixed annoying bug in new google maps code
694
6952005-09-25 Francois Proulx <francois.proulx@gmail.com>
696        * Complete rewrite of Google maps code, now stands as a js class
697        * relooking of mapping stuff
698        * wrote basic "Find the closest hotspot" widget for canada geocoding only...
699        * fixed broken xml, damn blank lines...
700
7012005-09-25 Benoit Grégoire  <bock@step.polymtl.ca>
702        * Statistics:  At long last, the monster statistics commit.
703          We finally have a stable, documented and uniform codebase for statistics.
704          This resulted is removal of several functions in other classes too.
705          There are a few new reports, but mostly, each report is a lot more
706          flexible.
707          Still TODO:
708          - Security:  This is to be implemented directly in the Statistics class,
709            by forcing restrictions to the selected nodes and network.
710          - Support selecting multiple users for a report.
711            The code and SQL queries support it, but the UI doesn't. An easy and
712            quick way would be to simply parse a coma-separated list. Comment are
713            off course welcome!
714
7152005-09-25 Francois Proulx <francois.proulx@gmail.com>
716        * Updated initial SQL script to schema 29
717        * Remove useless includes in some files, preventing from using the "plugin"
718          contents
719
7202005-09-25 Philippe April  <philippe@ilesansfil.org>
721        * Make method getCurrentRealNode ORDER BY DESC so it picks
722          up the latest network name
723
7242005-09-20 Francois Proulx <francois.proulx@gmail.com>
725        * Changed the output layout of the Google Maps hotspots list
726        * Added "Loading" message on Google Maps
727
7282005-09-17 Francois Proulx <francois.proulx@gmail.com>
729        * Fixed forgotten reference to getNetwork in AuthLocalUser
730
7312005-09-17 Francois Proulx <francois.proulx@gmail.com>
732        * Fixed a few bugs in Radius class
733        * Improved syntax and completed 100% of French translations
734
7352005-09-17 Francois Proulx <francois.proulx@gmail.com>
736        * Fixed RADIUS bug #1287000
737
7382005-09-16 Francois Proulx <francois.proulx@gmail.com>
739        * Added Mail Classes to circumvent mb_send_mail UTF-8 problems
740        * This class provides UTF-8 mailing for validation e-mail, lost password,
741          lost username...
742        * Fixes reported bug where users would not receive validation email on
743          some servers
744
7452005-09-13 Francois Proulx <francois.proulx@gmail.com>
746        * Added bytes in words for online users
747
7482005-09-13 Francois Proulx <francois.proulx@gmail.com>
749        * Fixed bug in user stats
750
7512005-09-13 Francois Proulx <francois.proulx@gmail.com>
752        * Added access permissions for statistics.
753
7542005-09-12 Benoit Grégoire  <bock@step.polymtl.ca>
755        * schema_validate.php:  Fix a bug version 26.  The conversion of the old
756          account_origin as a parameter to the authenticator was wrong.  To fix it
757          manually if you already ran the script, you must quote the parameter in
758          column network_authenticator_params in the networks table.
759        * Network.php:  Fix improper quoting of Authenticator arguments.
760        * RssPressReview.php:  Make expansion of today's item optionnal.
761
7622005-09-11 Francois Proulx <francois.proulx@gmail.com>
763        * Fixed dependency check, found a workaround for the file_exists problem
764
7652005-09-11 Francois Proulx <francois.proulx@gmail.com>
766        * Added dependency check for Phlickr
767
7682005-09-11 Francois Proulx <francois.proulx@gmail.com>
769        * Fixed Flickr support
770        * Now using PEAR version of Phlickr
771        * Download the latest package and install like this: pear install
772          PhlickrXYZ.tar.gz
773
7742005-09-10 Francois Proulx <francois.proulx@gmail.com>
775        * Fixed dependency check
776
7772005-09-10 Francois Proulx <francois.proulx@gmail.com>
778        * Removed many blank lines after php tags
779        * added more checks, for dates etc...
780        * changed sorting mode
781
7822005-09-10 Benoit Grégoire  <bock@step.polymtl.ca>
783        * Add UI to add a new Network
784        * Improve UI to add a new Node and new Content
785
7862005-09-10 Philippe April  <philippe@ilesansfil.org>
787        * signup.php: Fixed bug in detecting is the user is already part of the
788          network.
789        * classes/{Authenticator,Network,Node}.php: isset, and issues preventing
790          users from logging out.
791        * add BASEPATH to most files with require_once
792        * Added dependency checking class
793        * Don't show the admin menu if user does not have access
794        * Got rid of user_log_detailed.html, using stats.php instead
795
7962005-09-10 Francois Proulx <francois.proulx@gmail.com>
797        * Automatically redirect user to login form when trying to access admin
798        * Added various isset, empty tests, vars init in stats (to avoid PHP
799          warning)
800
8012005-09-08 Philippe April  <philippe@ilesansfil.org>
802        * New stats system with graphs
803        * Changed the UI a bit to reflect this change
804        * Updated stylesheet
805
8062005-09-08 Benoit Grégoire  <bock@step.polymtl.ca>
807        * portal/index.php:  Custom portal redirect now operational.
808
8092005-09-08 Benoit Grégoire  <bock@step.polymtl.ca>
810        * MainUI:  Move call to garbage_collect() here.
811        * portal/index.php:  New feature:  Custom portal redirect.
812        * rework much of the logout code
813
8142005-09-07 Benoit Grégoire  <bock@step.polymtl.ca>
815        * login/index.php:  Fix getSplashOnlyUser() method call.
816
8172005-09-07 Benoit Grégoire  <bock@step.polymtl.ca>
818        * RssPressReview.php:  Fix z-index so the hovers will overlap the expanded
819          news.
820        * login/index.php:  Reorganise code to make it more legible and comment what
821          it does. Emphasise error messages and put them right above where they
822          clicked so users can actually see them.
823        * Security.php:  Remove deprecated login code
824        * Authenticator.php: Change calling convention for better encapsulation
825        * New feature:  Support multiple simultaneous logins if enabled in network
826          configuration
827        * New feature (in testing): Splash-only node support
828
8292005-09-05 Benoit Grégoire  <bock@step.polymtl.ca>
830        * include/common.php:  Add code to undo the effect of magic_quote if enabled
831          in the server config.  It is still strongly recommended to disable
832          magic_quote
833        * Node.php:  Add UI for splash only node and custom portal
834        * Update schema
835
8362005-09-04 Francois Proulx <francois.proulx@gmail.com>
837        * Removed update.php script ( should not have been in CVS )
838        * Moved authenticator require in Network getAuthenticator()
839
8402005-09-03 Philippe April  <philippe@ilesansfil.org>
841        * Schema change: Added last_paged column to nodes table
842        * Replaced HOTSPOT_NETWORK_NAME with hotspot_network_name in all templates
843        * s/Networt/Network/
844        * Fixed signing up and validation, typos
845
8462005-09-01 Benoit Grégoire  <bock@step.polymtl.ca>
847        WARNING:  DO NOT use the CVS auth server in production until further notice.
848        Massive internal changes are underway.
849        Use the release tagged 1.0m1 in production.
850        * Network abstraction mostly complete, including UI.
851          All that is missing is new network creation, network stakeholder UI and
852          testing.
853        * Cleanup the config file of all the now unneeded constants.
854          Note that the install script is currently broken.
855          There can now be multiple networks on the server.
856          The install script will have to make sure that there is at least one, with
857          one super-admin
858
8592005-08-31 Francois Proulx <francois.proulx@gmail.com>
860        * Fixed bug where node ID containing periods, whitespaces or underscores
861          would confuse PHP
862        * MD5 hash is used to make sur the http vars are unique
863        * This is only valid for Node administration
864
865NOTE:  the 1.0m1 release was tagged here
866
8672005-08-31 Benoit Grégoire  <bock@step.polymtl.ca>
868        * Node.php:  Fix node creation
869
8702005-08-31 Francois Proulx <francois.proulx@gmail.com>
871        * Fixed new node creation bug
872
8732005-08-29 Philippe April <philippe@ilesansfil.org>
874        * js/gmaps_hotspots_status_map.js: Fixed small bug in that makes prevents
875          IE to see the map properly.
876
8772005-08-22 Pascal Leclerc  <pascal@plec.ca>
878        * install.php, Change javascript to OnClick + dependencie note
879        * schema_validate.php, Fix broken DB update for install.php
880        * SmartyWifidog.php, Add automatic redirect to install.php if Smarty not
881          installed
882
8832005-08-22 Francois Proulx <francois.proulx@gmail.com>
884        * Added edit button for quickly accessing Content editing mode
885        * Changed the layout so the admin ui fits in a tighter space
886
8872005-08-21 Francois Proulx <francois.proulx@gmail.com>
888        * Added reference to new street address fields in mapping page and on status
889          template
890        * Fix bug on line 756 of RssPressReview , added check for empty var.
891        * Flickr support is broken, added  bug to sf.net tracker
892
8932005-08-21 Francois Proulx <francois.proulx@gmail.com>
894        * Node admin UI should now be completed.
895        * Minor bug fixes in Geocoder
896        * Merged node_owners and node_tech_officers table into node_stakeholders
897
8982005-08-19 Benoit Grégoire  <bock@step.polymtl.ca>
899        * New schema version
900        * install.php, tmp/magpie_cache/:  Move all magpie caches
901          to a central location, adjust install script to match.
902        * classes/MainUI.php:  Add $_REQUEST array output if debug_request is set as
903          a parameter to the page
904        * classes/Network.php, classes/Node.php:  Change content ordering to be most
905          recently subscribed first, this is a stopgap measure while waiting for
906          Content ordering to be explicitely settable.
907        * classes/Content/RssAggregator.php:  Full admin UI, some bug fixes
908        * lib/RssPressReview/RssPressReview.php: New version, adds isFeedAvailable()
909          and getFeedTitle() methods.
910          Fixes minor bugs
911
9122005-08-17 Pascal Leclerc  <pascal@plec.ca>
913    * Added install script + minor changes in schema_validate.php
914
9152005-08-15 Benoit Grégoire  <bock@step.polymtl.ca>
916        * Re-Run sync_sql_for_cvs.sh, did not run to completion last time.
917
9182005-08-15 Benoit Grégoire  <bock@step.polymtl.ca>
919        * Run sync_sql_for_cvs.sh
920        * sql/dump_initial_data_postgres.sh:  Fix a hardcoded reference to rss_url
921          which no longer exists
922        * .project:  Remove mistakenly commited file in last commit
923        * .cvsignore:  Add file to avoid previous error
924
9252005-08-12 Francois Proulx <francois.proulx@gmail.com>
926        * Added missing GisPoint fille to CVS
927        * Fixed some bugs
928        * Added Technical officer table
929        * Added technical officer management to node UI
930
9312005-08-12 Francois Proulx <francois.proulx@gmail.com>
932        * Changed config.php GMAPS_API_KEY to GMAPS_PUBLIC_API_KEY
933        * Added GMAPS_ADMIN_API_KEY, needed for admin UI
934        * This is a stupid limitation of the Google Maps API which matches the
935          complete URL path
936        * Added /classes/GisPoint.php class
937        * Will add geocode + Google Maps capabilities very soon
938        * Notice : the XML schema will change very soon...
939        * I will try to keep the streetAddress field intact so I won't break
940          backward compat.
941
9422005-08-12 Benoit Grégoire  <bock@step.polymtl.ca>
943        * classes/MainUI.php: Move the call to schema_validate() in MainUI's
944          constructor
945        * lib/RssPressReview/RssPressReview.php: Finish rewrite. Move there to
946          reflect it's independently maintained status
947        * wifidog/classes/Content/HotspotRss.php:  Delete the class, obsolete
948        * wifidog/classes/Content/RssAggregator.php:  Functionnal, but needs it's
949          admin UI written.
950        * wifidog/include/schema_validate.php:  Create the table structure for the
951          new RssAggregator.
952          Remove rss_url in nodes table, no longer needed.  Move it's data to the
953          new Content class.
954
9552005-08-11 Francois Proulx <francois.proulx@gmail.com>
956        * Refactored the Admin UI.
957        * I need to write the upload form and rewrite statistics
958
9592005-08-10 Francois Proulx <francois.proulx@gmail.com>
960        * More GIS stuff
961
9622005-08-10 Francois Proulx <francois.proulx@gmail.com>
963        * Added Geocoders
964          - /classes/AbstractGeocoder.php
965          - /classes/Geocoders/GeocoderCanada.php
966          - /classes/Geocoders/GeocoderUsa.php
967        * This will be used for enterring GIS data
968        * Coming in the next few days: set hotspot gis using Google Maps + Geocoding
969
9702005-01-25 Pascal Leclerc  <pascal@plec.ca>
971        * Fix hardcoded images path in classes/MainUI.php
972
9732005-07-25 Francois Proulx <francois.proulx@gmail.com>
974        * Fixed bug in hotspot_status , added htmlspecialchars();
975        * This solved the bug where ampersands would break the XML
976
9772005-07-17 Francois Proulx <francois.proulx@gmail.com>
978        * Fixed bugs in gen.sh, compile.sh locale scripts
979
9802005-07-12 Francois Proulx <francois.proulx@gmail.com>
981        * Changed XML element from hotspotsMetadata to hotspots and added networkUri
982          element to networkMetadata
983
9842005-07-12 Francois Proulx <francois.proulx@gmail.com>
985        * Fixed XML protocol for exchanging hotspots status.
986        * Should now be considered stable (stamped v1.0)
987        * Fixed hotspots status map to reflect the changes
988        * Added french translations
989
9902005-07-11 Francois Proulx <francois.proulx@gmail.com>
991        * Changed link to hotspots map using NON ssl because Google Keys are
992          sensitive to the whole path.
993
9942005-07-11 Benoit Grégoire  <bock@step.polymtl.ca>
995        * classes/RssPressReview.php: Begin rewrite.
996        * classes/MainUI.php: Add addFooterScript() function.
997        * venues_map.php:  Workaround the IE DOM problem.
998
9992005-07-05 Francois Proulx <francois.proulx@gmail.com>
1000        * Changed wording in hotspots status page added legend
1001
10022005-07-05 Francois Proulx <francois.proulx@gmail.com>
1003        * Minor adjustements to icon positionning
1004
10052005-07-05 Francois Proulx <francois.proulx@gmail.com>
1006        * Changed google maps marker icons
1007
10082005-07-05 Francois Proulx <francois.proulx@gmail.com>
1009        * Added missing elements in XML exchange format
1010        * Stable v1.0 for XML exchange format and Google Maps mapping
1011        * Added GMaps constants to config file
1012        * Unsmartied index.php , added link to map
1013        * Check config.php to set corresponding values
1014        * You can now use hotspot_status.php?format=XML along with xslt query string
1015          parament to convert your XML document
1016        * For this to work, You need to have activated XSLT ( see config file )
1017
10182005-07-05 Francois Proulx <francois.proulx@gmail.com>
1019        * Added Google Maps mapping venues_map.php
1020        * /js/venues_status_map.js  JavaScript code for Mapping
1021        * In beta : tested successfuly with 48 nodes in the Montreal area, loads in
1022          a snap
1023
10242005-07-03 Francois Proulx <francois.proulx@gmail.com>
1025        * Updated the XML venues status format ( version 1.0, once approved )
1026        * Added long / lat fields to nodes table ( for mapping purposes )
1027
10282005-06-17 Francois Proulx <francois.proulx@gmail.com>
1029        * Added IFrame and SimpleIFrame content types.
1030
10312005-06-28 Benoit Grégoire  <bock@step.polymtl.ca>
1032        * classes/Content/Langstring.php:  Bug fix:  Langstring was always
1033          non-persistent, no matter the checkbox.  Move the code to
1034          TrivialLangstring.php where it belongs.
1035
10362005-06-21 Benoit Grégoire  <bock@step.polymtl.ca>
1037        * portal/inted.php:  Implement the start button functionnality (maybe it
1038          would be better to call it "use the Internet").  From now on, once
1039          authenticated and when pressing the start button on the portal, the user
1040          will be sent to the page he originally tried to access.  A second window
1041          will be popped with the portal page so he can come back to it. The window
1042          is collapsed, and can be expanded back by clicking on the link. I tried
1043          to make it cross platform (and mostly did) but it's still buggy in IE.
1044
1045          At the same time, this fixes the goof reported by Rob Kelley of
1046          nycwireless.net
1047
1048        * portal/missing_original_url.php:  Displayed when the user tries to use the
1049          start button but for some reason the original url is unavailable
1050        * common.php:  New define CURRENT_REQUEST_URL, hopefully containing the full
1051          URL in the user's URL bar.
1052
1053
10542005-06-17 Francois Proulx <francois.proulx@gmail.com>
1055        * Removed forced Pattern Language on all hotspots
1056        * Do not show hotspot logo in portal page, only on login, until we find a
1057          better layout
1058
10592005-06-16 Francois Proulx <francois.proulx@gmail.com>
1060        * Added XML output format for hotspot_status.php
1061        * Rough draft v1.0
1062        * TODO move to different classes once stabilized
1063        * Can use XSLT, if activated ( XSLT_SUPPORT constant )
1064        * ie : http://wifidog-auth.org/hotspot_status.php?format=XML&xslt=http://wifidog-auth.org/xslt/hotspot_status.xsl
1065        * or simply : http://wifidog-auth.org/hotspot_status.php?format=XML
1066
10672005-06-06 Francois Proulx <francois.proulx@gmail.com>
1068        * Added long description field to content table
1069        * MUST use schema_validate
1070        * Modified Pattern Language to be more generic
1071        * resend changelog
1072
10732005-06-06 Francois Proulx <francois.proulx@gmail.com>
1074        * Made changes to Pattern Language ( Kate Armstrong )
1075
10762005-05-30 Philippe April <philippe@ilesansfil.org>
1077        * Show username in user_stats.php instead of user_id
1078          and in other admin pages
1079
10802005-05-30 Francois Proulx <francois.proulx@gmail.com>
1081        * Changed language selectbox name so it does not clash with ISF's domain
1082          cookie
1083        * Fixed setlocale algorithm in Locale.php
1084
10852005-05-29 Francois Proulx <francois.proulx@gmail.com>
1086        * Missing null check in validate.php
1087
10882005-05-27 Francois Proulx <francois.proulx@gmail.com>
1089        * Changed the signup process to make it smoother for users
1090        * The user will automatically be granted the 15 minutes if he's signing up
1091          at a real hotspot
1092        * If the user closes his browser during the 15 minutes and loses its
1093          session, we will regenerate it
1094        * Added big red message to the top of the portal page, warning user to
1095          validate as soon as possible
1096        * Fixed translation typos
1097
10982005-05-26 Benoit Grégoire  <bock@step.polymtl.ca>
1099        * Someone moved the fallback gettext functions definition (for when gettext
1100          isn't installed) inside the static setCurrentLocale method, completely
1101          breaking the system when PHP doesn't have gettext support.  This is an
1102          untested fix.
1103
11042005-05-24 Francois Proulx <francois.proulx@gmail.com>
1105        * Fixed bug in auth.php to let users go through when the click twice on the
1106          login button
1107        * Fixed bug in hotspot_log.php
1108
11092005-05-24 Francois Proulx <francois.proulx@gmail.com>
1110        * Added "Get access statistics" button to Node admin to get hotspot specific
1111          stats
1112        * Added search box in Users log to get a specific user stats quickly
1113
11142005-05-24 Francois Proulx <francois.proulx@gmail.com>
1115        * Fixed typo in some translations
1116        * Cleaned-up todos
1117
11182005-05-18 Francois Proulx <francois.proulx@gmail.com>
1119        * Added strip_tags in RssPreview ( some malformed HTML would break the page
1120          layout)
1121
11222005-05-16 Francois Proulx <francois.proulx@gmail.com>
1123        * Changed login message in MainUI to make it clearer what the login button
1124          will do
1125
11262005-05-13 Philippe April <philippe@ilesansfil.org>
1127        * Added deployment status to node_list
1128
11292005-05-11 Francois Proulx <francois.proulx@gmail.com>
1130        * Began writing user profiles
1131        * Added many methods to User class
1132        * Added node quota fields in DB ( bandwidth, throttling ...)
1133
11342005-05-10 Francois Proulx <francois.proulx@gmail.com>
1135        * Fixed Login link in signup page ( MainUI.php ) if the Session has gw_id,
1136          gw_address, gw_port show physical login link
1137
11382005-05-10 Francois Proulx <francois.proulx@gmail.com>
1139        * Added download button CSS class to style button
1140
11412005-05-10 Francois Proulx <francois.proulx@gmail.com>
1142        * Fixed wrong method name in File.php
1143        * Added strip tags to Langstring
1144        * Basic styling of content_admin table
1145
11462005-05-04 Francois Proulx <francois.proulx@gmail.com>
1147        * Fixed serialization issue ( flickr)
11482005-05-04 Francois Proulx <francois.proulx@gmail.com>
1149        * Improved caching
1150        * Wrote very basic gridview code for Flickr
1151
11522005-05-04 Francois Proulx <francois.proulx@gmail.com>
1153        * Implemented caching for Flickr
1154        * Need to contact Phlickr to see how we could do better, since serialize
1155          does not work OK on objects
1156
11572005-05-04 Francois Proulx <francois.proulx@gmail.com>
1158        * Fixed bug concerning Content-Length header
1159        * Changed default Unit size for setLocalFileSize to bytes
1160
11612005-05-04 Francois Proulx <francois.proulx@gmail.com>
1162        * Added BLOB support
1163        * modified file_download.php to support new header attributes
1164        * Added ImportLargeObject, UnlinkLargeObject to PG SQL abtraction
1165        * Make sure your PHP.ini contains the right value to allow big downloads
1166        * Check : http://ca3.php.net/manual/en/features.file-upload.common-pitfalls.php
1167        * ISF Live server is now configured to support 100 megabytes files
1168
11692005-05-04 Francois Proulx <francois.proulx@gmail.com>
1170        * Fixed CSS IE Bug
1171        * Fixed SQL query
1172        * NEED HELP FROM A WEB DESIGNER !!!!!
1173
11742005-05-03 Francois Proulx <francois.proulx@gmail.com>
1175        * Disabled logging in Pattern Language archives
1176
11772005-05-03 Francois Proulx <francois.proulx@gmail.com>
1178        * Having for SQL query... :-(
1179
11802005-05-02 Francois Proulx <francois.proulx@gmail.com>
1181        * PatternLanguage is now completed
1182
11832005-04-30 Francois Proulx <francois.proulx@gmail.com>
1184        * Logout button will now destroy session AND render token USED
1185
11862005-04-30 Francois Proulx <francois.proulx@gmail.com>
1187        * Fixed bug that could potentially let non owners add content in /content
1188          through content groups
1189        * Admin menu won't show node selector if the user is not owner of at least
1190          one hotspot
1191        * Added Width, height support for Picture
1192
11932005-04-30 Francois Proulx <francois.proulx@gmail.com>
1194        * Did my best for content styling ... ( it's 5h00 am )
1195
11962005-04-30 Francois Proulx <francois.proulx@gmail.com>
1197        * Updated sync_sql_for_cvs.sh
1198
11992005-04-30 François Proulx <francois.proulx@gmail.com>
1200        * ChangeLog entry missed by CVS ?!
1201        * Locale now decomposes the locale string by '_'
1202        * Now works on Mac OS X ( but you must use fr_CA, en_CA or fr_FR ... )
1203
12042005-04-30 François Proulx <francois.proulx@gmail.com>
1205        * Trying to solve RSS encoding bug...
1206        * Testing on live server
1207
12082005-04-29 François Proulx <francois.proulx@gmail.com>
1209        * Removed all inline unuseful javascript code on submit buttons
1210          onclick='submit()'
1211        * This conflicted with the actual click on the submit button in Safari
1212        * Fixed check in Network for isOwner, only check superAdmin
1213        * Fixed bug so you can't add an existing content group to itself (deadlock)
1214        * Started coding Pattern language narrative display
1215
12162005-04-29 François Proulx <francois.proulx@gmail.com>
1217        * Wrote User.php addcontent, removeContent, getAllContent()
1218        * Wrote Content.php subscrite() and unsubscribe()
1219        * Added parameters to getAllContent() in Node and Network
1220          (exclude_subscribed_content)
1221        * These will be used for subscribing a to some content
1222        * Pattern Language will be the first to use it
1223        * Online users lists
1224        * Fixed bugs in Node and Network ( isOwner check )
1225
12262005-04-28 François Proulx <francois.proulx@gmail.com>
1227        * Logout button build a query string containing gw_id, gw_address, gw_port
1228          ( if available ), so that a user at a physical hotspot will get the login
1229          page from the hotspot he is.
1230        * Fixed but in Locale ( did not propertly set the locale in the session )
1231
12322005-04-28 François Proulx <francois.proulx@gmail.com>
1233        * Added check in MainUI toolbar so that it won't show "NOT logged in ?"
1234          message when connect to a real hotspot ( not virtual )
1235        * This message confused many users ( they clicked and got the virtual login
1236          instead ! )
1237        * Hide adminstration features ( statistics, hotspot creation, network wide
1238          content etc...) from all but Super admins
1239        * Fixed getAllLocativeArtisticContent in Node.php added is_persistent check
1240        * Added $associate_existing_content parameter to processNewContentUI to
1241          allows reuse for existing content ( in ContentGroup )
1242        * Fixed bug in FlickrPhotoStream delete ( missing return from parent )
1243        * Added security check in all content classes ( ProcessAdminUI )
1244
12452005-04-26 François Proulx <francois.proulx@gmail.com>
1246        * Replaced show only content groups by show persistent
1247
12482005-04-26 François Proulx <francois.proulx@gmail.com>
1249        * Added missing /content directory
1250
12512005-04-26 François Proulx <francois.proulx@gmail.com>
1252        * Added /content/ for displaying all content elements
1253        * Logging is disable when viewing them
1254        * All content elements will expand
1255        * Pattern languages won't display everything ( special property )
1256          isExpandable
1257        * Added a link in portal pages to go to /content/
1258        * Added Show all contents button in content_admin.php
1259
12602005-04-27 Benoit Grégoire  <bock@step.polymtl.ca>
1261        * Content.php, ContentGroup.php:  All Content now implement the
1262          isDisplayableAt($node).  Used by the portal, if content has nothing
1263          displayabel, the entire content is skipped.
1264
12652005-04-27 Benoit Grégoire  <bock@step.polymtl.ca>
1266        * FlickrPhotostream.php:  Fix the object so it doesn't crash when flicker is
1267          disabled.
1268
12692005-04-27 Benoit Grégoire  <bock@step.polymtl.ca>
1270        * ContentGroup.php:  Fully functionnal content rotation engine, with all
1271          options supported. Rotation based on session may not be reliable if the
1272          user isn't truly logged in (from a node).
1273
12742005-04-26 François Proulx <francois.proulx@gmail.com>
1275        * Most of the missing translations
1276
12772005-04-26 François Proulx <francois.proulx@gmail.com>
1278        * Changed back File to non trivial
1279        * portal page stylesheet
1280
12812005-04-26 Benoit Grégoire  <bock@step.polymtl.ca>
1282        * ContentGroupElement.php:  It shouldn't be allowed to create a new content
1283          element in isolation.  Unfortunately the UI allows if for now.  Such
1284          content will now be deleted.
1285        * Locale:  Fix string selection algorithm to pick the right language.
1286        * Content:  Implement display logging.
1287
12882005-04-26 François Proulx <francois.proulx@gmail.com>
1289        * stylesheet rework
1290
12912005-04-26 François Proulx <francois.proulx@gmail.com>
1292        * Fixed wrong location for change password link
1293
12942005-04-25 François Proulx <francois.proulx@gmail.com>
1295        * Portal page styling
1296
12972005-04-26 Benoit Grégoire  <bock@step.polymtl.ca>
1298        * ContentGroup.php:  Previous fix didn't work.  New fix.
1299
13002005-04-26 Benoit Grégoire  <bock@step.polymtl.ca>
1301        * ContentGroup.php:  Make bad selection mode eror non-fatal.
1302
13032005-04-25 Benoit Grégoire  <bock@step.polymtl.ca>
1304        * Fix bug in ContentGroup enumeration
1305
13062005-04-25 François Proulx <francois.proulx@gmail.com>
1307        * More stylesheets work
1308
13092005-04-25 François Proulx <francois.proulx@gmail.com>
1310        * Much better stylesheet
1311
13122005-04-25 Benoit Grégoire  <bock@step.polymtl.ca>
1313        * UI fully functionnal
1314
13152005-04-25 François Proulx <francois.proulx@gmail.com
1316        * More interface work
1317
13182005-04-25 François Proulx <francois.proulx@gmail.com
1319        * Completed integration of new interface with new objects
1320
13212005-04-25 Benoit Grégoire  <bock@step.polymtl.ca>
1322        * Integration merge, should work, but there will be display problems
1323          everywhere.  Expect further commits today.
1324        * Almost 100% complete Network abstraction
1325        * Much better object encapsulation.  Deprecated methods not removed yet.
1326        * Add MainUI class.  Used to display the interface.  Inner workings still
1327          need work.
1328
13292005-04-23 François Proulx <francois.proulx@gmail.com>
1330        * Added Preferred Size support for Flickr pictures
1331
13322005-04-23 François Proulx <francois.proulx@gmail.com>
1333        * Completed missing translations
1334
13352005-04-23 François Proulx <francois.proulx@gmail.com>
1336        * Fixed bugs in File and EmbeddedContent
1337        * Completed first iteration of EmbeddedContent
1338        * Can now play multimedia content
1339        * Could not test fallback with my browser ( Safari and Firefox )
1340        * Need help to test content in different browser to see how it reacts...
1341
13422005-04-22 François Proulx <francois.proulx@gmail.com>
1343        * Fixed bug in FlickrPhotostream.php
1344        * Params did not match new methods requirements ( getUserByEmail )
1345        * Changed stylesheet class name for Flickr to match new changes
1346        * Fixed bugs in File
1347        * Wrote part of EmbeddedContent ( partially working )
1348        * TODO: add support for parameters and attributes in EmbeddedContent
1349
13502005-04-22 François Proulx <francois.proulx@gmail.com>
1351        * Fix schema version in François's commit
1352
13532005-04-21 François Proulx <francois.proulx@gmail.com>
1354        * Added explicit admin UI exceptions support for Flickr
1355        * Completed File and Picture objects
1356
13572005-04-20 François Proulx <francois.proulx@gmail.com>
1358        * Completed Flickr support ( explicit exceptions catching )
1359        * Most of File object is done
1360        * Fixed bug in generic_object_admin.php
1361        * changed stylesheet class tags for Flickr
1362
13632005-04-18 François Proulx <francois.proulx@gmail.com>
1364        * Added Flickr content support
1365        * Part of File object is done
1366
13672005-04-19 Benoit Grégoire  <bock@step.polymtl.ca>
1368        * Working (beta...) content manager and portal.
1369        * Add content preview mode
1370
13712005-04-18 Benoit Grégoire  <bock@step.polymtl.ca>
1372        * Hotspot and network content association, continue access control work.
1373        * hotspot_owner.php: Fix wrong assignement of user_id that prevented the
1374          script from working.
1375        * All files:  Remove whitespace and carriage return after the ?> closing
1376          tags.
1377
13782005-04-18 Benoit Grégoire  <bock@step.polymtl.ca>
1379        * Much more complete admin, initial access control work.
1380
13812005-04-15 Benoit Grégoire  <bock@step.polymtl.ca>
1382        * Support more of the content object model, do a half-decent CSS for the
1383          admin interface.
1384
13852005-04-14 Benoit Grégoire  <bock@step.polymtl.ca>
1386        * Content.php:  Use full langstring interface by default;
1387
13882005-04-14 Benoit Grégoire  <bock@step.polymtl.ca>
1389        * Content.php:  Fix db reference;
1390
13912005-04-14 Benoit Grégoire  <bock@step.polymtl.ca>
1392        * Fix Content object enumeration preventing usage of admin interface
1393        * Partial fix for RSS feed encoding (multiple feed aggregation still broken)
1394
13952005-04-14 Benoit Grégoire  <bock@step.polymtl.ca>
1396        * First part of the future content delivery infrastructure. Many files added
1397
13982005-04-01 François Proulx  <francois.proulx@gmail.com>
1399        * Modified gen.sh script to match UTF-8
1400        * Added PAP RADIUS encryption support ( asked by Paris Sans Fil )
1401
14022005-04-01 Benoit Grégoire  <bock@step.polymtl.ca>
1403        * wifidog/templates/auth_sources_selection.html:  Add missing file from
1404          Francois's commit.
1405
14062005-04-01 Philippe April <philippe@ilesansfil.org>
1407        * Fixed missing parenthesis in classes/User.php
1408        * Removed unused files
1409        * fixed schema_validate.php (typos)
1410
14112005-04-01 Francois Proulx  <francois.proulx@gmail.com>
1412        * EVERYTHING IS NOW UTF-8 YOU MUST EDIT YOUR FILES WITH AN UTF-8 COMPLIANT
1413          EDITOR
1414        * The database will be converted to UTF-8 (version 5)
1415        * Added select boxes ( or hidden ) html form elements to choose the network
1416          for signup, lost password, username
1417
14182005-04-01 Benoit Grégoire  <bock@step.polymtl.ca>
1419        * Add constraints to account_origin to detect errors on inserts.
1420        * Remove IDRC test server
1421
14222005-04-01 Philippe April <philippe@ilesansfil.org>
1423        * User.php: Add reference to $db global variable.
1424        * Tagged v0_1_0_alpha1
1425        * Removed spaces in AuthenticatorLocalUser.php
1426
14272005-03-31 Benoit Grégoire  <bock@step.polymtl.ca>
1428        * Remove spaces after php blocks in various files.
1429        * Temporarily fix single authentication source not present bug in login
1430          smarty template.  All other places where we select the network will be
1431          fixed tommorow.
1432        * Fix initial schema errors.
1433
14342005-03-31 Benoit Grégoire  <bock@step.polymtl.ca>
1435        * More RADIUS install documentation.
1436        * Fix schema_validate.php
1437
14382005-03-31 Francois Proulx  <francois.proulx@gmail.com>
1439        * Moved language definition
1440        * Moved e-mail subjects to User class ( each e-mail functions )
1441
14422005-03-31 Francois Proulx  <francois.proulx@gmail.com>
1443        * Added missing schema_validate.php modifs.
1444
14452005-03-31 Francois Proulx  <francois.proulx@gmail.com>
1446        * Added PEAR install procedure
1447
14482005-03-30 François Proulx  <francois.proulx@gmail.com>
1449        * Finished RADIUS authentication and accounting
1450        * Accounting Unique session ID is now based on the same token we use
1451        * Fixed all issues with lost_username, lost_password etc...
1452        * User class has new static function getUsersByEmail and getUsersByUsername
1453        * Added translations for new features
1454        * Translated the validation, lost password, username e-mails
1455        * Tested quite a bit, this version is considered stable
1456        * A few examples on how set different RADIUS or local authenticators can be
1457          found in the config.php
1458
14592005-03-29 François Proulx  <francois.proulx@gmail.com>
1460        * schema_validate.php : Modified schema : dropped e-mail + account unique
1461          index, dropped email not empty constraint
1462        * Schema is now at version 3
1463        * Coded RADIUS authentication
1464        * Modified templates to show a select box when more than one server is
1465          configured
1466        * Coded RADIUS accounting and backward compatibility accounting
1467        * Modified many statistics SQL queries to match new Users table
1468        * modified statistics templates to match user_id and account_origin
1469        * TODO : Fix lost_username and lost_password ( issue since we dropped the
1470          unique constraint on emails... )
1471        * TODO : Heavy testing possibly with remote RADIUS servers
1472
14732005-03-28 Benoit Grégoire  <bock@step.polymtl.ca>
1474        * sql:  Put initial data in a transaction, and specify the wifidog user so
1475          you do not have to su to it while using sync_sql_for_svs
1476
14772005-03-28 Benoit Grégoire  <bock@step.polymtl.ca>
1478        * common.php:  Add get_guid() function
1479        * validate_schema.php: New auto-upgrade script to allow autaumatic schema
1480          upgrade.  Note that you must still update dump_initial_data_postgres.sh
1481          and use sync_sql_for_cvs.sh so new users aren't left in the cold.
1482        * New class Authenticator (and subclasses):  Begin virtualizing the login
1483          process.
1484
14852005-03-24 Benoit Grégoire  <bock@step.polymtl.ca>
1486        * Statistics.php: Fix getMostGreedyUsers returning bad values when incoming
1487          and outgoing for all connections from a user have null values.
1488        * wifidog/local_content/default/portal.html: Fix layout so it resizes
1489          properly.  This in an interim measure.
1490        * Update schema.  This will allow automatic schema updates in the future.
1491          TO update a live server:
1492
1493      BEGIN;
1494      CREATE TABLE schema_info (
1495            tag text PRIMARY KEY,
1496            value text
1497          );
1498          INSERT INTO schema_info (tag, value) VALUES ('schema_version', '1');
1499          COMMIT;
1500
15012005-03-16 Matthew Asham <matthewa@bcwireless.net>
1502    * config.php: will use "local.config.php" instead, if present.  avoid cvs
1503      over-writing.
1504    * signup.php: if CUSTOM_SIGNUP_URL is defined, signup.php will re-direct.
1505      For integration with existing auth systems
1506    * hotspot_status.php: ob_clean may complain about buffering.  muted.
1507    * ./classes/RssPressReview.inc: if rss_source['url'] is blank, ignore the
1508      feed.
1509
15102005-02-22 Benoit Grégoire  <bock@step.polymtl.ca>
1511        * sql/dump_initial_data_postgres.sh, wifidog-postgres-initial-data.sql,
1512          wifidog-postgres-schema.sql:-Widen the connections size to fix int4
1513          wraparound problems.  To update a running server, execute the following
1514          sql sniplet:
1515
1516      BEGIN;
1517      ALTER TABLE connections RENAME incoming TO incoming_old;
1518      ALTER TABLE connections ADD COLUMN incoming int8;
1519      ALTER TABLE connections RENAME outgoing TO outgoing_old;
1520      ALTER TABLE connections ADD COLUMN outgoing int8;
1521      UPDATE connections set incoming=incoming_old, outgoing=outgoing_old;
1522      ALTER TABLE connections DROP COLUMN incoming_old;
1523      ALTER TABLE connections DROP COLUMN outgoing_old;
1524      COMMIT;
1525
1526        * wifidog/admin/hotspot.php: Missing file from phil's commit.
1527        * wifidog/locale/fr/LC_MESSAGES/messages.mo, messages.po:  New translation
1528          by Benoit St-André
1529
15302005-02-14 Philippe April <philippe@ilesansfil.org>
1531        * gw_message.php: the "activate" message was not properly defined and
1532          would cause an error to show up instead of the nice activate your account
1533          message
1534
15352005-02-14 Philippe April <philippe@ilesansfil.org>
1536        * wifidog/locale/gen.s: Was not working as expected, it will now get the
1537          gettext from smarty properly.
1538        * Updated TODO with ideas on making config better
1539
15402005-01-31 Benoit Grégoire  <bock@step.polymtl.ca>
1541        * wifidog/templates/hotspot_status.html:  Restore the number of nodes
1542        * wifidog/hotspot_status.php: Restore the number of nodes, add formatting
1543          and more information to the RSS feed.
1544
15452005-01-26 Philippe April <isf_lists@philippeapril.com>
1546        * Some kind of virtual login (we need to talk about this).
1547        * New User and Node classes
1548        * Modified all files to work with the classes.
1549        * Remove mgmt_helpers (all done in User class now)
1550
15512005-01-25 Benoit Grégoire  <bock@step.polymtl.ca>
1552        * classes/Node.php:  New file, untested code example
1553        * wifidog/admin/admin_common.php: Remove double-defined BASEPATH
1554
15552005-01-25 Philippe April <isf_lists@philippeapril.com>
1556        * Changed initial postgres inserts sql file, it wasn't working properly
1557
15582005-01-25 Pascal Leclerc  <pascal@plec.ca>
1559        * Added admin and owner administration pages
1560
15612005-01-23 Philippe April <isf_lists@philippeapril.com>
1562        * Added gateway error messages (validation period, etc.)
1563
15642005-01-20 Philippe April <isf_lists@philippeapril.com>
1565        * Modularized the admin interface, added functions
1566
15672005-01-18 Philippe April <isf_lists@philippeapril.com>
1568        * Smarty'ized more, I think it's done now
1569
15702005-01-12 Philippe April <isf_lists@philippeapril.com>
1571        * i18n and smarty'ized parts
1572
15732005-01-11 Benoit Grégoire  <bock@step.polymtl.ca>
1574        * INSTALL: Mandate PHP5
1575        * wifidog/hotspot_status.php: Allow export of the list as a RSS feed
1576        * wifidog/classes/RssPressReview.inc:  Make it truly functionnal.
1577        * wifidog/portal/index.php:  Support multiple RSS feeds.  The system will
1578          automatically pick the best 5 entries from all the feeds.  It will
1579          compensate for disparate publication intervals.  An entry from a feed that
1580          does not publish often will live longer than an entry from a feed that
1581          publishes very often.  If a feed doesn't have any entry that makes the
1582          cut, it will not appear at all.
1583        * wifidog/templates/hotspot_status.html:  Add link to the RSS version.
1584
15852005-01-11 Benoit Grégoire  <bock@step.polymtl.ca>
1586        * wifidog/config.php:  Add list of hotspot to network rss feed list (not yet
1587          functionnal)
1588        * wifidog/hotspot_status.php:  Allow RSS export of the list of deployed
1589          Hotspots.
1590        * wifidog/admin/incoming_outgoing_swap.php:  Script to swap incoming and
1591          outgoing in your data. Only use this if you had gateways before 1.0.2
1592          and wish to correct your logs before you upgrade.
1593        * wifidog/classes/RssPressReview.inc:  Missing file from previous commit.
1594        * wifidog/portal/index.php: Preliminary work to enable smart press review
1595          of multiple RSS feeds.
1596
15972005-01-10 Benoit Grégoire  <bock@step.polymtl.ca>
1598        * include/common.php: Fix SSL security warnings.  If SSL is enabled and the
1599          page was actually served over SSL, all media in the file will be served
1600          over SSL. Add a new define (BASE_NON_SSL_PATH) to allow us to make links
1601          that break out of SSL mode.  From now on, use the self adapting
1602          BASE_URL_PATH in most circumstance, BASE_SSL_PATH to enter SSL mode,
1603          and BASE_URL_PATH to break out of it.
1604
16052005-01-10 Benoit Grégoire  <bock@step.polymtl.ca>
1606        * admin/user_stats.php: Add three top tens to the statistics:  Top ten
1607          apetite for bandwidth, top ten travelers, most addicted users.
1608
16092005-01-04 Benoit Grégoire  <bock@step.polymtl.ca>
1610        * wifidog/local_content/default/hotspot_logo_banner.jpg: Make it much
1611          thinner.
1612        * wifidog/local_content/default/login.html: Remove announcements
1613        * wifidog/include/user_management_menu.php: Fix mailto:
1614        * wifidog/auth/index.php: Fix auth server part of the no data transmited
1615          statistics bug.
1616        * wifidog/admin/index.php: Add link to statistics
1617        * wifidog/admin/user_stats.php: Activate security.
1618        * wifidog/index.php: Make the distinction between the two hotspot status
1619          pages clearer.
1620
16212004-12-08 Benoit Grégoire  <bock@step.polymtl.ca>
1622        * wifidog/index.php: Add menu
1623        * wifidog/include/user_management_menu.php: Editorial change, make
1624          translateable
1625        * wifidog/portal/index.php:  Fix RSS feeds
1626
16272004-12-03 Benoit Grégoire  <bock@step.polymtl.ca>
1628        * wifidog/admin/user_stats.php,  wifidog/classes/Statistics.php:  Embryonic
1629          aggregate user stats.  Currently allows you to find out the rate at which
1630          your users subscribe.
1631        * wifidog/config.php, wifidog/local_content/default/login.html,
1632          wifidog/include/user_management_menu.php:  Add hotspot status page to
1633          login page.
1634        * wifidog/hotspot_status.php: Cosmetic
1635        * wifidog/admin/hotspot_log.php: Stats now need admin privileges
1636        * wifidog/index.php: Cosmetic.
1637
16382004-11-19 Benoit Grégoire  <bock@step.polymtl.ca>
1639        * TODO: Add email domains to blacklist
1640        * wifidog/config.php, wifidog/include/user_management_menu.php: Add tech
1641          support email address
1642        * wifidog/hotspot_status.php: List of HotSpots that are open with summary of
1643          information.  Designed to be included as part of another page.
1644        * wifidog/local_content/common/wifidog_logo_banner.gif: Add wifidog logo
1645        * wifidog/local_content/default/hotspot_logo_banner.jpg: Shrink the logo
1646          and write unknown hotspot, however this is still really ugly
1647        * wifidog/local_content/default/login.html, portal.html, stylesheet.css:
1648          Cosmetic fixes
1649        * wifidog/local_content/default/login.html.fr, portal.html.fr: Delete the
1650          files, this isn't the approach we will use for translation.
1651        * sql/wifidog-postgres-initial-data.sql, wifidog-postgres-schema.sql:
1652          Update with new node information structures.
1653
16542004-11-04 Benoit Grégoire  <bock@step.polymtl.ca>
1655        * wifidog/admin/hotspot_log.php: Add number of currently connected users
1656          here as well.
1657
16582004-11-03 Benoit Grégoire  <bock@step.polymtl.ca>
1659        * wifidog/ping/index.php: Log user-agent
1660        * extensive statistics work
1661        * sql/wifidog-postgres-schema.sql: Add description field for hotspots and
1662          log user-agent
1663
16642004-10-28 Benoit Grégoire  <bock@step.polymtl.ca>
1665        * sql/wifidog-postgres-schema.sql:  Add constraints to avoid empty string
1666          in email or user_id.
1667        * Some statistics fixes
1668
16692004-09-29 Alexandre Carmel-Veilleux <acv@acv.ca>
1670        * wifidog/admin/index.php: Integrated the changes contributed
1671          on the mailing list by Rikhardur EGILSSON (fname.lname@oecd.org),
1672          mainly a missing ' in some HTML.
1673
16742004-09-28 Yanik Crépeau <yanik@exScriptis.com>
1675    * wifidog/include/common.php: Added commented header with cvs
1676          keywords.
1677        * wifidog/include/common.php: Added commented code (not executing) for
1678          further testing with language/localization issues.
1679
16802004-09-27 Benoit Grégoire  <bock@step.polymtl.ca>
1681        * sql/wifidog-postgres-schema.sql:  Remove non SQL standard "COMMENT ON"
1682          comments
1683
16842004-09-27 Benoit Grégoire  <bock@step.polymtl.ca>
1685        * sql/wifidog-postgres-schema.sql:  Drop procedural language stuff
1686
16872004-09-27 Benoit Grégoire  <bock@step.polymtl.ca>
1688        * sql/wifidog-postgres-schema.sql:  Fix layout for the node_owners table
1689        * Begin integrating Patrick Tanguay's new layout and generate the css
1690          dynamically to allow for background images.
1691
16922004-09-22 Benoit Grégoire  <bock@step.polymtl.ca>
1693        * portal/index.php:  Fix users appearing online at every hotspot.
1694        * wifidog/classes/Style.php, wifidog/login/index.php:  Fix some potential
1695          cache problems and help with validation.
1696
16972004-09-18 Benoit Grégoire  <bock@step.polymtl.ca>
1698        * wifidog/config.php:  Add VALIDATION_GRACE_TIME configuration parameter.
1699        * wifidog/auth/index.php:  Move grace time date arithmetics to the database,
1700          fixes validation period not working.  Stop storing VALIDATION_FAILES
1701          status to the database.  Add check for validation period expiration at
1702          stage login, not just stage counters, this will fix one minute
1703          validation period.
1704        * wifidog/login/index.php:  Check validation period activation, and if
1705          period is expired, explain to the user instead of redirecting to the
1706          gateway.
1707        * wifidog/user_management/index.php:  Fix SQL error at new user registration.
1708
17092004-09-02 Benoit Grégoire  <bock@step.polymtl.ca>
1710        * wifidog/node_list.php: Complete the status page
1711        * Add images
1712        * Add hotspot creation date
1713
17142004-08-31 Benoit Grégoire  <bock@step.polymtl.ca>
1715        * sql/: Update the postgres schemas and add scripts to ease maintaining it.
1716        * sql/sync_sql_for_cvs.sh: Should you modify the schema in your db, run this
1717          script to the chances will be available in the cvs schemas and initial
1718          data.
1719        * sql/dump_initial_data_postgres.sh: This does the actual dump of the data
1720          in a runnable form.  Note that this needs to be edited manually if you add
1721          a new table requiring initial data.
1722        * INSTALL:  Update for postgres.  Somebody please test this.
1723
17242004-08-31 Benoit Grégoire  <bock@step.polymtl.ca>
1725        * wifidog/ping/index.php: Implement logging of which hotspot sent the
1726          heartbeat, from which ip and when.
1727        * wifidog/node_list.php:  Primitive but functionnal hotspot status page.
1728        * wifidog/include/user_management_menu.php:  Change menu labels
1729        * wifidog/local_content/default/login.html: Improve layout.  Someone needs
1730          to make this stylesheet correct, I took shortcuts...
1731        * wifidog/local_content/default/stylesheet.css:  Reduce H1 font size.
1732        * wifidog/user_management/index.php:  Display the menu, will eventually
1733          allow us to present proper help text.
1734
17352004-08-30 Benoit Grégoire  <bock@step.polymtl.ca>
1736        * Add link to original requested site.
1737        * wifidog/node_list.php:  New file.  Will become the main node status page.
1738
17392004-08-28 Benoit Grégoire  <bock@step.polymtl.ca>
1740        * Primitive network status available form the index page
1741        * Administrative security is implemented.
1742
17432004-08-28 Benoit Grégoire  <bock@step.polymtl.ca>
1744        * Fix big gaping security hole in login page (password would be ignored if
1745          the username was used to login)
1746        * PostgreSql port
1747        * Change the method to determine who is online
1748        * Stop keeping unused token once user successfully logs in.
1749        * Fix missing update of token update date.
1750        * Counters wouldn't get updated for stage=LOGOUT
1751        * wifidog/auth/index.php:  Added a Messages: response in addition to Auth:
1752          so we can know what the hell the server is up to.  Currently you need to
1753          run wifidog in debug level 7 to see it. That message should be parsed so
1754          it is visible in debug level 6.
1755        * wifidog/auth/index.php:   Fix code injection vulnerability.
1756
17572004-08-27 Benoit Grégoire  <bock@step.polymtl.ca>
1758        * SSL support and RSS improvement
1759        * Last commit tested with mysql support
1760
17612004-08-24 Pascal Leclerc  <pascal@plec.ca>
1762        * wifidog/admin/user_log.php: Add total to incoming and outgoing
1763        * Replace all SERVER_NAME by HTTP_HOST to fix non-standard server ports
1764
17652004-08-11 Benoit Grégoire  <bock@step.polymtl.ca>
1766        * wifidog/config.php: Add USER_MANAGEMENT_PAGE
1767        * wifidog/include/user_management_menu.php:  Code meant to deal with
1768          non-standard ports broke the menu.  Hopefully fixed.
1769        * Add alex's mising changelog entry...
1770
17712004-08-11 Alexandre Carmel-Veilleux <acv@acv.ca>
1772        * wifidog/ping/index.php: will now reply if the wifidog auth server is up.
1773          To be used by wifidog to do heartbeats.
1774
17752004-08-07 Benoit Grégoire  <bock@step.polymtl.ca>
1776        * Add code to import a NoCat user database (passwd).  The username will be
1777          generated from the first part of the email if the name was en email.
1778        * Change password hashing algorithm to make it compatible with NoCat (For
1779          the curious among you, the hashing algorithm is now:  take the md5
1780          digest in binary format of the password, and base64 encode it.
1781        * Table schema changed to accomodate newhash length (users.pass is now
1782          varchar(32))
1783        * The user is now allowed to login with either his username or his email.
1784
17852004-08-03 Pascal Leclerc  <pascal@plec.ca>
1786        * wifidog/classes/SmartyWifidog.php: Fix path validation bug, replace
1787          NODE_CONTENT_URL with NODE_CONTENT_PHP_RELATIVE_PATH
1788        * wifidog/classes/AbstractDb.php: Add class=warning for better display
1789        * wifidog/config.php: Add SYSTEM_PATH and test/fix non-standard server ports
1790
17912004-08-03 Benoit Grégoire  <bock@step.polymtl.ca>
1792        * Make gettext support optionnal, and define GETTEXT_AVAILABLE, will be set
1793          to true if gettext is available.  If false, blank _() and gettext()
1794          functions will be defined so the system still works.
1795
17962004-08-03 Benoit Grégoire  <bock@step.polymtl.ca>
1797        * Fix BASE_URL_PATH to properly detect non-standard server ports (hopefully).
1798
17992004-08-02 Benoit Grégoire  <bock@step.polymtl.ca>
1800        * wifidog-auth lives! New since the dark ages
1801        * Demo page to allow people to hack more easely on it
1802        * Support for multiple nodes.  TODO:  Merge with the database project.
1803        * Very cool local content architecture.  Every hotspot can have a folder in
1804          the local_content directory.  This folder can be filed by a single logo,
1805          leaving all the rest to the default content, or be completely custom
1806          (stylesheet, login page, portal page, header, etc.)
1807        * Everything in local content is templated with smarty, no problem with
1808          web designer wrecking havoc on the auth server.  You can edit everything
1809          in local_content/default even if you only speak html.
1810        * No need to set any path in the web server config files (that one was a
1811          bitch to implement)
1812        * RSS feed support (optionnal, with magpierss), one feed per node (url
1813          stored in the database, works great, but no gui to edit it yet) and one
1814          network-wide RSS feed.
1815        * All path are editable from the config file
1816        * "Productize" the thing, so it make sense for other groups to install it
1817          (the network name, url, default RSS, and such are set from the config
1818          file).
1819        * Put most strings in gettext calls for easy future translation.
1820        * User can request that the server send the validation email again
1821        * User can change password
1822        * User who forgot his username can have it mailed to him.
1823        * User who lost his password can ask the system to generate a new one and
1824          mail it to him.
1825        * Email is now a separate field to preserve user privacy.
1826        * Enforces (politely) that there are no duplicate emails in the database
1827        * Database abstraction layer with very nice debugging features (just append
1828          true at the end of the call, and you'll see the query, the results, the
1829          query plan and number of affected rows.  Also allow future upgrade to
1830          postgres.
1831        * Lots of other things I forgot.
Note: See TracBrowser for help on using the browser.