summaryrefslogtreecommitdiff
path: root/app/Http/Controllers/LinkController.php
blob: a9d343f8bba0602c9956a2171d06f481cf8019ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php                                                                                                                                                                                                                
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Helpers\CryptoHelper;

use Illuminate\Support\Facades\DB;
use App\Http\Controllers\Controller;

class LinkController extends Controller {
    /**
     * Shows the index page.
     *
     * @return Response
     */
    public function redirect(Request $request, $shortlink) {
  
	    $matomo = new \MatomoTracker( env('MATOMO_LINK_SHORTER_ID'), env('MATOMO_BACKEND_URL'));
	    $matomo->setTokenAuth( env('MATOMO_LINK_SHORTER_AUTH_TOKEN') );
	    #$matomo->setVisitorId( $matomo->getVisitorId() );
	    $matomo->setIp( $request->header('X_REAL_IP') );
	    $matomo->setUrl( $shortlink );
	    $matomo->setUrlReferrer( $request->server('HTTP_REFERER') );
	    $matomo->setBrowserLanguage( $request->server('HTTP_ACCEPT_LANGUAGE') );
	    $matomo->setUserAgent( $request->server('HTTP_USER_AGENT') );

	    #$data = DB::table('all_view')->select('name', 'shop', 'spirit_type', 'long_url')->where('url', $shortlink)->limit(1)->get()->first();
	    $data = DB::table('angebot')->select('name', 'shop', 'spirit_type', 'url as long_url')->where('short_url', $shortlink)->limit(1)->get()->first();

	    $matomo->doTrackPageView( $data->name . " - " . $data->shop );
	    $matomo->doTrackEvent("Redirect", "Shop", $data->shop);
	    $matomo->doTrackEvent("Redirect", "Name", $data->name);
	    $matomo->doTrackEvent("Redirect", "Spirit Type", $data->spirit_type);
	    $matomo->doTrackEvent("Redirect", "Short URL", env('LINK_SHORTER_BASE_DOMAIN') . $shortlink);
	    $matomo->doTrackEvent("Redirect", "Long URL", $data->long_url);
	    
	    #return response()->json($data);
	    return redirect()->away($data->long_url, 302);
    }
}