Merge pull request #5475 from turbo124/v5-develop

v5.1.48
This commit is contained in:
David Bomba 2021-04-20 07:28:40 +10:00 committed by GitHub
commit 06f08adaf2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 53 additions and 11 deletions

View File

@ -1 +1 @@
5.1.47
5.1.48

View File

@ -85,7 +85,6 @@ class SelfUpdateController extends BaseController
Artisan::call('clear-compiled');
Artisan::call('cache:clear');
// Artisan::call('debugbar:clear');
Artisan::call('route:clear');
Artisan::call('view:clear');
Artisan::call('config:clear');
@ -96,10 +95,17 @@ class SelfUpdateController extends BaseController
private function testWritable()
{
$directoryIterator = new \RecursiveDirectoryIterator(base_path());
$directoryIterator = new \RecursiveDirectoryIterator(base_path(), \RecursiveDirectoryIterator::SKIP_DOTS);
foreach (new \RecursiveIteratorIterator($directoryIterator) as $file) {
if(strpos($file->getPathname(), '.git') !== false)
continue;
// nlog($file->getPathname());
if ($file->isFile() && ! $file->isWritable()) {
throw new FilePermissionsFailure($file);
return false;
}
}

View File

@ -399,10 +399,10 @@ class TaskStatusController extends BaseController
*/
public function destroy(DestroyTaskStatusRequest $request, TaskStatus $task_status)
{
$this->task_status_repo->delete($task_status);
$task_status = $this->task_status_repo->delete($task_status);
return $this->itemResponse($task_status->fresh());
return $this->itemResponse($task_status);
}
/**

View File

@ -12,6 +12,7 @@
namespace App\Repositories;
use App\Models\Task;
use App\Models\TaskStatus;
/**
* Class for task status repository.
@ -21,10 +22,14 @@ class TaskStatusRepository extends BaseRepository
public function delete($task_status)
{
$ts = TaskStatus::where('company_id', $task_status->company_id)
->first();
$new_status = $ts ? $ts->id : null;
Task::where('status_id', $task_status->id)
->where('company_id', $task_status->company_id)
->update(['status_id' => null]);
->update(['status_id' => $new_status]);
parent::delete($task_status);
@ -36,9 +41,14 @@ class TaskStatusRepository extends BaseRepository
public function archive($task_status)
{
$task_status = TaskStatus::where('company_id', $task_status->company_id)
->first();
$new_status = $task_status ? $task_status->id : null;
Task::where('status_id', $task_status->id)
->where('company_id', $task_status->company_id)
->update(['status_id' => null]);
->update(['status_id' => $new_status]);
parent::archive($task_status);

View File

@ -153,6 +153,8 @@ class HtmlEngine
$data['$date'] = ['value' => $this->translateDate($this->entity->date, $this->entity->client->date_format(), $this->entity->client->locale()) ?: ' ', 'label' => ctrans('texts.credit_date')];
}
$data['$portal_url'] = ['value' => $this->invitation->getPortalLink(), 'label' =>''];
$data['$entity_number'] = &$data['$number'];
$data['$invoice.discount'] = ['value' => Number::formatMoney($this->entity_calc->getTotalDiscount(), $this->client) ?: ' ', 'label' => ctrans('texts.discount')];
$data['$discount'] = &$data['$invoice.discount'];

View File

@ -66,6 +66,30 @@ trait Inviteable
}
}
public function getPortalLink() :string
{
$domain = isset($this->company->portal_domain) ?: $this->company->domain();
switch ($this->company->portal_mode) {
case 'subdomain':
return $domain.'/client/';
break;
case 'iframe':
return $domain.'/client/';
//return $domain . $entity_type .'/'. $this->contact->client->client_hash .'/'. $this->key;
break;
case 'domain':
return $domain.'/client/';
break;
default:
return '';
break;
}
}
public function getAdminLink() :string
{
return $this->getLink().'?silent=true';

View File

@ -14,8 +14,8 @@ return [
'require_https' => env('REQUIRE_HTTPS', true),
'app_url' => rtrim(env('APP_URL', ''), '/'),
'app_domain' => env('APP_DOMAIN', ''),
'app_version' => '5.1.47',
'app_tag' => '5.1.47-release',
'app_version' => '5.1.48',
'app_tag' => '5.1.48-release',
'minimum_client_version' => '5.0.16',
'terms_version' => '1.0.1',
'api_secret' => env('API_SECRET', false),

View File

@ -135,7 +135,7 @@ class TaskStatusApiTest extends TestCase
])->delete('/api/v1/task_statuses/'.$this->encodePrimaryKey($this->task_status->id));
$arr = $response->json();
nlog($arr);
$this->assertTrue($arr['data']['is_deleted']);
}