Merge pull request #1 from yoannsculo/master

post pull requests
add a new, dynamic, report page

This huge commit reworks the way the jobs offers are displayed to the user.
The new report offers some excitting new features:
	- dynamic column sorting;
	- dynamic column search:
		- the publication date can be search with the help of
			a calendar (it's pretty :);
		- the company type, the company name, the contract type
			and the offer source can be selected from a dropdown
			menu;
		- a dynamic text search can be made on the job title;
		- the job location can be filtered from an address (or just
			a city name) and a range;
		- the job salary can be filtered with a top and bottom boundary.
fixup! add a new, dynamic, report page
Report dynamic filtering: Review coding style.

Cosmetic changes are made to the www/js/dynamic.js file so it is more
consistant with itself:
 -  the if/then/else, for, ... statments are written:
	if (expression) {	for (var i=init; stop_condition; incr) {
		block;			block;
	}			}
 - the switch statments:
	switch (expression)
	{
	case 0:
		block;
		[break;]
	case 1:
		...
	}
 - the functions:
	var foo = function(args) {
		block;
	};
Report dynamic filtering: Fix issue #11

Issue #11: "Embed the jquery[-ui] into the project."
Add the minified js and css files for jQuery-ui, including
jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js,
jquery.ui.datepicker.js and jquery.ui.slider.js with the css style
"smoothness."
Report dynamic filtering: add config persistance.

Addresse the feature described in issue #12. "Store the distance range
as a configuration parameter." Futhermore, Improve the interface of the
location filter by updating the filter feedback (reading "Max: x km")
when the cursor is moved and updating the filtering of the job offers
only when the cursor is released.
fixup! Report dynamic filtering: add config persistance.
Report js filtering: filter NA salaries.

Add a checkbox in the salary filter form. When this checkbox is
unchecked, the job offers without a salary are hidden.
This parameter (the checkness of this new checkbox) is conserved
accros uses.
Report js filtering: fix issue #15 (salary comput).

Update the regexp reading the salary to be more resilient to strange
values (like "26400k€" instead of "26.4k€" or "26400€").
Does still not read salary not expressed in €/year or k€/year.
Report js filtering: form creation optimization.

Remove HTML "width" and "size" attributs from created <input type="text">
since those attributs seems to be bogus with jQuery. See jQuery bug #12429
<http://bugs.jquery.com/ticket/12429>.
Report js filtering: add cache to SalaryFilter.

Add a cache system (currently, a javascript array with string index,
which is in fact an hashmap) to the computation of the salary range of
an offer from its salary description.
Additionnally, update the table only when the salary handles are
released and not at every change. The salary filter feedback (reading
"De xk€ à yk€") is still updated at each change.
Additionnally, fix doc.
Report js filtering: filter NA salaries.

Add a checkbox in the salary filter form. When this checkbox is
unchecked, the job offers without a salary are hidden.
This parameter (the checkness of this new checkbox) is conserved
accros uses.
Report js filtering: fix issue #15 (salary comput).

Update the regexp reading the salary to be more resilient to strange
values (like "26400k€" instead of "26.4k€" or "26400€").
Does still not read salary not expressed in €/year or k€/year.
Report js filtering: form creation optimization.

Remove HTML "width" and "size" attributs from created <input type="text">
since those attributs seems to be bogus with jQuery. See jQuery bug #12429
<http://bugs.jquery.com/ticket/12429>.
Report js filtering: add cache to SalaryFilter.

Add a cache system (currently, a javascript array with string index,
which is in fact an hashmap) to the computation of the salary range of
an offer from its salary description.
Additionnally, update the table only when the salary handles are
released and not at every change. The salary filter feedback (reading
"De xk€ à yk€") is still updated at each change.
Additionnally, fix doc.
Report js filtering: optimize the filter apply.

Change the way the filters are applied. Now, changing a filter parameter
(e.g. Source from "Tout" to "APEC") only applies the javascript related
filter (e.g. SourceFilter.apply()).
The dynamic report gains in feedback, still work to do though.
Report js filtering: add pagination.

Add the js and css files simplePagination from
<http://flaviusmatis.github.com>.
Add a pagination system:
	* the filters only test the first n offers until the page is
		full;
	* when the user clicks on the "Next" button, the next offers
		are tested until the new page is full;
	* when the user changes the filter parameters, the system
		returns to page #1.
NB : the number of offers per page is currently given by
	MasterFilter.priv_rows_per_page
in file
	www/js/dynamic.js
Report js filtered: fix bug on NA checkbox.

Fix the way the "NA" checkbox was read so it now works.
Report js filtering: update report generation.
Report js filtering: optimize the filter apply.

Change the way the filters are applied. Now, changing a filter parameter
(e.g. Source from "Tout" to "APEC") only applies the javascript related
filter (e.g. SourceFilter.apply()).
The dynamic report gains in feedback, still work to do though.