From edf0d4fbb7e9faa0da6e325e973d159373654216 Mon Sep 17 00:00:00 2001
From: Devin <devin@blackhat.co.za>
Date: Fri, 12 Oct 2018 17:48:20 +0200
Subject: [PATCH] added qrcode to the show page

---
 app/Http/Controllers/FundingController.php | 4 ++++
 app/Project.php                            | 6 ++++++
 monero/Wallet.php                          | 1 -
 resources/views/projects/show.blade.php    | 5 ++++-
 4 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/app/Http/Controllers/FundingController.php b/app/Http/Controllers/FundingController.php
index 19d27d3..7123b09 100644
--- a/app/Http/Controllers/FundingController.php
+++ b/app/Http/Controllers/FundingController.php
@@ -5,6 +5,8 @@ namespace App\Http\Controllers;
 use App\Deposit;
 use App\Project;
 use Illuminate\Http\Request;
+use Monero\Wallet;
+use SimpleSoftwareIO\QrCode\Facades\QrCode;
 
 class FundingController extends Controller
 {
@@ -36,10 +38,12 @@ class FundingController extends Controller
         $contributions = $project->deposits->count();
         $amountReceived = $project->deposits->sum('amount');
         $percentage = round($amountReceived / $project->target_amount * 100);
+        $qrcode = QrCode::format('png')->size(100)->generate($project->uri);
         return view('projects.show')
             ->with('project', $project)
             ->with('contributions', $contributions)
             ->with('percentage', $percentage)
+            ->with('qrcode', $qrcode)
             ->with('amount_received', $amountReceived);
     }
 }
diff --git a/app/Project.php b/app/Project.php
index 354eff1..98a13ad 100644
--- a/app/Project.php
+++ b/app/Project.php
@@ -3,6 +3,7 @@
 namespace App;
 
 use Illuminate\Database\Eloquent\Model;
+use Monero\Wallet;
 
 /**
  * App\Project
@@ -15,6 +16,7 @@ use Illuminate\Database\Eloquent\Model;
  * @property \Illuminate\Support\Carbon|null $updated_at
  * @property-read \Illuminate\Database\Eloquent\Collection|\App\Deposit[] $deposits
  * @property-read mixed $amount_received
+ * @property-read string $uri
  * @method static \Illuminate\Database\Eloquent\Builder|\App\Project whereCreatedAt($value)
  * @method static \Illuminate\Database\Eloquent\Builder|\App\Project whereId($value)
  * @method static \Illuminate\Database\Eloquent\Builder|\App\Project wherePaymentId($value)
@@ -36,4 +38,8 @@ class Project extends Model
     public function getAmountReceivedAttribute() {
         return $this->deposits->sum('amount');
     }
+
+    public function getUriAttribute() {
+        return 'monero:'.env('WALLET_ADDRESS').'tx_payment_id='.$this->payment_id;
+    }
 }
diff --git a/monero/Wallet.php b/monero/Wallet.php
index 11c8580..47f9c42 100644
--- a/monero/Wallet.php
+++ b/monero/Wallet.php
@@ -4,7 +4,6 @@ namespace Monero;
 
 use App\Project;
 use Carbon\Carbon;
-use jsonRPCClient;
 
 class Wallet
 {
diff --git a/resources/views/projects/show.blade.php b/resources/views/projects/show.blade.php
index 39bee2e..7a3dd12 100644
--- a/resources/views/projects/show.blade.php
+++ b/resources/views/projects/show.blade.php
@@ -1,3 +1,6 @@
 XMR {{$amount_received}} /  XMR {{$project->target_amount}} Target
 
-{{$contributions}} contributions made.  {{$percentage}}%
\ No newline at end of file
+{{$contributions}} contributions made.  {{$percentage}}%
+<br>
+
+{!! QrCode::size(400)->generate($project->uri); !!}
\ No newline at end of file
-- 
GitLab