invoiceninja/app/Models/Invitation.php

54 lines
1.2 KiB
PHP
Raw Normal View History

2015-03-18 09:39:03 +10:00
<?php namespace App\Models;
2015-03-17 07:45:25 +10:00
2015-09-17 22:01:06 +03:00
use Utils;
2015-03-31 12:38:24 +03:00
use Illuminate\Database\Eloquent\SoftDeletes;
2015-03-17 07:45:25 +10:00
class Invitation extends EntityModel
{
2015-03-31 12:38:24 +03:00
use SoftDeletes;
protected $dates = ['deleted_at'];
2015-03-17 07:45:25 +10:00
public function invoice()
{
2015-04-16 22:57:12 +03:00
return $this->belongsTo('App\Models\Invoice')->withTrashed();
2015-03-17 07:45:25 +10:00
}
public function contact()
{
2015-03-31 12:38:24 +03:00
return $this->belongsTo('App\Models\Contact')->withTrashed();
2015-03-17 07:45:25 +10:00
}
public function user()
{
2015-03-23 16:52:01 +10:00
return $this->belongsTo('App\Models\User')->withTrashed();
2015-03-17 07:45:25 +10:00
}
public function account()
{
2015-03-31 12:38:24 +03:00
return $this->belongsTo('App\Models\Account');
2015-03-17 07:45:25 +10:00
}
public function getLink()
{
2015-07-02 23:21:29 +03:00
if (!$this->account) {
$this->load('account');
}
2015-04-28 23:13:52 +03:00
$url = SITE_URL;
$iframe_url = $this->account->iframe_url;
2015-05-19 22:14:00 +03:00
if ($iframe_url) {
2015-09-17 22:01:06 +03:00
return "{$iframe_url}/?{$this->invitation_key}";
} else if ($this->account->subdomain) {
2015-09-17 22:01:06 +03:00
$url = Utils::replaceSubdomain($url, $this->subdomain);
2015-04-28 23:13:52 +03:00
}
return "{$url}/view/{$this->invitation_key}";
2015-03-17 07:45:25 +10:00
}
2015-07-02 23:21:29 +03:00
public function getName()
{
return $this->invitation_key;
}
2015-03-17 07:45:25 +10:00
}