コード例 #1
0
ファイル: Helper.php プロジェクト: nicholasryan/CorePlus
	/**
	 * Function to record activity, ie: a page view.
	 *
	 * @static
	 *
	 */
	public static function RecordActivity(){

		$request = \PageRequest::GetSystemRequest();
		$view = $request->getView();

		if(!$view->record) return true;

		try{

			$processingtime = (round(Profiler::GetDefaultProfiler()->getTime(), 3) * 1000);

			$log = new \UserActivityModel();
			$log->setFromArray(
				[
					'datetime' => microtime(true),
					'session_id' => session_id(),
					'user_id' => \Core\user()->get('id'),
					'ip_addr' => REMOTE_IP,
					'useragent' => $request->useragent,
					'referrer' => $request->referrer,
					'type' => $_SERVER['REQUEST_METHOD'],
					'request' => $_SERVER['REQUEST_URI'],
					'baseurl' => $request->getBaseURL(),
					'status' => $view->error,
					'db_reads' => DatamodelProfiler::GetDefaultProfiler()->readCount(),
					'db_writes' => (DatamodelProfiler::GetDefaultProfiler()->writeCount() + 1),
					'processing_time' => $processingtime,
				]
			);

			if(defined('XHPROF_RUN') && defined('XHPROF_SOURCE')){
				$log->set('xhprof_run', XHPROF_RUN);
				$log->set('xhprof_source', XHPROF_SOURCE);
			}

			$log->save();
		}
		catch(\Exception $e){
			// I don't actually care if it couldn't save.
			// This could happen if the user refreshes the page twice with in a second.
			// (and with a system that responds in about 100ms, it's very possible).
			\Core\ErrorManagement\exception_handler($e);
		}
	}
コード例 #2
0
 public function actionLogAlbum()
 {
     $id = Yii::app()->request->getParam('id');
     $album = AlbumModel::model()->findByPk($id);
     if (!Yii::app()->user->isGuest) {
         $activity = new UserActivityModel();
         $activity->channel = 'wap';
         $activity->user_id = Yii::app()->user->getId();
         $activity->user_phone = Yii::app()->user->getState('phone');
         $activity->loged_time = date('Y-m-d H:i:s');
         $activity->activity = 'play_album';
         $activity->obj1_id = $album->id;
         $activity->obj1_name = $album->name;
         $activity->obj1_url_key = $album->url_key;
         $activity->obj2_id = $album->artist_id;
         $activity->obj2_name = $album->artist_name;
         $ret = $activity->save();
         if ($ret) {
             echo "1";
         } else {
             echo CHtml::errorSummary($activity);
         }
         Yii::app()->end();
     }
     echo '';
     Yii::app()->end();
 }