Exemple #1
0
 public static function saveInteractionStats($system_interaction_id, $interaction, $Model_Interaction_Meta_Instagram = false, $extended = false)
 {
     // reset latest setting
     $query = \DB::update('tracking_log');
     $query->where('object_id', $system_interaction_id);
     $query->where('source', 'instagram');
     $query->value('is_latest', 0);
     $query->execute();
     $stats = array('photos' => 1, 'comment' => $interaction->comments->count, 'like' => $interaction->likes->count);
     if ($extended) {
         // $stats['xxx'] = $interaction->xxx;
     }
     // $VenueRecord = self::getOrCreateVenueRecord($system_interaction_id);
     foreach ($stats as $property => $value) {
         $time_key = date('Y_m_d_H');
         /*
         $record_hash = implode('_', array(
         	'ig',
         	$interaction->id,
         	$property,
         	$time_key
         ));
         */
         try {
             $Record = new \Model_Record();
             // $Record->record_hash = $record_hash;
             $Record->object_id = $system_interaction_id;
             $Record->property = $property;
             $Record->value = $value;
             $Record->datatype = 'absolute';
             $Record->save();
             // $VenueRecord->$property = $value;
         } catch (\Database_Exception $err) {
             // catch error. normally there shouldn't be an error, but in the development phase it's possible to have incomplete data, so errors could occur at this place.
             echo $err;
             exit;
             return $err;
         }
     }
     // $VenueRecord->save();
     // keep track of tracking...
     $Log = new \Model_Tracking_Log();
     $Log->object_id = $system_interaction_id;
     $Log->success = 1;
     $Log->is_latest = 1;
     $Log->source = 'instagram';
     $Log->save();
     if ($Model_Interaction_Meta_Instagram) {
         $Model_Interaction_Meta_Instagram->comments = $interaction->comments->count;
         $Model_Interaction_Meta_Instagram->link = $interaction->link;
         $Model_Interaction_Meta_Instagram->likes = $interaction->likes->count;
         $Model_Interaction_Meta_Instagram->save();
     }
     return $stats;
 }
Exemple #2
0
 public static function saveVenueStats($system_venue_id, $venue, $extended = false)
 {
     // reset latest setting
     $query = \DB::update('tracking_log');
     $query->where('object_id', $system_venue_id);
     $query->where('source', 'foursquare');
     $query->value('is_latest', 0);
     $query->execute();
     $stats = array('checkin' => $venue->stats->checkinsCount, 'checkin-unique' => $venue->stats->usersCount, 'review' => $venue->stats->tipCount, 'like' => $venue->likes->count, 'herenow' => isset($venue->herenow) ? $venue->herenow : 0);
     if ($extended) {
         $stats['rating'] = isset($venue->rating) ? $venue->rating * 100 : 0;
         $stats['price'] = isset($venue->price->tier) ? $venue->price->tier : 0;
         $stats['photos'] = $venue->photos->count;
         $stats['specials'] = $venue->specials->count;
         // $stats['herenow'] = $venue->hereNow->count;
         $stats['mayor'] = $venue->mayor->count;
     }
     $VenueRecord = self::getOrCreateVenueRecord($system_venue_id);
     foreach ($stats as $property => $value) {
         $time_key = date('Y_m_d_H');
         /*
         $record_hash = implode('_', array(
         	'4q',
         	$venue->id,
         	$property,
         	$time_key
         ));
         */
         try {
             $Record = new \Model_Record();
             // $Record->record_hash = $record_hash;
             $Record->object_id = $system_venue_id;
             $Record->property = $property;
             $Record->value = $value;
             $Record->datatype = 'absolute';
             $Record->save();
             $VenueRecord->{$property} = $value;
         } catch (\Database_Exception $err) {
             // catch error. normally there shouldn't be an error, but in the development phase it's possible to have incomplete data, so errors could occur at this place.
             return $err;
         }
     }
     $VenueRecord->save();
     // keep track of tracking...
     $Log = new \Model_Tracking_Log();
     $Log->object_id = $system_venue_id;
     $Log->success = 1;
     $Log->is_latest = 1;
     $Log->source = 'foursquare';
     $Log->save();
     return $stats;
 }