diff --git a/app/Http/Controllers/FundingController.php b/app/Http/Controllers/FundingController.php index 19d27d32a15151d8faf33df2fdf429eb10b14e86..7123b094a5b558b49dda8a78818cb875d617c1c0 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 354eff1d17f33af867ff1cf2eea3cf4cde885008..98a13ad927977a1e5eb2cd433cfd9888c122fb97 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 11c8580782de0d5b00788add215dfaea28a46b9b..47f9c425992a77982d0ae6be66c9d89b83496a74 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 39bee2e73d60b5f9900de32db7284fd91602a88f..7a3dd12d61dd52f72de7210d15f6d29d4a8a9444 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