} // __construct()
- function process_ajax_request()
+ public function process_ajax_request()
{
require_once 'HTML/AJAX/Server.php';
$fspot = new PHPFSPOT();
+ /* if no action is specified, no need to further process this
+ * function here.
+ */
+ if(!isset($_GET['action']))
+ return;
+
switch($_GET['action']) {
case 'showphoto':
if(isset($_GET['id']) && is_numeric($_GET['id'])) {
break;
case 'search':
- $fspot->startSearch($_GET['for'], $_GET['from'], $_GET['to'], $_GET['sort_order']);
+ $fspot->startSearch($_GET['for'], $_GET['sort_order'], $_GET['from'], $_GET['to']);
+
+ if((isset($_GET['from']) && $fspot->isValidDate($_GET['from'])) &&
+ (isset($_GET['to']) && $fspot->isValidDate($_GET['to']))) {
+ }
+ else {
+ $fspot->startSearch($_GET['for'], $_GET['sort_order']);
+ }
break;
case 'get_export':
+ /* $_GET['mode'] will be validated by getExport() */
$fspot->getExport($_GET['mode']);
break;
break;
case 'get_calendar_matrix':
- if(is_numeric($_GET['year']) && is_numeric($_GET['month']) &&
- is_numeric($_GET['day'])) {
+ if((is_numeric($_GET['year']) || !isset($_GET['year'])) &&
+ (is_numeric($_GET['month']) || !isset($_GET['month'])) &&
+ (is_numeric($_GET['day']) || !isset($_GET['day']))) {
$fspot->get_calendar_matrix($_GET['year'], $_GET['month'], $_GET['day']);
}
break;
} // process_ajax_request();
-}
+} // class PHPFSPOT_RPC
$rpc = new PHPFSPOT_RPC();
$rpc->process_ajax_request();