issue #7327
This commit is contained in:
parent
229bce3904
commit
ca8b522bd3
@ -16,7 +16,24 @@ class Controller_api_restaurants extends Crunchbutton_Controller_Rest {
|
||||
}
|
||||
|
||||
private function _hours(){
|
||||
$ids = explode( ',', c::getPagePiece( 3 ) );
|
||||
$lat = $this->request()[ 'lat' ];
|
||||
$lon = $this->request()[ 'lon' ];
|
||||
$range = $this->request()[ 'range' ];
|
||||
|
||||
$ids = [];
|
||||
|
||||
if( $lat && $lon && $range ){
|
||||
$restaurants = Restaurant::byRange([
|
||||
'lat' => $_REQUEST['lat'],
|
||||
'lon' => $_REQUEST['lon'],
|
||||
'range' => $_REQUEST['range']
|
||||
]);
|
||||
foreach ($restaurants as $restaurant) {
|
||||
$ids[] = $restaurant->id_restaurant;
|
||||
}
|
||||
} else {
|
||||
$ids = explode( ',', c::getPagePiece( 3 ) );
|
||||
}
|
||||
$restaurants = [];
|
||||
foreach( $ids as $id ){
|
||||
$restaurant = Restaurant::o( $id );
|
||||
|
||||
@ -1050,6 +1050,7 @@ NGApp.controller( 'RestaurantCtrl', function ($scope, $http, $routeParams, $root
|
||||
// update if the restaurant is closed or open every 35 seconds
|
||||
var updateStatus = function(){
|
||||
updateRestaurantStatus = $timeout( function(){
|
||||
dateTime.reload();
|
||||
$scope.restaurant.open();
|
||||
$scope.restaurant.reloadHours( true, function(){
|
||||
var open = $scope.restaurant._open;
|
||||
|
||||
@ -7,8 +7,8 @@ var dateTime = {
|
||||
dateTime.update = function(){
|
||||
var time = _gmtServer.split( '/' );
|
||||
dateTime.now = new Date( Number(time[0]), Number(time[1]-1), Number(time[2]), Number(time[3]), Number(time[4]), ( Number(time[5]) + dateTime.timer ) ) ;
|
||||
dateTime.timer++;
|
||||
dateTime.gears = setTimeout( function(){ dateTime.update(); } ,1000);
|
||||
dateTime.timer++;
|
||||
dateTime.gears = setTimeout( function(){ dateTime.update(); }, 1000 );
|
||||
}
|
||||
|
||||
// This method will be called by phonegap at the 'resume' event
|
||||
@ -28,10 +28,10 @@ dateTime.reload = function(){
|
||||
_gmtServer = json.gmt;
|
||||
dateTime.timer = 0;
|
||||
if( dateTime.gears ){
|
||||
clearTimeout( dateTime.gears );
|
||||
clearTimeout( dateTime.gears );
|
||||
}
|
||||
dateTime.update();
|
||||
App.rootScope.$broadcast( 'appResume', false );
|
||||
App.rootScope.$broadcast( 'appResume', false );
|
||||
} ).error( function(){ window.location.reload(); } );
|
||||
}
|
||||
|
||||
|
||||
@ -203,7 +203,6 @@ var Restaurant = function(id) {
|
||||
var now_time = now.getTime();
|
||||
// loop to verify if it is open
|
||||
self._open = false;
|
||||
|
||||
if( self.hours && self.hours.length > 0 ){
|
||||
for( x in self.hours ){
|
||||
self._hasHours = true;
|
||||
@ -320,6 +319,7 @@ var Restaurant = function(id) {
|
||||
|
||||
// Check the restaurant cache age and reload the hours if it is necessary
|
||||
self.reloadHours = function( forceLoad, callback ){
|
||||
dateTime.reload();
|
||||
var load = false;
|
||||
var now = ( Math.floor( new Date().getTime() / 1000 ) );
|
||||
if( forceLoad ){
|
||||
|
||||
@ -206,16 +206,25 @@ NGApp.factory('RestaurantsService', function ($http, $rootScope, PositionsServic
|
||||
}
|
||||
|
||||
service.reloadAllHours = function( callback ){
|
||||
var ids = [];
|
||||
for ( var x in restaurants ) {
|
||||
ids.push( restaurants[x].id_restaurant );
|
||||
if( service.loadingHours ){
|
||||
return;
|
||||
}
|
||||
if( ids.length > 0 ){
|
||||
if( service.loadingHours ){
|
||||
return;
|
||||
var url = null;
|
||||
if( service.position.pos().lat() && service.position.pos().lon() ){
|
||||
url = App.service + 'restaurants/hours/?lat=' + service.position.pos().lat() + '&lon=' + service.position.pos().lon() + '&range=' + (service.position.range || 2 );
|
||||
} else {
|
||||
var ids = [];
|
||||
for ( var x in restaurants ) {
|
||||
ids.push( restaurants[x].id_restaurant );
|
||||
}
|
||||
if( ids.length > 0 ){
|
||||
url = App.service + 'restaurants/hours/' + ids.join( ',' );
|
||||
}
|
||||
|
||||
}
|
||||
dateTime.reload();
|
||||
if( url ){
|
||||
service.loadingHours = true;
|
||||
var url = App.service + 'restaurants/hours/' + ids.join( ',' );
|
||||
$http.get( url, {
|
||||
cache: false
|
||||
}).success(function ( hours ) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user