This commit is contained in:
Dennis Eichhorn 2024-01-02 23:34:17 +00:00
parent c075c54438
commit 52c3d479bf
39 changed files with 377 additions and 2055 deletions

View File

@ -422,75 +422,75 @@
}
}
},
"fleetmgmt_attr_type": {
"name": "fleetmgmt_attr_type",
"fleetmgmt_vehicle_attr_type": {
"name": "fleetmgmt_vehicle_attr_type",
"fields": {
"fleetmgmt_attr_type_id": {
"name": "fleetmgmt_attr_type_id",
"fleetmgmt_vehicle_attr_type_id": {
"name": "fleetmgmt_vehicle_attr_type_id",
"type": "INT",
"null": false,
"primary": true,
"autoincrement": true
},
"fleetmgmt_attr_type_name": {
"name": "fleetmgmt_attr_type_name",
"fleetmgmt_vehicle_attr_type_name": {
"name": "fleetmgmt_vehicle_attr_type_name",
"type": "VARCHAR(255)",
"null": false,
"unique": true
},
"fleetmgmt_attr_type_datatype": {
"name": "fleetmgmt_attr_type_datatype",
"fleetmgmt_vehicle_attr_type_datatype": {
"name": "fleetmgmt_vehicle_attr_type_datatype",
"type": "INT(11)",
"null": false
},
"fleetmgmt_attr_type_fields": {
"name": "fleetmgmt_attr_type_fields",
"fleetmgmt_vehicle_attr_type_fields": {
"name": "fleetmgmt_vehicle_attr_type_fields",
"type": "INT(11)",
"null": false
},
"fleetmgmt_attr_type_custom": {
"name": "fleetmgmt_attr_type_custom",
"fleetmgmt_vehicle_attr_type_custom": {
"name": "fleetmgmt_vehicle_attr_type_custom",
"type": "TINYINT(1)",
"null": false
},
"fleetmgmt_attr_type_required": {
"fleetmgmt_vehicle_attr_type_required": {
"description": "Every vehicle must have this attribute type if set to true.",
"name": "fleetmgmt_attr_type_required",
"name": "fleetmgmt_vehicle_attr_type_required",
"type": "TINYINT(1)",
"null": false
},
"fleetmgmt_attr_type_pattern": {
"fleetmgmt_vehicle_attr_type_pattern": {
"description": "This is a regex validation pattern.",
"name": "fleetmgmt_attr_type_pattern",
"name": "fleetmgmt_vehicle_attr_type_pattern",
"type": "VARCHAR(255)",
"null": false
}
}
},
"fleetmgmt_attr_type_l11n": {
"name": "fleetmgmt_attr_type_l11n",
"fleetmgmt_vehicle_attr_type_l11n": {
"name": "fleetmgmt_vehicle_attr_type_l11n",
"fields": {
"fleetmgmt_attr_type_l11n_id": {
"name": "fleetmgmt_attr_type_l11n_id",
"fleetmgmt_vehicle_attr_type_l11n_id": {
"name": "fleetmgmt_vehicle_attr_type_l11n_id",
"type": "INT",
"null": false,
"primary": true,
"autoincrement": true
},
"fleetmgmt_attr_type_l11n_title": {
"name": "fleetmgmt_attr_type_l11n_title",
"fleetmgmt_vehicle_attr_type_l11n_title": {
"name": "fleetmgmt_vehicle_attr_type_l11n_title",
"type": "VARCHAR(255)",
"null": false
},
"fleetmgmt_attr_type_l11n_type": {
"name": "fleetmgmt_attr_type_l11n_type",
"fleetmgmt_vehicle_attr_type_l11n_type": {
"name": "fleetmgmt_vehicle_attr_type_l11n_type",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_type",
"foreignKey": "fleetmgmt_attr_type_id"
"foreignTable": "fleetmgmt_vehicle_attr_type",
"foreignKey": "fleetmgmt_vehicle_attr_type_id"
},
"fleetmgmt_attr_type_l11n_lang": {
"name": "fleetmgmt_attr_type_l11n_lang",
"fleetmgmt_vehicle_attr_type_l11n_lang": {
"name": "fleetmgmt_vehicle_attr_type_l11n_lang",
"type": "VARCHAR(2)",
"null": false,
"foreignTable": "language",
@ -498,92 +498,92 @@
}
}
},
"fleetmgmt_attr_value": {
"name": "fleetmgmt_attr_value",
"fleetmgmt_vehicle_attr_value": {
"name": "fleetmgmt_vehicle_attr_value",
"fields": {
"fleetmgmt_attr_value_id": {
"name": "fleetmgmt_attr_value_id",
"fleetmgmt_vehicle_attr_value_id": {
"name": "fleetmgmt_vehicle_attr_value_id",
"type": "INT",
"null": false,
"primary": true,
"autoincrement": true
},
"fleetmgmt_attr_value_default": {
"name": "fleetmgmt_attr_value_default",
"fleetmgmt_vehicle_attr_value_default": {
"name": "fleetmgmt_vehicle_attr_value_default",
"type": "TINYINT(1)",
"null": false
},
"fleetmgmt_attr_value_valueStr": {
"name": "fleetmgmt_attr_value_valueStr",
"fleetmgmt_vehicle_attr_value_valueStr": {
"name": "fleetmgmt_vehicle_attr_value_valueStr",
"type": "VARCHAR(255)",
"null": true,
"default": null
},
"fleetmgmt_attr_value_valueInt": {
"name": "fleetmgmt_attr_value_valueInt",
"fleetmgmt_vehicle_attr_value_valueInt": {
"name": "fleetmgmt_vehicle_attr_value_valueInt",
"type": "INT(11)",
"null": true,
"default": null
},
"fleetmgmt_attr_value_valueDec": {
"name": "fleetmgmt_attr_value_valueDec",
"fleetmgmt_vehicle_attr_value_valueDec": {
"name": "fleetmgmt_vehicle_attr_value_valueDec",
"type": "DECIMAL(19,5)",
"null": true,
"default": null
},
"fleetmgmt_attr_value_valueDat": {
"name": "fleetmgmt_attr_value_valueDat",
"fleetmgmt_vehicle_attr_value_valueDat": {
"name": "fleetmgmt_vehicle_attr_value_valueDat",
"type": "DATETIME",
"null": true,
"default": null
},
"fleetmgmt_attr_value_unit": {
"name": "fleetmgmt_attr_value_unit",
"fleetmgmt_vehicle_attr_value_unit": {
"name": "fleetmgmt_vehicle_attr_value_unit",
"type": "VARCHAR(255)",
"null": false
},
"fleetmgmt_attr_value_deptype": {
"name": "fleetmgmt_attr_value_deptype",
"fleetmgmt_vehicle_attr_value_deptype": {
"name": "fleetmgmt_vehicle_attr_value_deptype",
"type": "INT(11)",
"null": true,
"default": null,
"foreignTable": "fleetmgmt_attr_type",
"foreignKey": "fleetmgmt_attr_type_id"
"foreignTable": "fleetmgmt_vehicle_attr_type",
"foreignKey": "fleetmgmt_vehicle_attr_type_id"
},
"fleetmgmt_attr_value_depvalue": {
"name": "fleetmgmt_attr_value_depvalue",
"fleetmgmt_vehicle_attr_value_depvalue": {
"name": "fleetmgmt_vehicle_attr_value_depvalue",
"type": "INT(11)",
"null": true,
"default": null,
"foreignTable": "fleetmgmt_attr_value",
"foreignKey": "fleetmgmt_attr_value_id"
"foreignTable": "fleetmgmt_vehicle_attr_value",
"foreignKey": "fleetmgmt_vehicle_attr_value_id"
}
}
},
"fleetmgmt_attr_value_l11n": {
"name": "fleetmgmt_attr_value_l11n",
"fleetmgmt_vehicle_attr_value_l11n": {
"name": "fleetmgmt_vehicle_attr_value_l11n",
"fields": {
"fleetmgmt_attr_value_l11n_id": {
"name": "fleetmgmt_attr_value_l11n_id",
"fleetmgmt_vehicle_attr_value_l11n_id": {
"name": "fleetmgmt_vehicle_attr_value_l11n_id",
"type": "INT",
"null": false,
"primary": true,
"autoincrement": true
},
"fleetmgmt_attr_value_l11n_title": {
"name": "fleetmgmt_attr_value_l11n_title",
"fleetmgmt_vehicle_attr_value_l11n_title": {
"name": "fleetmgmt_vehicle_attr_value_l11n_title",
"type": "VARCHAR(255)",
"null": false
},
"fleetmgmt_attr_value_l11n_value": {
"name": "fleetmgmt_attr_value_l11n_value",
"fleetmgmt_vehicle_attr_value_l11n_value": {
"name": "fleetmgmt_vehicle_attr_value_l11n_value",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_value",
"foreignKey": "fleetmgmt_attr_value_id"
"foreignTable": "fleetmgmt_vehicle_attr_value",
"foreignKey": "fleetmgmt_vehicle_attr_value_id"
},
"fleetmgmt_attr_value_l11n_lang": {
"name": "fleetmgmt_attr_value_l11n_lang",
"fleetmgmt_vehicle_attr_value_l11n_lang": {
"name": "fleetmgmt_vehicle_attr_value_l11n_lang",
"type": "VARCHAR(2)",
"null": false,
"foreignTable": "language",
@ -605,15 +605,15 @@
"name": "fleetmgmt_vehicle_attr_default_type",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_type",
"foreignKey": "fleetmgmt_attr_type_id"
"foreignTable": "fleetmgmt_vehicle_attr_type",
"foreignKey": "fleetmgmt_vehicle_attr_type_id"
},
"fleetmgmt_vehicle_attr_default_value": {
"name": "fleetmgmt_vehicle_attr_default_value",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_value",
"foreignKey": "fleetmgmt_attr_value_id"
"foreignTable": "fleetmgmt_vehicle_attr_value",
"foreignKey": "fleetmgmt_vehicle_attr_value_id"
}
}
},
@ -638,16 +638,16 @@
"name": "fleetmgmt_vehicle_attr_type",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_type",
"foreignKey": "fleetmgmt_attr_type_id"
"foreignTable": "fleetmgmt_vehicle_attr_type",
"foreignKey": "fleetmgmt_vehicle_attr_type_id"
},
"fleetmgmt_vehicle_attr_value": {
"name": "fleetmgmt_vehicle_attr_value",
"type": "INT(11)",
"null": true,
"default": null,
"foreignTable": "fleetmgmt_attr_value",
"foreignKey": "fleetmgmt_attr_value_id"
"foreignTable": "fleetmgmt_vehicle_attr_value",
"foreignKey": "fleetmgmt_vehicle_attr_value_id"
}
}
},
@ -886,15 +886,15 @@
"name": "fleetmgmt_driver_attr_default_type",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_type",
"foreignKey": "fleetmgmt_attr_type_id"
"foreignTable": "fleetmgmt_driver_attr_type",
"foreignKey": "fleetmgmt_driver_attr_type_id"
},
"fleetmgmt_driver_attr_default_value": {
"name": "fleetmgmt_driver_attr_default_value",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_value",
"foreignKey": "fleetmgmt_attr_value_id"
"foreignTable": "fleetmgmt_driver_attr_value",
"foreignKey": "fleetmgmt_driver_attr_value_id"
}
}
},
@ -919,16 +919,16 @@
"name": "fleetmgmt_driver_attr_type",
"type": "INT(11)",
"null": false,
"foreignTable": "fleetmgmt_attr_type",
"foreignKey": "fleetmgmt_attr_type_id"
"foreignTable": "fleetmgmt_driver_attr_type",
"foreignKey": "fleetmgmt_driver_attr_type_id"
},
"fleetmgmt_driver_attr_value": {
"name": "fleetmgmt_driver_attr_value",
"type": "INT(11)",
"null": true,
"default": null,
"foreignTable": "fleetmgmt_attr_value",
"foreignKey": "fleetmgmt_attr_value_id"
"foreignTable": "fleetmgmt_driver_attr_value",
"foreignKey": "fleetmgmt_driver_attr_value_id"
}
}
},
@ -942,8 +942,8 @@
"primary": true,
"autoincrement": true
},
"fleetmgmt_driver_media_vehicle": {
"name": "fleetmgmt_driver_media_vehicle",
"fleetmgmt_driver_media_driver": {
"name": "fleetmgmt_driver_media_driver",
"type": "INT",
"null": false,
"foreignTable": "fleetmgmt_driver",

View File

@ -0,0 +1,15 @@
[
{
"name": "license_classes",
"l11n": {
"en": "License classes",
"de": "Führerscheinklassen"
},
"value_type": 2,
"is_custom_allowed": true,
"validation_pattern": "",
"is_required": false,
"default_value": "",
"values": []
}
]

View File

@ -47,16 +47,27 @@ final class Installer extends InstallerAbstract
{
parent::install($app, $info, $cfgHandler);
/* Attributes */
$fileContent = \file_get_contents(__DIR__ . '/Install/attributes.json');
/* Vehicle Attributes */
$fileContent = \file_get_contents(__DIR__ . '/Install/vehicle_attributes.json');
if ($fileContent === false) {
return;
}
/** @var array $attributes */
$attributes = \json_decode($fileContent, true);
$attrTypes = self::createAttributeTypes($app, $attributes);
$attrValues = self::createAttributeValues($app, $attrTypes, $attributes);
$attrTypes = self::createVehicleAttributeTypes($app, $attributes);
$attrValues = self::createVehicleAttributeValues($app, $attrTypes, $attributes);
/* Driver Attributes */
$fileContent = \file_get_contents(__DIR__ . '/Install/driver_attributes.json');
if ($fileContent === false) {
return;
}
/** @var array $attributes */
$attributes = \json_decode($fileContent, true);
$attrTypes = self::createDriverAttributeTypes($app, $attributes);
$attrValues = self::createDriverAttributeValues($app, $attrTypes, $attributes);
/* Fuel types */
$fileContent = \file_get_contents(__DIR__ . '/Install/fueltype.json');
@ -69,7 +80,7 @@ final class Installer extends InstallerAbstract
$fuelTypes = self::createFuelTypes($app, $types);
/* Vehicle types */
$fileContent = \file_get_contents(__DIR__ . '/Install/vehicletype.json');
$fileContent = \file_get_contents(__DIR__ . '/Install/vehicle_type.json');
if ($fileContent === false) {
return;
}
@ -78,18 +89,18 @@ final class Installer extends InstallerAbstract
$types = \json_decode($fileContent, true);
$vehicleTypes = self::createVehicleTypes($app, $types);
/* Inspection types */
$fileContent = \file_get_contents(__DIR__ . '/Install/inspectiontype.json');
/* Vehicle Inspection types */
$fileContent = \file_get_contents(__DIR__ . '/Install/vehicle_inspectiontype.json');
if ($fileContent === false) {
return;
}
/** @var array $types */
$types = \json_decode($fileContent, true);
$inspectionTypes = self::createInspectionTypes($app, $types);
$inspectionTypes = self::createVehicleInspectionTypes($app, $types);
/* Inspection types */
$fileContent = \file_get_contents(__DIR__ . '/Install/driverinspectiontype.json');
/* Driver Inspection types */
$fileContent = \file_get_contents(__DIR__ . '/Install/driver_inspectiontype.json');
if ($fileContent === false) {
return;
}
@ -231,7 +242,7 @@ final class Installer extends InstallerAbstract
*
* @since 1.0.0
*/
private static function createInspectionTypes(ApplicationAbstract $app, array $types) : array
private static function createVehicleInspectionTypes(ApplicationAbstract $app, array $types) : array
{
/** @var array<string, array> $inspectionTypes */
$inspectionTypes = [];
@ -353,7 +364,7 @@ final class Installer extends InstallerAbstract
*
* @since 1.0.0
*/
private static function createAttributeTypes(ApplicationAbstract $app, array $attributes) : array
private static function createVehicleAttributeTypes(ApplicationAbstract $app, array $attributes) : array
{
/** @var array<string, array> $itemAttrType */
$itemAttrType = [];
@ -419,7 +430,7 @@ final class Installer extends InstallerAbstract
*
* @since 1.0.0
*/
private static function createAttributeValues(ApplicationAbstract $app, array $itemAttrType, array $attributes) : array
private static function createVehicleAttributeValues(ApplicationAbstract $app, array $itemAttrType, array $attributes) : array
{
/** @var array<string, array> $itemAttrValue */
$itemAttrValue = [];
@ -481,4 +492,143 @@ final class Installer extends InstallerAbstract
return $itemAttrValue;
}
/**
* Install default attribute types
*
* @param ApplicationAbstract $app Application
* @param array $attributes Attribute definition
*
* @return array
*
* @since 1.0.0
*/
private static function createDriverAttributeTypes(ApplicationAbstract $app, array $attributes) : array
{
/** @var array<string, array> $itemAttrType */
$itemAttrType = [];
/** @var \Modules\FleetManagement\Controller\ApiDriverAttributeController $module */
$module = $app->moduleManager->getModuleInstance('FleetManagement', 'ApiDriverAttribute');
/** @var array $attribute */
foreach ($attributes as $attribute) {
$response = new HttpResponse();
$request = new HttpRequest(new HttpUri(''));
$request->header->account = 1;
$request->setData('name', $attribute['name'] ?? '');
$request->setData('title', \reset($attribute['l11n']));
$request->setData('language', \array_keys($attribute['l11n'])[0] ?? 'en');
$request->setData('is_required', $attribute['is_required'] ?? false);
$request->setData('custom', $attribute['is_custom_allowed'] ?? false);
$request->setData('validation_pattern', $attribute['validation_pattern'] ?? '');
$request->setData('datatype', (int) $attribute['value_type']);
$module->apiDriverAttributeTypeCreate($request, $response);
$responseData = $response->getData('');
if (!\is_array($responseData)) {
continue;
}
$itemAttrType[$attribute['name']] = \is_array($responseData['response'])
? $responseData['response']
: $responseData['response']->toArray();
$isFirst = true;
foreach ($attribute['l11n'] as $language => $l11n) {
if ($isFirst) {
$isFirst = false;
continue;
}
$response = new HttpResponse();
$request = new HttpRequest(new HttpUri(''));
$request->header->account = 1;
$request->setData('title', $l11n);
$request->setData('language', $language);
$request->setData('type', $itemAttrType[$attribute['name']]['id']);
$module->apiDriverAttributeTypeL11nCreate($request, $response);
}
}
return $itemAttrType;
}
/**
* Create default attribute values for types
*
* @param ApplicationAbstract $app Application
* @param array $itemAttrType Attribute types
* @param array<array{name:string, l11n?:array<string, string>, is_required?:bool, is_custom_allowed?:bool, validation_pattern?:string, value_type?:string, values?:array<string, mixed>}> $attributes Attribute definition
*
* @return array
*
* @since 1.0.0
*/
private static function createDriverAttributeValues(ApplicationAbstract $app, array $itemAttrType, array $attributes) : array
{
/** @var array<string, array> $itemAttrValue */
$itemAttrValue = [];
/** @var \Modules\FleetManagement\Controller\ApiDriverAttributeController $module */
$module = $app->moduleManager->getModuleInstance('FleetManagement', 'ApiDriverAttribute');
foreach ($attributes as $attribute) {
$itemAttrValue[$attribute['name']] = [];
/** @var array $value */
foreach ($attribute['values'] as $value) {
$response = new HttpResponse();
$request = new HttpRequest(new HttpUri(''));
$request->header->account = 1;
$request->setData('value', $value['value'] ?? '');
$request->setData('unit', $value['unit'] ?? '');
$request->setData('default', true); // always true since all defined values are possible default values
$request->setData('type', $itemAttrType[$attribute['name']]['id']);
if (isset($value['l11n']) && !empty($value['l11n'])) {
$request->setData('title', \reset($value['l11n']));
$request->setData('language', \array_keys($value['l11n'])[0] ?? 'en');
}
$module->apiDriverAttributeValueCreate($request, $response);
$responseData = $response->getData('');
if (!\is_array($responseData)) {
continue;
}
$attrValue = \is_array($responseData['response'])
? $responseData['response']
: $responseData['response']->toArray();
$itemAttrValue[$attribute['name']][] = $attrValue;
$isFirst = true;
foreach (($value['l11n'] ?? []) as $language => $l11n) {
if ($isFirst) {
$isFirst = false;
continue;
}
$response = new HttpResponse();
$request = new HttpRequest(new HttpUri(''));
$request->header->account = 1;
$request->setData('title', $l11n);
$request->setData('language', $language);
$request->setData('value', $attrValue['id']);
$module->apiDriverAttributeValueL11nCreate($request, $response);
}
}
}
return $itemAttrValue;
}
}

View File

@ -16,8 +16,10 @@ namespace Modules\FleetManagement\Controller;
use Modules\Admin\Models\LocalizationMapper;
use Modules\Admin\Models\SettingsEnum;
use Modules\FleetManagement\Models\Attribute\DriverAttributeTypeMapper;
use Modules\FleetManagement\Models\Attribute\VehicleAttributeTypeL11nMapper;
use Modules\FleetManagement\Models\Attribute\VehicleAttributeTypeMapper;
use Modules\FleetManagement\Models\Driver\DriverInspectionMapper;
use Modules\FleetManagement\Models\Driver\DriverMapper;
use Modules\FleetManagement\Models\InspectionMapper;
use Modules\FleetManagement\Models\VehicleMapper;
@ -43,7 +45,7 @@ use phpOMS\Views\View;
final class BackendController extends Controller
{
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -72,7 +74,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -90,7 +92,7 @@ final class BackendController extends Controller
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1003503001, $request, $response);
/** @var \Modules\Attribute\Models\AttributeType[] $attributes */
$attributes = VehicleAttributeTypeMapper::getAll()
$attributes = DriverAttributeTypeMapper::getAll()
->with('l11n')
->where('l11n/language', $response->header->l11n->language)
->execute();
@ -101,7 +103,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -132,7 +134,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -161,7 +163,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -183,13 +185,13 @@ final class BackendController extends Controller
->sort('id', 'DESC')
->execute();
$view->data['inspectionss'] = $list;
$view->data['inspections'] = $list;
return $view;
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -211,13 +213,13 @@ final class BackendController extends Controller
->sort('id', 'DESC')
->execute();
$view->data['inspectionss'] = $list;
$view->data['inspections'] = $list;
return $view;
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -239,13 +241,13 @@ final class BackendController extends Controller
->sort('id', 'DESC')
->execute();
$view->data['inspectionss'] = $list;
$view->data['inspections'] = $list;
return $view;
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -280,7 +282,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -315,7 +317,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -348,7 +350,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -381,7 +383,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -403,7 +405,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -421,7 +423,7 @@ final class BackendController extends Controller
$view->setTemplate('/Modules/FleetManagement/Theme/Backend/vehicle-profile');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1003502001, $request, $response);
// @todo This langauge filtering doesn't work. But it was working with the old mappers. Maybe there is a bug in the where() definition. Need to inspect the actual query.
// @todo This language filtering doesn't work. But it was working with the old mappers. Maybe there is a bug in the where() definition. Need to inspect the actual query.
$vehicle = VehicleMapper::get()
->with('attributes')
->with('attributes/type')
@ -499,7 +501,7 @@ final class BackendController extends Controller
}
/**
* Routing end-point for application behaviour.
* Routing end-point for application behavior.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
@ -517,7 +519,7 @@ final class BackendController extends Controller
$view->setTemplate('/Modules/FleetManagement/Theme/Backend/driver-profile');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1003502001, $request, $response);
// @todo This langauge filtering doesn't work. But it was working with the old mappers. Maybe there is a bug in the where() definition. Need to inspect the actual query.
// @todo This language filtering doesn't work. But it was working with the old mappers. Maybe there is a bug in the where() definition. Need to inspect the actual query.
$driver = DriverMapper::get()
->with('attributes')
->with('attributes/type')
@ -531,6 +533,15 @@ final class BackendController extends Controller
$view->data['driver'] = $driver;
$inspections = DriverInspectionMapper::getAll()
->with('type')
->with('type/l11n')
->where('reference', $driver->id)
->where('type/l11n/language', $response->header->l11n->language)
->execute();
$view->data['inspections'] = $inspections;
$query = new Builder($this->app->dbPool->get());
$results = $query->selectAs(DriverMapper::HAS_MANY['files']['external'], 'file')
->from(DriverMapper::TABLE)

View File

@ -2,4 +2,4 @@
## ER
![ER](Modules/ClientManagement/Docs/Dev/img/er.png)
![ER](Modules/FleetManagement/Docs/Dev/img/er.png)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 212 KiB

After

Width:  |  Height:  |  Size: 158 KiB

View File

@ -37,10 +37,10 @@ final class VehicleAttributeTypeL11nMapper extends DataMapperFactory
* @since 1.0.0
*/
public const COLUMNS = [
'fleetmgmt_attr_type_l11n_id' => ['name' => 'fleetmgmt_attr_type_l11n_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_attr_type_l11n_title' => ['name' => 'fleetmgmt_attr_type_l11n_title', 'type' => 'string', 'internal' => 'content', 'autocomplete' => true],
'fleetmgmt_attr_type_l11n_type' => ['name' => 'fleetmgmt_attr_type_l11n_type', 'type' => 'int', 'internal' => 'ref'],
'fleetmgmt_attr_type_l11n_lang' => ['name' => 'fleetmgmt_attr_type_l11n_lang', 'type' => 'string', 'internal' => 'language'],
'fleetmgmt_vehicle_attr_type_l11n_id' => ['name' => 'fleetmgmt_vehicle_attr_type_l11n_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_vehicle_attr_type_l11n_title' => ['name' => 'fleetmgmt_vehicle_attr_type_l11n_title', 'type' => 'string', 'internal' => 'content', 'autocomplete' => true],
'fleetmgmt_vehicle_attr_type_l11n_type' => ['name' => 'fleetmgmt_vehicle_attr_type_l11n_type', 'type' => 'int', 'internal' => 'ref'],
'fleetmgmt_vehicle_attr_type_l11n_lang' => ['name' => 'fleetmgmt_vehicle_attr_type_l11n_lang', 'type' => 'string', 'internal' => 'language'],
];
/**
@ -49,7 +49,7 @@ final class VehicleAttributeTypeL11nMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const TABLE = 'fleetmgmt_attr_type_l11n';
public const TABLE = 'fleetmgmt_vehicle_attr_type_l11n';
/**
* Primary field name.
@ -57,7 +57,7 @@ final class VehicleAttributeTypeL11nMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const PRIMARYFIELD = 'fleetmgmt_attr_type_l11n_id';
public const PRIMARYFIELD = 'fleetmgmt_vehicle_attr_type_l11n_id';
/**
* Model to use by the mapper.

View File

@ -37,13 +37,13 @@ final class VehicleAttributeTypeMapper extends DataMapperFactory
* @since 1.0.0
*/
public const COLUMNS = [
'fleetmgmt_attr_type_id' => ['name' => 'fleetmgmt_attr_type_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_attr_type_name' => ['name' => 'fleetmgmt_attr_type_name', 'type' => 'string', 'internal' => 'name', 'autocomplete' => true],
'fleetmgmt_attr_type_datatype' => ['name' => 'fleetmgmt_attr_type_datatype', 'type' => 'int', 'internal' => 'datatype'],
'fleetmgmt_attr_type_fields' => ['name' => 'fleetmgmt_attr_type_fields', 'type' => 'int', 'internal' => 'fields'],
'fleetmgmt_attr_type_custom' => ['name' => 'fleetmgmt_attr_type_custom', 'type' => 'bool', 'internal' => 'custom'],
'fleetmgmt_attr_type_pattern' => ['name' => 'fleetmgmt_attr_type_pattern', 'type' => 'string', 'internal' => 'validationPattern'],
'fleetmgmt_attr_type_required' => ['name' => 'fleetmgmt_attr_type_required', 'type' => 'bool', 'internal' => 'isRequired'],
'fleetmgmt_vehicle_attr_type_id' => ['name' => 'fleetmgmt_vehicle_attr_type_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_vehicle_attr_type_name' => ['name' => 'fleetmgmt_vehicle_attr_type_name', 'type' => 'string', 'internal' => 'name', 'autocomplete' => true],
'fleetmgmt_vehicle_attr_type_datatype' => ['name' => 'fleetmgmt_vehicle_attr_type_datatype', 'type' => 'int', 'internal' => 'datatype'],
'fleetmgmt_vehicle_attr_type_fields' => ['name' => 'fleetmgmt_vehicle_attr_type_fields', 'type' => 'int', 'internal' => 'fields'],
'fleetmgmt_vehicle_attr_type_custom' => ['name' => 'fleetmgmt_vehicle_attr_type_custom', 'type' => 'bool', 'internal' => 'custom'],
'fleetmgmt_vehicle_attr_type_pattern' => ['name' => 'fleetmgmt_vehicle_attr_type_pattern', 'type' => 'string', 'internal' => 'validationPattern'],
'fleetmgmt_vehicle_attr_type_required' => ['name' => 'fleetmgmt_vehicle_attr_type_required', 'type' => 'bool', 'internal' => 'isRequired'],
];
/**
@ -55,8 +55,8 @@ final class VehicleAttributeTypeMapper extends DataMapperFactory
public const HAS_MANY = [
'l11n' => [
'mapper' => VehicleAttributeTypeL11nMapper::class,
'table' => 'fleetmgmt_attr_type_l11n',
'self' => 'fleetmgmt_attr_type_l11n_type',
'table' => 'fleetmgmt_vehicle_attr_type_l11n',
'self' => 'fleetmgmt_vehicle_attr_type_l11n_type',
'column' => 'content',
'external' => null,
],
@ -82,7 +82,7 @@ final class VehicleAttributeTypeMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const TABLE = 'fleetmgmt_attr_type';
public const TABLE = 'fleetmgmt_vehicle_attr_type';
/**
* Primary field name.
@ -90,5 +90,5 @@ final class VehicleAttributeTypeMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const PRIMARYFIELD = 'fleetmgmt_attr_type_id';
public const PRIMARYFIELD = 'fleetmgmt_vehicle_attr_type_id';
}

View File

@ -37,10 +37,10 @@ final class VehicleAttributeValueL11nMapper extends DataMapperFactory
* @since 1.0.0
*/
public const COLUMNS = [
'fleetmgmt_attr_value_l11n_id' => ['name' => 'fleetmgmt_attr_value_l11n_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_attr_value_l11n_title' => ['name' => 'fleetmgmt_attr_value_l11n_title', 'type' => 'string', 'internal' => 'content', 'autocomplete' => true],
'fleetmgmt_attr_value_l11n_value' => ['name' => 'fleetmgmt_attr_value_l11n_value', 'type' => 'int', 'internal' => 'ref'],
'fleetmgmt_attr_value_l11n_lang' => ['name' => 'fleetmgmt_attr_value_l11n_lang', 'type' => 'string', 'internal' => 'language'],
'fleetmgmt_vehicle_attr_value_l11n_id' => ['name' => 'fleetmgmt_vehicle_attr_value_l11n_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_vehicle_attr_value_l11n_title' => ['name' => 'fleetmgmt_vehicle_attr_value_l11n_title', 'type' => 'string', 'internal' => 'content', 'autocomplete' => true],
'fleetmgmt_vehicle_attr_value_l11n_value' => ['name' => 'fleetmgmt_vehicle_attr_value_l11n_value', 'type' => 'int', 'internal' => 'ref'],
'fleetmgmt_vehicle_attr_value_l11n_lang' => ['name' => 'fleetmgmt_vehicle_attr_value_l11n_lang', 'type' => 'string', 'internal' => 'language'],
];
/**
@ -49,7 +49,7 @@ final class VehicleAttributeValueL11nMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const TABLE = 'fleetmgmt_attr_value_l11n';
public const TABLE = 'fleetmgmt_vehicle_attr_value_l11n';
/**
* Primary field name.
@ -57,7 +57,7 @@ final class VehicleAttributeValueL11nMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const PRIMARYFIELD = 'fleetmgmt_attr_value_l11n_id';
public const PRIMARYFIELD = 'fleetmgmt_vehicle_attr_value_l11n_id';
/**
* Model to use by the mapper.

View File

@ -37,15 +37,15 @@ final class VehicleAttributeValueMapper extends DataMapperFactory
* @since 1.0.0
*/
public const COLUMNS = [
'fleetmgmt_attr_value_id' => ['name' => 'fleetmgmt_attr_value_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_attr_value_default' => ['name' => 'fleetmgmt_attr_value_default', 'type' => 'bool', 'internal' => 'isDefault'],
'fleetmgmt_attr_value_valueStr' => ['name' => 'fleetmgmt_attr_value_valueStr', 'type' => 'string', 'internal' => 'valueStr'],
'fleetmgmt_attr_value_valueInt' => ['name' => 'fleetmgmt_attr_value_valueInt', 'type' => 'int', 'internal' => 'valueInt'],
'fleetmgmt_attr_value_valueDec' => ['name' => 'fleetmgmt_attr_value_valueDec', 'type' => 'float', 'internal' => 'valueDec'],
'fleetmgmt_attr_value_valueDat' => ['name' => 'fleetmgmt_attr_value_valueDat', 'type' => 'DateTime', 'internal' => 'valueDat'],
'fleetmgmt_attr_value_unit' => ['name' => 'fleetmgmt_attr_value_unit', 'type' => 'string', 'internal' => 'unit'],
'fleetmgmt_attr_value_deptype' => ['name' => 'fleetmgmt_attr_value_deptype', 'type' => 'int', 'internal' => 'dependingAttributeType'],
'fleetmgmt_attr_value_depvalue' => ['name' => 'fleetmgmt_attr_value_depvalue', 'type' => 'int', 'internal' => 'dependingAttributeValue'],
'fleetmgmt_vehicle_attr_value_id' => ['name' => 'fleetmgmt_vehicle_attr_value_id', 'type' => 'int', 'internal' => 'id'],
'fleetmgmt_vehicle_attr_value_default' => ['name' => 'fleetmgmt_vehicle_attr_value_default', 'type' => 'bool', 'internal' => 'isDefault'],
'fleetmgmt_vehicle_attr_value_valueStr' => ['name' => 'fleetmgmt_vehicle_attr_value_valueStr', 'type' => 'string', 'internal' => 'valueStr'],
'fleetmgmt_vehicle_attr_value_valueInt' => ['name' => 'fleetmgmt_vehicle_attr_value_valueInt', 'type' => 'int', 'internal' => 'valueInt'],
'fleetmgmt_vehicle_attr_value_valueDec' => ['name' => 'fleetmgmt_vehicle_attr_value_valueDec', 'type' => 'float', 'internal' => 'valueDec'],
'fleetmgmt_vehicle_attr_value_valueDat' => ['name' => 'fleetmgmt_vehicle_attr_value_valueDat', 'type' => 'DateTime', 'internal' => 'valueDat'],
'fleetmgmt_vehicle_attr_value_unit' => ['name' => 'fleetmgmt_vehicle_attr_value_unit', 'type' => 'string', 'internal' => 'unit'],
'fleetmgmt_vehicle_attr_value_deptype' => ['name' => 'fleetmgmt_vehicle_attr_value_deptype', 'type' => 'int', 'internal' => 'dependingAttributeType'],
'fleetmgmt_vehicle_attr_value_depvalue' => ['name' => 'fleetmgmt_vehicle_attr_value_depvalue', 'type' => 'int', 'internal' => 'dependingAttributeValue'],
];
/**
@ -57,8 +57,8 @@ final class VehicleAttributeValueMapper extends DataMapperFactory
public const HAS_MANY = [
'l11n' => [
'mapper' => VehicleAttributeValueL11nMapper::class,
'table' => 'fleetmgmt_attr_value_l11n',
'self' => 'fleetmgmt_attr_value_l11n_value',
'table' => 'fleetmgmt_vehicle_attr_value_l11n',
'self' => 'fleetmgmt_vehicle_attr_value_l11n_value',
'external' => null,
],
];
@ -77,7 +77,7 @@ final class VehicleAttributeValueMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const TABLE = 'fleetmgmt_attr_value';
public const TABLE = 'fleetmgmt_vehicle_attr_value';
/**
* Primary field name.
@ -85,5 +85,5 @@ final class VehicleAttributeValueMapper extends DataMapperFactory
* @var string
* @since 1.0.0
*/
public const PRIMARYFIELD = 'fleetmgmt_attr_value_id';
public const PRIMARYFIELD = 'fleetmgmt_vehicle_attr_value_id';
}

View File

@ -17,7 +17,7 @@ namespace Modules\FleetManagement\Models;
use phpOMS\Stdlib\Base\Enum;
/**
* Permision state enum.
* Permission category enum.
*
* @package Modules\FleetManagement\Models
* @license OMS License 2.0

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'محاسبة',
'Addition' => 'إضافة',
'Address' => 'تبوك',
'Addresses' => 'عناوين',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'مدير المنطقة',
'Articlegroup' => 'articlegroup.',
'Articles' => 'مقالات',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'الرصيد',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'علاوة',
'Business' => 'اعمال',
'CIS' => '',
'CLV' => 'قذيفة',
'Calendar' => 'تقويم',
'City' => 'مدينة',
'Client' => 'عميل',
'ClientID' => '',
'Clients' => 'عملاء',
'ComparisonTime' => '',
'Contact' => 'اتصل',
'Costs' => '',
'Country' => 'دولة',
'Created' => 'خلقت',
'CreatedAt' => '',
'CreditRating' => 'التصنيف الائتماني',
'Creditcard' => 'بطاقة إئتمان',
'Customers' => '',
'DSO' => 'DSO.',
'Date' => 'تاريخ',
'Default' => 'تقصير',
'Delivery' => 'توصيل',
'Description' => '',
'Discount' => 'خصم',
'DiscountBonus' => '',
'DiscountP' => 'خصم ٪',
'Documents' => 'وثائق',
'Driver' => '',
'Drivers' => '',
'Due' => 'بسبب',
'Email' => 'بريد الالكتروني',
'End' => '',
'Europe' => '',
'Fax' => 'فاكس',
'Files' => 'الملفات',
'Filter' => 'منقي',
'Freightage' => 'شحن',
'From' => '',
'Group' => 'مجموعة',
'History' => '',
'ID' => 'بطاقة تعريف',
'Info' => 'معلومات',
'Inspections' => '',
'Invoice' => 'فاتورة',
'Invoices' => 'الفواتير',
'IsDefault' => 'افتراضي؟',
'Items' => '',
'LastContact' => 'آخر اتصال',
'LastOrder' => 'آخر طلب',
'LeasingFee' => '',
'Log' => 'سجل',
'Logs' => 'السجلات',
'LostCustomers' => '',
'MRR' => 'مرر',
'MTDSales' => 'مبيعات MTD',
'Make' => '',
'Margin' => 'هامش',
'Messages' => 'رسائل',
'Milage' => '',
'Model' => '',
'Modified' => 'تم التعديل',
'Modules' => 'وحدات',
'Name' => 'اسم',
'Name1' => 'اسم 1.',
'Name2' => 'اسم 2.',
'Name3' => 'اسم 3.',
'Net' => 'شبكة',
'NewCustomers' => '',
'Notes' => 'ملحوظات',
'Number' => 'عدد',
'Office' => 'مكتب. مقر. مركز',
'Other' => '',
'Payment' => 'دفع',
'PaymentTerm' => 'مصطلح الدفع',
'Permission' => 'إذن',
'Phone' => 'هاتف',
'Postal' => 'بريدي',
'Price' => 'السعر',
'Prices' => 'الأسعار.',
'Private' => 'نشر',
'Productgroup' => 'productgroup.',
'Profile' => 'الملف الشخصي',
'Profit' => '',
'Purchase' => 'شراء',
'PurchasePrice' => '',
'Quantity' => 'كمية',
'RecentInvoices' => 'الفواتير الأخيرة',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'مبيعات',
'Segment' => 'قطعة',
'Segments' => 'شرائح',
'Start' => '',
'Status' => '',
'Subtype' => 'النوع الفرعي',
'Support' => 'يدعم',
'Tags' => 'كذا',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'نوع',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'موقع إلكتروني',
'Wire' => 'الأسلاك',
'YTDSales' => 'مبيعات YTD',
'Zip' => 'أزيز',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Účetnictví',
'Addition' => 'Přidání',
'Address' => 'Adresa',
'Addresses' => 'Adresy',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Oblastní manažer',
'Articlegroup' => 'Článek',
'Articles' => 'Články',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Zůstatek',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Bonus',
'Business' => 'Business.',
'CIS' => '',
'CLV' => 'Clv.',
'Calendar' => 'Kalendář',
'City' => 'Město',
'Client' => 'Klienta',
'ClientID' => '',
'Clients' => 'Klienti',
'ComparisonTime' => '',
'Contact' => 'Kontakt',
'Costs' => '',
'Country' => 'Země',
'Created' => 'Vytvořený',
'CreatedAt' => '',
'CreditRating' => 'Úvěrový rating',
'Creditcard' => 'Kreditní karta',
'Customers' => '',
'DSO' => 'DSO.',
'Date' => 'datum',
'Default' => 'Výchozí hodnota',
'Delivery' => 'dodávka',
'Description' => '',
'Discount' => 'Sleva',
'DiscountBonus' => '',
'DiscountP' => 'Sleva%',
'Documents' => 'Dokumenty',
'Driver' => '',
'Drivers' => '',
'Due' => 'Způsoben',
'Email' => 'E-mailem',
'End' => '',
'Europe' => '',
'Fax' => 'Fax',
'Files' => 'Soubory',
'Filter' => 'Filtr',
'Freightage' => 'Dopravné',
'From' => '',
'Group' => 'Skupina',
'History' => '',
'ID' => 'ID.',
'Info' => 'Info.',
'Inspections' => '',
'Invoice' => 'Faktura',
'Invoices' => 'Faktury',
'IsDefault' => 'Je výchozí?',
'Items' => '',
'LastContact' => 'Poslední kontakt',
'LastOrder' => 'Poslední objednávka',
'LeasingFee' => '',
'Log' => 'Log',
'Logs' => 'Protokoly',
'LostCustomers' => '',
'MRR' => 'Mrr.',
'MTDSales' => 'Prodej MTD.',
'Make' => '',
'Margin' => 'Okraj',
'Messages' => 'Zprávy',
'Milage' => '',
'Model' => '',
'Modified' => 'Upravený',
'Modules' => 'Moduly',
'Name' => 'název',
'Name1' => 'Jméno1.',
'Name2' => 'Jméno2.',
'Name3' => 'Jméno3.',
'Net' => 'Síť',
'NewCustomers' => '',
'Notes' => 'Poznámky',
'Number' => 'Číslo',
'Office' => 'Kancelář',
'Other' => '',
'Payment' => 'Způsob platby',
'PaymentTerm' => 'Platební termín',
'Permission' => 'Povolení',
'Phone' => 'Telefon',
'Postal' => 'Poštovní',
'Price' => 'Cena',
'Prices' => 'Ceny',
'Private' => 'Soukromý',
'Productgroup' => 'ProductSgroup.',
'Profile' => 'Profil',
'Profit' => '',
'Purchase' => 'Nákup',
'PurchasePrice' => '',
'Quantity' => 'Množství',
'RecentInvoices' => 'Nedávné faktury',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Odbyt',
'Segment' => 'Segment',
'Segments' => 'Segmenty',
'Start' => '',
'Status' => '',
'Subtype' => 'Podtyp',
'Support' => 'Podpěra, podpora',
'Tags' => 'Tagy',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Typ',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'webová stránka',
'Wire' => 'Drát',
'YTDSales' => 'Prodej YTD.',
'Zip' => 'Zip',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Regnskab',
'Addition' => 'Tilsætning',
'Address' => 'Adresse',
'Addresses' => 'Adresser',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Områdechef',
'Articlegroup' => 'ArticleGroup.',
'Articles' => 'Artikler',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Balance',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Bonus',
'Business' => 'Forretning',
'CIS' => '',
'CLV' => 'CLV.',
'Calendar' => 'Kalender',
'City' => 'City.',
'Client' => 'Klient',
'ClientID' => '',
'Clients' => 'Klienter.',
'ComparisonTime' => '',
'Contact' => 'Kontakt',
'Costs' => '',
'Country' => 'Land',
'Created' => 'Oprettet',
'CreatedAt' => '',
'CreditRating' => 'Kreditvurdering',
'Creditcard' => 'Kreditkort',
'Customers' => '',
'DSO' => 'DSO.',
'Date' => 'Dato',
'Default' => 'Standard',
'Delivery' => 'Levering',
'Description' => '',
'Discount' => 'Rabat',
'DiscountBonus' => '',
'DiscountP' => 'Rabat%',
'Documents' => 'Dokumenter',
'Driver' => '',
'Drivers' => '',
'Due' => 'På grund',
'Email' => 'Email.',
'End' => '',
'Europe' => '',
'Fax' => 'Fax',
'Files' => 'Filer.',
'Filter' => 'Filter',
'Freightage' => 'Gods',
'From' => '',
'Group' => 'Gruppe',
'History' => '',
'ID' => 'ID.',
'Info' => 'Info.',
'Inspections' => '',
'Invoice' => 'Faktura',
'Invoices' => 'Fakturaer.',
'IsDefault' => 'Er standard?',
'Items' => '',
'LastContact' => 'Sidste kontakt',
'LastOrder' => 'Sidste ordre',
'LeasingFee' => '',
'Log' => 'Log',
'Logs' => 'Logs.',
'LostCustomers' => '',
'MRR' => 'MRR.',
'MTDSales' => 'MTD Sales.',
'Make' => '',
'Margin' => 'Margin.',
'Messages' => 'Beskeder',
'Milage' => '',
'Model' => '',
'Modified' => 'Modificeret',
'Modules' => 'Moduler.',
'Name' => 'Navn',
'Name1' => 'NAME1.',
'Name2' => 'NAME2.',
'Name3' => 'NAME3.',
'Net' => 'Net',
'NewCustomers' => '',
'Notes' => 'Noter.',
'Number' => 'Nummer',
'Office' => 'Kontor',
'Other' => '',
'Payment' => 'Betaling',
'PaymentTerm' => 'Betalingsbetingelser',
'Permission' => 'Tilladelse',
'Phone' => 'telefon',
'Postal' => 'Postal.',
'Price' => 'Pris',
'Prices' => 'Priser.',
'Private' => 'Privat',
'Productgroup' => 'Produktgruppe',
'Profile' => 'Profil',
'Profit' => '',
'Purchase' => 'Køb',
'PurchasePrice' => '',
'Quantity' => 'Antal',
'RecentInvoices' => 'Nylige fakturaer.',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'SALG',
'Segment' => 'Segment',
'Segments' => 'Segmenter.',
'Start' => '',
'Status' => '',
'Subtype' => 'Subtype.',
'Support' => 'Support',
'Tags' => 'Tags.',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Type',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Internet side',
'Wire' => 'Tråd',
'YTDSales' => 'YTD SALG',
'Zip' => 'Zip.',
]];

View File

@ -17,136 +17,47 @@ return ['FleetManagement' => [
':status2' => 'Inaktiv',
':status3' => 'Beschädigt',
':status4' => 'Außer Betrieb',
':status-d1' => 'Aktiv',
':status-d2' => 'Inaktiv',
':status-d3' => 'Fahrunfähig',
'Accounting' => 'Buchhaltung',
'Addition' => 'Zhd.',
'Address' => 'Adresse',
'Addresses' => 'Adressen',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => '',
'Articlegroup' => '',
'Articles' => '',
'Asia' => '',
'Attribute' => '',
'Attributes' => 'Attribute',
'Balance' => '',
'BaseTime' => '',
'Bills' => '',
'Bonus' => '',
'Business' => '',
'CIS' => '',
'CLV' => '',
'Calendar' => '',
'City' => '',
'Client' => 'Kunde',
'ClientID' => 'Kunden ID',
'Clients' => 'Kunden',
'ComparisonTime' => '',
'Contact' => '',
'Costs' => 'Kosten',
'Country' => '',
'Created' => 'Erstellt',
'CreatedAt' => 'Erstellt',
'CreditRating' => '',
'Creditcard' => '',
'Customers' => '',
'DSO' => '',
'Date' => 'Datum',
'Default' => '',
'Delivery' => '',
'Description' => '',
'Discount' => '',
'DiscountBonus' => '',
'DiscountP' => '',
'Documents' => '',
'Driver' => 'Fahrer',
'Drivers' => 'Fahrer',
'Due' => '',
'Email' => '',
'End' => 'Ende',
'Europe' => '',
'Fax' => '',
'Files' => 'Dateien',
'Filter' => '',
'Freightage' => 'Fracht',
'From' => '',
'Group' => '',
'History' => 'Historie',
'ID' => '',
'Info' => '',
'Inspections' => 'Inspektionen',
'Invoice' => '',
'Invoices' => '',
'IsDefault' => '',
'Items' => '',
'LastContact' => '',
'LastOrder' => '',
'LeasingFee' => 'Leasingkosten',
'Log' => '',
'Logs' => '',
'LostCustomers' => '',
'MRR' => '',
'MTDSales' => '',
'Make' => 'Marke',
'Margin' => '',
'Messages' => '',
'Milage' => 'Tacho',
'Model' => 'Modell',
'Modified' => '',
'Modules' => '',
'Name' => 'Name',
'Name1' => 'Name 1',
'Name2' => 'Name 2',
'Name3' => 'Name 3',
'Net' => '',
'NewCustomers' => '',
'Notes' => 'Notizen',
'Number' => '',
'Office' => '',
'Other' => '',
'Payment' => '',
'PaymentTerm' => '',
'Permission' => '',
'Phone' => '',
'Postal' => '',
'Price' => '',
'Prices' => '',
'Private' => '',
'Productgroup' => '',
'Profile' => 'Profile',
'Profit' => '',
'Purchase' => '',
'PurchasePrice' => 'Kaufpreis',
'Quantity' => '',
'RecentInvoices' => '',
'Region' => '',
'Rep' => '',
'Responsible' => 'Verantwortlich',
'Retention' => '',
'Sales' => '',
'Segment' => '',
'Segments' => '',
'Start' => 'Start',
'Status' => 'Status',
'Subtype' => '',
'Support' => '',
'Tags' => 'Stichworte',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Typ',
'UnitPrice' => '',
'Upcoming' => 'Upcoming',
'VIN' => '',
'Value' => '',
'Vehicle' => 'Fahrzeug',
'Vehicles' => 'Fahrzeuge',
'Vin' => 'Vin',
'Website' => '',
'Wire' => '',
'YTDSales' => '',
'Zip' => 'Postleitzahl',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Λογιστική',
'Addition' => 'Πρόσθεση',
'Address' => 'Διεύθυνση',
'Addresses' => 'Διευθύνσεις',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Διευθυντής περιοχής',
'Articlegroup' => 'Ομιλία',
'Articles' => 'Είδη',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Ισορροπία',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Δώρο',
'Business' => 'Επιχείρηση',
'CIS' => '',
'CLV' => 'Σολλίζω',
'Calendar' => 'Ημερολόγιο',
'City' => 'Πόλη',
'Client' => 'Πελάτης',
'ClientID' => '',
'Clients' => 'Πελάτες',
'ComparisonTime' => '',
'Contact' => 'Επικοινωνία',
'Costs' => '',
'Country' => 'Χώρα',
'Created' => 'Δημιουργήθηκε',
'CreatedAt' => '',
'CreditRating' => 'Αξιολόγησης της πιστοληπτικής ικανότητας',
'Creditcard' => 'Πιστωτική κάρτα',
'Customers' => '',
'DSO' => 'ΔΣΟ',
'Date' => 'Ημερομηνία',
'Default' => 'Προκαθορισμένο',
'Delivery' => 'Διανομή',
'Description' => '',
'Discount' => 'Εκπτωση',
'DiscountBonus' => '',
'DiscountP' => 'Έκπτωση%',
'Documents' => 'Εγγραφα',
'Driver' => '',
'Drivers' => '',
'Due' => 'Λόγω',
'Email' => 'ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ',
'End' => '',
'Europe' => '',
'Fax' => 'Φαξ',
'Files' => 'Αρχεία',
'Filter' => 'Φίλτρο',
'Freightage' => 'Ναύλος',
'From' => '',
'Group' => 'Ομάδα',
'History' => '',
'ID' => 'ταυτότητα',
'Info' => 'Πληροφορία',
'Inspections' => '',
'Invoice' => 'Τιμολόγιο',
'Invoices' => 'Τιμολόγια',
'IsDefault' => 'Είναι προεπιλογή;',
'Items' => '',
'LastContact' => 'Τελευταία επαφή',
'LastOrder' => 'Τελευταία παραγγελία',
'LeasingFee' => '',
'Log' => 'Κούτσουρο',
'Logs' => 'Κούτσουρα',
'LostCustomers' => '',
'MRR' => 'MRR',
'MTDSales' => 'Πωλήσεις MTD',
'Make' => '',
'Margin' => 'Περιθώριο',
'Messages' => 'Μηνύματα',
'Milage' => '',
'Model' => '',
'Modified' => 'Τροποποιημένος',
'Modules' => 'Ενότητες',
'Name' => 'Ονομα',
'Name1' => νομα1',
'Name2' => νομα2',
'Name3' => 'Όνομα',
'Net' => 'Καθαρά',
'NewCustomers' => '',
'Notes' => 'Σημειώνει',
'Number' => 'Αριθμός',
'Office' => 'Γραφείο',
'Other' => '',
'Payment' => 'Πληρωμή',
'PaymentTerm' => 'Ορος πληρωμής',
'Permission' => 'Αδεια',
'Phone' => 'Τηλέφωνο',
'Postal' => 'Ταχυδρομικός',
'Price' => 'Τιμή',
'Prices' => 'Τιμές',
'Private' => 'Ιδιωτικός',
'Productgroup' => 'Ομοιόμορφη ομάδα',
'Profile' => 'Προφίλ',
'Profit' => '',
'Purchase' => 'Αγορά',
'PurchasePrice' => '',
'Quantity' => 'Ποσότητα',
'RecentInvoices' => 'Πρόσφατα τιμολόγια',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Εκπτώσεις',
'Segment' => 'Τμήμα',
'Segments' => 'Τμήματα',
'Start' => '',
'Status' => '',
'Subtype' => 'Υποτύπωμα',
'Support' => 'Υποστήριξη',
'Tags' => 'Ετικέτες',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Τύπος',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Δικτυακός τόπος',
'Wire' => 'Σύρμα',
'YTDSales' => 'Ytd πωλήσεις',
'Zip' => 'Φερμουάρ',
]];

View File

@ -17,136 +17,41 @@ return ['FleetManagement' => [
':status2' => 'Inactive',
':status3' => 'Damaged',
':status4' => 'Out of order',
'Accounting' => '',
'Addition' => '',
'Address' => '',
'Addresses' => '',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => '',
'Articlegroup' => '',
'Articles' => '',
'Asia' => '',
'Attribute' => '',
':status-d1' => 'Active',
':status-d2' => 'Inactive',
':status-d3' => 'Suspended',
'Attributes' => 'Attributes',
'Balance' => '',
'BaseTime' => '',
'Bills' => '',
'Bonus' => '',
'Business' => '',
'CIS' => '',
'CLV' => '',
'Calendar' => '',
'City' => '',
'Client' => 'Client',
'ClientID' => '',
'Clients' => '',
'ComparisonTime' => '',
'Contact' => '',
'Costs' => 'Costs',
'Country' => '',
'Created' => 'Created',
'CreatedAt' => 'Created At',
'CreditRating' => '',
'Creditcard' => '',
'Customers' => '',
'DSO' => '',
'Date' => 'Date',
'Default' => '',
'Delivery' => '',
'Description' => '',
'Discount' => '',
'DiscountBonus' => '',
'DiscountP' => '',
'Documents' => '',
'Driver' => 'Driver',
'Drivers' => 'Drivers',
'Due' => '',
'Email' => '',
'End' => 'End',
'Europe' => '',
'Fax' => '',
'Files' => 'Files',
'Filter' => '',
'Freightage' => 'Freightage',
'From' => '',
'Group' => '',
'History' => 'History',
'ID' => '',
'Info' => '',
'Inspections' => 'Inspections',
'Invoice' => '',
'Invoices' => '',
'IsDefault' => '',
'Items' => '',
'LastContact' => '',
'LastOrder' => '',
'LeasingFee' => 'Leasing Fee',
'Log' => '',
'Logs' => '',
'LostCustomers' => '',
'MRR' => '',
'MTDSales' => '',
'Make' => 'Make',
'Margin' => '',
'Messages' => '',
'Milage' => 'Milage',
'Model' => 'Model',
'Modified' => '',
'Modules' => '',
'Name' => 'Name',
'Name1' => 'Name 1',
'Name2' => 'Name 2',
'Name3' => 'Name 3',
'Net' => '',
'NewCustomers' => '',
'Notes' => 'Notes',
'Number' => '',
'Office' => '',
'Other' => '',
'Payment' => '',
'PaymentTerm' => '',
'Permission' => '',
'Phone' => '',
'Postal' => '',
'Price' => '',
'Prices' => '',
'Private' => '',
'Productgroup' => '',
'Profile' => 'Profile',
'Profit' => '',
'Purchase' => '',
'PurchasePrice' => 'Purchase Price',
'Quantity' => '',
'RecentInvoices' => '',
'Region' => 'Region',
'Rep' => '',
'Responsible' => 'Responsible',
'Retention' => '',
'Sales' => '',
'Segment' => '',
'Segments' => '',
'Start' => 'Start',
'Status' => 'Status',
'Subtype' => '',
'Support' => '',
'Tags' => 'Tags',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Type',
'UnitPrice' => '',
'Upcoming' => 'Upcoming',
'VIN' => '',
'Value' => '',
'Vehicle' => 'Vehicle',
'Vehicles' => 'Vehicles',
'Vin' => 'Vin',
'Website' => '',
'Wire' => '',
'YTDSales' => '',
'Zip' => '',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Contabilidad',
'Addition' => 'Adición',
'Address' => 'Habla a',
'Addresses' => 'Direcciones',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Gerente de área',
'Articlegroup' => 'Grupo articulo',
'Articles' => 'Artículos',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Equilibrio',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Prima',
'Business' => 'Negocio',
'CIS' => '',
'CLV' => 'Clv',
'Calendar' => 'Calendario',
'City' => 'Ciudad',
'Client' => 'Cliente',
'ClientID' => '',
'Clients' => 'Clientela',
'ComparisonTime' => '',
'Contact' => 'Contacto',
'Costs' => '',
'Country' => 'País',
'Created' => 'Creado',
'CreatedAt' => '',
'CreditRating' => 'Calificación crediticia',
'Creditcard' => 'Tarjeta de crédito',
'Customers' => '',
'DSO' => 'DSO',
'Date' => 'Fecha',
'Default' => 'Defecto',
'Delivery' => 'Entrega',
'Description' => '',
'Discount' => 'Descuento',
'DiscountBonus' => '',
'DiscountP' => 'Descuento%',
'Documents' => 'Documentos',
'Driver' => '',
'Drivers' => '',
'Due' => 'Vencer',
'Email' => 'Correo electrónico',
'End' => '',
'Europe' => '',
'Fax' => 'Fax',
'Files' => 'Archivos',
'Filter' => 'Filtrar',
'Freightage' => 'Flete',
'From' => '',
'Group' => 'Grupo',
'History' => '',
'ID' => 'IDENTIFICACIÓN',
'Info' => 'Información',
'Inspections' => '',
'Invoice' => 'Factura',
'Invoices' => 'Facturas',
'IsDefault' => 'Es por defecto?',
'Items' => '',
'LastContact' => 'Último contacto',
'LastOrder' => 'Último pedido',
'LeasingFee' => '',
'Log' => 'Tronco',
'Logs' => 'Registros',
'LostCustomers' => '',
'MRR' => 'Mrr',
'MTDSales' => 'Ventas MTD',
'Make' => '',
'Margin' => 'Margen',
'Messages' => 'Mensajes',
'Milage' => '',
'Model' => '',
'Modified' => 'Modificado',
'Modules' => 'Módulos',
'Name' => 'Nombre',
'Name1' => 'Nombre1',
'Name2' => 'Nombre2',
'Name3' => 'Nombre3',
'Net' => 'Red',
'NewCustomers' => '',
'Notes' => 'Notas',
'Number' => 'Número',
'Office' => 'Oficina',
'Other' => '',
'Payment' => 'Pago',
'PaymentTerm' => 'Plazo de pago',
'Permission' => 'Permiso',
'Phone' => 'Teléfono',
'Postal' => 'Postal',
'Price' => 'Precio',
'Prices' => 'Precios',
'Private' => 'Privado',
'Productgroup' => 'Grupo de productos',
'Profile' => 'Perfil',
'Profit' => '',
'Purchase' => 'Compra',
'PurchasePrice' => '',
'Quantity' => 'Cantidad',
'RecentInvoices' => 'Facturas recientes',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Ventas',
'Segment' => 'Segmento',
'Segments' => 'Segmentos',
'Start' => '',
'Status' => '',
'Subtype' => 'Subtipo',
'Support' => 'Apoyo',
'Tags' => 'Etiquetas',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Escribe',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Sitio web',
'Wire' => 'Cable',
'YTDSales' => 'Ytd ventas',
'Zip' => 'Cremallera',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Kirjanpito',
'Addition' => 'Lisäys',
'Address' => 'Osoite',
'Addresses' => 'Osoitteet',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Aluejohtaja',
'Articlegroup' => 'ArticleGroup',
'Articles' => 'Artikkelit',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Saldo',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Bonus',
'Business' => 'Liiketoiminta',
'CIS' => '',
'CLV' => 'Clv',
'Calendar' => 'Kalenteri',
'City' => 'Kaupunki',
'Client' => 'Asiakas',
'ClientID' => '',
'Clients' => 'Asiakkaat',
'ComparisonTime' => '',
'Contact' => 'Ottaa yhteyttä',
'Costs' => '',
'Country' => 'Maa',
'Created' => 'Luotu',
'CreatedAt' => '',
'CreditRating' => 'Luottoluokitus',
'Creditcard' => 'Luottokortti',
'Customers' => '',
'DSO' => 'Dso',
'Date' => 'Päivämäärä',
'Default' => 'Oletusarvo',
'Delivery' => 'Toimitus',
'Description' => '',
'Discount' => 'Alennus',
'DiscountBonus' => '',
'DiscountP' => 'Alennus %',
'Documents' => 'Asiakirjat',
'Driver' => '',
'Drivers' => '',
'Due' => 'Takia',
'Email' => 'Sähköposti',
'End' => '',
'Europe' => '',
'Fax' => 'Faksi',
'Files' => 'Tiedostot',
'Filter' => 'Suodattaa',
'Freightage' => 'Rahti',
'From' => '',
'Group' => 'Ryhmä',
'History' => '',
'ID' => 'Id',
'Info' => 'Tiedot',
'Inspections' => '',
'Invoice' => 'Lasku',
'Invoices' => 'Laskut',
'IsDefault' => 'On oletusarvo?',
'Items' => '',
'LastContact' => 'Viimeinen yhteystieto',
'LastOrder' => 'Viimeinen tilaus',
'LeasingFee' => '',
'Log' => 'Hirsi',
'Logs' => 'Lokit',
'LostCustomers' => '',
'MRR' => 'Mrr',
'MTDSales' => 'MTD-myynti',
'Make' => '',
'Margin' => 'Marginaali',
'Messages' => 'Viestit',
'Milage' => '',
'Model' => '',
'Modified' => 'Muokattu',
'Modules' => 'Moduulit',
'Name' => 'Nimi',
'Name1' => 'Nimi1',
'Name2' => 'Nimi2',
'Name3' => 'Nimi33',
'Net' => 'Netto',
'NewCustomers' => '',
'Notes' => 'Toteaa',
'Number' => 'Määrä',
'Office' => 'Toimisto',
'Other' => '',
'Payment' => 'Maksu',
'PaymentTerm' => 'Maksuehto',
'Permission' => 'Lupa',
'Phone' => 'Puhelin',
'Postal' => 'Posti-',
'Price' => 'Hinta',
'Prices' => 'Hinnat',
'Private' => 'Yksityinen',
'Productgroup' => 'Tuoteryhmä',
'Profile' => 'Profiili',
'Profit' => '',
'Purchase' => 'Ostaa',
'PurchasePrice' => '',
'Quantity' => 'Määrä',
'RecentInvoices' => 'Viimeaikaiset laskut',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Myynti',
'Segment' => 'Segmentti',
'Segments' => 'Segmentit',
'Start' => '',
'Status' => '',
'Subtype' => 'Alatyyppi',
'Support' => 'Tuki',
'Tags' => 'Tunnisteet',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Tyyppi',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Verkkosivusto',
'Wire' => 'Lanka',
'YTDSales' => 'YTD-myynti',
'Zip' => 'Postinumero',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Comptabilité',
'Addition' => 'Une addition',
'Address' => 'Adresse',
'Addresses' => 'Adresses',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Chef de secteur',
'Articlegroup' => 'Articlegroup',
'Articles' => 'Des articles',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Équilibre',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Prime',
'Business' => 'Entreprise',
'CIS' => '',
'CLV' => 'Clv',
'Calendar' => 'Calendrier',
'City' => 'Ville',
'Client' => 'Client',
'ClientID' => '',
'Clients' => 'Clients',
'ComparisonTime' => '',
'Contact' => 'Contact',
'Costs' => '',
'Country' => 'Pays',
'Created' => 'Établi',
'CreatedAt' => '',
'CreditRating' => 'Cote de crédit',
'Creditcard' => 'Carte de crédit',
'Customers' => '',
'DSO' => 'Dso',
'Date' => 'Date',
'Default' => 'Défaut',
'Delivery' => 'Livraison',
'Description' => '',
'Discount' => 'Remise',
'DiscountBonus' => '',
'DiscountP' => 'Remise %',
'Documents' => 'Documents',
'Driver' => '',
'Drivers' => '',
'Due' => 'Dû',
'Email' => 'E-mail',
'End' => '',
'Europe' => '',
'Fax' => 'Fax',
'Files' => 'Des dossiers',
'Filter' => 'Filtre',
'Freightage' => 'Fret',
'From' => '',
'Group' => 'Grouper',
'History' => '',
'ID' => 'identifiant',
'Info' => 'Info',
'Inspections' => '',
'Invoice' => 'Facture d\'achat',
'Invoices' => 'Factures',
'IsDefault' => 'Est par défaut?',
'Items' => '',
'LastContact' => 'Dernier contact',
'LastOrder' => 'Dernière commande',
'LeasingFee' => '',
'Log' => 'Enregistrer',
'Logs' => 'Journaux',
'LostCustomers' => '',
'MRR' => 'Mrr',
'MTDSales' => 'Ventes MTD',
'Make' => '',
'Margin' => 'Marge',
'Messages' => 'messages',
'Milage' => '',
'Model' => '',
'Modified' => 'Modifié',
'Modules' => 'Modules',
'Name' => 'Nom',
'Name1' => 'Nom1',
'Name2' => 'Nom2',
'Name3' => 'Nom3',
'Net' => 'Rapporter',
'NewCustomers' => '',
'Notes' => 'Remarques',
'Number' => 'Nombre',
'Office' => 'Bureau',
'Other' => '',
'Payment' => 'Paiement',
'PaymentTerm' => 'Terme de paiement',
'Permission' => 'Autorisation',
'Phone' => 'Téléphoner',
'Postal' => 'Postal',
'Price' => 'Prix',
'Prices' => 'Des prix',
'Private' => 'Privé',
'Productgroup' => 'Groupe de produits',
'Profile' => 'Profil',
'Profit' => '',
'Purchase' => 'Acheter',
'PurchasePrice' => '',
'Quantity' => 'Quantité',
'RecentInvoices' => 'Factures récentes',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Ventes',
'Segment' => 'Segment',
'Segments' => 'Segments',
'Start' => '',
'Status' => '',
'Subtype' => 'Sous-type',
'Support' => 'Soutien',
'Tags' => 'Mots clés',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Taper',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Site Internet',
'Wire' => 'Fil',
'YTDSales' => 'Ventes YTD',
'Zip' => 'Zipper',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Könyvelés',
'Addition' => 'Kiegészítés',
'Address' => 'Cím',
'Addresses' => 'Címek',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Területi menedzser',
'Articlegroup' => 'Gyerekcsoport',
'Articles' => 'Árucikkek',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Egyensúly',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Bónusz',
'Business' => 'Üzleti',
'CIS' => '',
'CLV' => 'Clv',
'Calendar' => 'Naptár',
'City' => 'Város',
'Client' => 'Ügyfél',
'ClientID' => '',
'Clients' => 'Kliensek',
'ComparisonTime' => '',
'Contact' => 'Kapcsolatba lépni',
'Costs' => '',
'Country' => 'Ország',
'Created' => 'Létrehozott',
'CreatedAt' => '',
'CreditRating' => 'Hitelminősítő',
'Creditcard' => 'Hitelkártya',
'Customers' => '',
'DSO' => 'DSO',
'Date' => 'Dátum',
'Default' => 'Alapértelmezett',
'Delivery' => 'Szállítás',
'Description' => '',
'Discount' => 'Kedvezmény',
'DiscountBonus' => '',
'DiscountP' => 'Árengedmény%',
'Documents' => 'Dokumentumok',
'Driver' => '',
'Drivers' => '',
'Due' => 'Esedékes',
'Email' => 'Email',
'End' => '',
'Europe' => '',
'Fax' => 'Fax',
'Files' => 'Fájlok',
'Filter' => 'Szűrő',
'Freightage' => 'Fuvardíj',
'From' => '',
'Group' => 'Csoport',
'History' => '',
'ID' => 'Idézés',
'Info' => 'Információ',
'Inspections' => '',
'Invoice' => 'Számla',
'Invoices' => 'Számlák',
'IsDefault' => 'Alapértelmezett?',
'Items' => '',
'LastContact' => 'Utolsó kapcsolat',
'LastOrder' => 'Utolsó rendelés',
'LeasingFee' => '',
'Log' => 'Napló',
'Logs' => 'Naplók',
'LostCustomers' => '',
'MRR' => 'Mrr',
'MTDSales' => 'MTD értékesítés',
'Make' => '',
'Margin' => 'Árrés',
'Messages' => 'üzenetek',
'Milage' => '',
'Model' => '',
'Modified' => 'Módosított',
'Modules' => 'Modulok',
'Name' => 'Név',
'Name1' => 'Név1',
'Name2' => 'NAME2',
'Name3' => 'Név3',
'Net' => 'Háló',
'NewCustomers' => '',
'Notes' => 'Jegyzetek',
'Number' => 'Szám',
'Office' => 'Hivatal',
'Other' => '',
'Payment' => 'Fizetés',
'PaymentTerm' => 'Fizetési határidő',
'Permission' => 'Engedély',
'Phone' => 'Telefon',
'Postal' => 'Postai',
'Price' => 'Ár',
'Prices' => 'Árak',
'Private' => 'Magán',
'Productgroup' => 'Termékcsoport',
'Profile' => 'Profil',
'Profit' => '',
'Purchase' => 'Vásárlás',
'PurchasePrice' => '',
'Quantity' => 'Mennyiség',
'RecentInvoices' => 'Legutóbbi számlák',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Értékesítés',
'Segment' => 'Szegmens',
'Segments' => 'Szegmensek',
'Start' => '',
'Status' => '',
'Subtype' => 'Altípus',
'Support' => 'Támogatás',
'Tags' => 'Címkék',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'típus',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Weboldal',
'Wire' => 'Huzal',
'YTDSales' => 'YTD értékesítés',
'Zip' => 'Postai irányítószám',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => 'Contabilità',
'Addition' => 'Aggiunta',
'Address' => 'Indirizzo',
'Addresses' => 'Indirizzi',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'Area Manager',
'Articlegroup' => 'Art.group.',
'Articles' => 'Artificio',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'Bilancia',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'Bonus.',
'Business' => 'Affare',
'CIS' => '',
'CLV' => 'Clv.',
'Calendar' => 'Calendario',
'City' => 'Città',
'Client' => 'Cliente',
'ClientID' => '',
'Clients' => 'Clienti',
'ComparisonTime' => '',
'Contact' => 'Contatto',
'Costs' => '',
'Country' => 'Nazione',
'Created' => 'Creato',
'CreatedAt' => '',
'CreditRating' => 'Rating del credito',
'Creditcard' => 'Carta di credito',
'Customers' => '',
'DSO' => 'DSO.',
'Date' => 'Data',
'Default' => 'Predefinito',
'Delivery' => 'Consegna',
'Description' => '',
'Discount' => 'Sconto',
'DiscountBonus' => '',
'DiscountP' => 'Sconto%',
'Documents' => 'Documenti',
'Driver' => '',
'Drivers' => '',
'Due' => 'Dovuto',
'Email' => 'E-mail',
'End' => '',
'Europe' => '',
'Fax' => 'Fax',
'Files' => 'File',
'Filter' => 'Filtro',
'Freightage' => 'Liberare',
'From' => '',
'Group' => 'Gruppo',
'History' => '',
'ID' => 'ID',
'Info' => 'Informazioni',
'Inspections' => '',
'Invoice' => 'Fattura',
'Invoices' => 'Fatture',
'IsDefault' => 'È predefinito?',
'Items' => '',
'LastContact' => 'Ultimo contatto',
'LastOrder' => 'Ultimo ordine',
'LeasingFee' => '',
'Log' => 'Tronco d\'albero',
'Logs' => 'Logs.',
'LostCustomers' => '',
'MRR' => 'Mrr.',
'MTDSales' => 'Vendite di mtd.',
'Make' => '',
'Margin' => 'Margine',
'Messages' => 'Messaggi',
'Milage' => '',
'Model' => '',
'Modified' => 'Modificati',
'Modules' => 'Moduli',
'Name' => 'Nome',
'Name1' => 'Nome1.',
'Name2' => 'Nome2.',
'Name3' => 'Nome3.',
'Net' => 'Rete',
'NewCustomers' => '',
'Notes' => 'Appunti',
'Number' => 'Numero',
'Office' => 'Ufficio',
'Other' => '',
'Payment' => 'Pagamento',
'PaymentTerm' => 'Termine di pagamento',
'Permission' => 'Autorizzazione',
'Phone' => 'Telefono',
'Postal' => 'postale',
'Price' => 'Prezzo',
'Prices' => 'Prezzi',
'Private' => 'Privato',
'Productgroup' => 'Gruppo di prodotti',
'Profile' => 'Profilo',
'Profit' => '',
'Purchase' => 'Acquistare',
'PurchasePrice' => '',
'Quantity' => 'Quantità',
'RecentInvoices' => 'Recenti fatture',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => 'Saldi',
'Segment' => 'Segmento',
'Segments' => 'Segmenti',
'Start' => '',
'Status' => '',
'Subtype' => 'Sottotipo',
'Support' => 'Supporto',
'Tags' => 'Tags.',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'Tipo',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Sito web',
'Wire' => 'Filo',
'YTDSales' => 'Vendite di ytd.',
'Zip' => 'Cerniera lampo',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => '会計',
'Addition' => '添加',
'Address' => '住所',
'Addresses' => 'アドレス',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => 'エリアマネージャー',
'Articlegroup' => '記事グループ',
'Articles' => 'articles',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => 'バランス',
'BaseTime' => '',
'Bills' => '',
'Bonus' => 'ボーナス',
'Business' => '仕事',
'CIS' => '',
'CLV' => 'cl cl',
'Calendar' => 'カレンダー',
'City' => '市',
'Client' => 'クライアント',
'ClientID' => '',
'Clients' => 'クライアント',
'ComparisonTime' => '',
'Contact' => 'コンタクト',
'Costs' => '',
'Country' => '国',
'Created' => '作成した',
'CreatedAt' => '',
'CreditRating' => '信用格付け',
'Creditcard' => 'クレジットカード',
'Customers' => '',
'DSO' => 'DSO',
'Date' => '日にち',
'Default' => 'ディフォルト',
'Delivery' => '配達',
'Description' => '',
'Discount' => '割引',
'DiscountBonus' => '',
'DiscountP' => '割引 ',
'Documents' => '文書',
'Driver' => '',
'Drivers' => '',
'Due' => '期限',
'Email' => 'Eメール',
'End' => '',
'Europe' => '',
'Fax' => 'ファックス',
'Files' => 'ファイル',
'Filter' => 'フィルター',
'Freightage' => 'fre fre',
'From' => '',
'Group' => 'グループ',
'History' => '',
'ID' => 'id',
'Info' => '情報',
'Inspections' => '',
'Invoice' => '請求書',
'Invoices' => '請求書',
'IsDefault' => 'デフォルトですか?',
'Items' => '',
'LastContact' => '最後の連絡先',
'LastOrder' => '最後の順序',
'LeasingFee' => '',
'Log' => 'ログ',
'Logs' => 'ログ',
'LostCustomers' => '',
'MRR' => 'MRR.',
'MTDSales' => 'MTDセールス',
'Make' => '',
'Margin' => 'マージン',
'Messages' => 'メッセージ',
'Milage' => '',
'Model' => '',
'Modified' => '修正された',
'Modules' => 'モジュール',
'Name' => '名前',
'Name1' => '名前1',
'Name2' => '名前2',
'Name3' => '名前3',
'Net' => 'ネット',
'NewCustomers' => '',
'Notes' => 'ノート',
'Number' => '番号',
'Office' => 'オフィス',
'Other' => '',
'Payment' => '支払い',
'PaymentTerm' => '支払条件',
'Permission' => '許可',
'Phone' => '電話',
'Postal' => '郵便',
'Price' => '価格',
'Prices' => '価格',
'Private' => '民間',
'Productgroup' => '製品グループ',
'Profile' => 'プロフィール',
'Profit' => '',
'Purchase' => '購入',
'PurchasePrice' => '',
'Quantity' => '量',
'RecentInvoices' => '最近の請求書',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => '売り返り',
'Segment' => 'セグメント',
'Segments' => 'セグメント',
'Start' => '',
'Status' => '',
'Subtype' => 'サブタイプ',
'Support' => 'サポート',
'Tags' => 'タグ',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => 'タイプ',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => 'Webサイト',
'Wire' => 'ワイヤー',
'YTDSales' => 'ytd売上高',
'Zip' => 'ジップ',
]];

View File

@ -1,152 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\Localization
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
return ['FleetManagement' => [
':status1' => '',
':status2' => '',
':status3' => '',
':status4' => '',
'Accounting' => '회계',
'Addition' => '덧셈',
'Address' => '주소',
'Addresses' => '구애',
'Africa' => '',
'AllCustomers' => '',
'America' => '',
'Analyse' => '',
'AreaManager' => '구역 책임자',
'Articlegroup' => '기사 그룹',
'Articles' => '조항',
'Asia' => '',
'Attribute' => '',
'Attributes' => '',
'Balance' => '균형',
'BaseTime' => '',
'Bills' => '',
'Bonus' => '보너스',
'Business' => '사업',
'CIS' => '',
'CLV' => 'CLV.',
'Calendar' => '달력',
'City' => '도시',
'Client' => '고객',
'ClientID' => '',
'Clients' => '클라이언트',
'ComparisonTime' => '',
'Contact' => '연락하다',
'Costs' => '',
'Country' => '국가',
'Created' => '만들어진',
'CreatedAt' => '',
'CreditRating' => '신용 등급',
'Creditcard' => '신용 카드',
'Customers' => '',
'DSO' => 'DSO.',
'Date' => '날짜',
'Default' => '기본',
'Delivery' => '배달',
'Description' => '',
'Discount' => '할인',
'DiscountBonus' => '',
'DiscountP' => '할인 %',
'Documents' => '서류',
'Driver' => '',
'Drivers' => '',
'Due' => '로 인한',
'Email' => '이메일',
'End' => '',
'Europe' => '',
'Fax' => '팩스',
'Files' => '파일',
'Filter' => '필터',
'Freightage' => '화물',
'From' => '',
'Group' => '그룹',
'History' => '',
'ID' => 'ID',
'Info' => '정보',
'Inspections' => '',
'Invoice' => '송장',
'Invoices' => '송장',
'IsDefault' => '기본값은 무엇입니까?',
'Items' => '',
'LastContact' => '마지막 연락처',
'LastOrder' => '마지막 주문',
'LeasingFee' => '',
'Log' => '통나무',
'Logs' => '로그인',
'LostCustomers' => '',
'MRR' => '부서',
'MTDSales' => 'MTD 판매',
'Make' => '',
'Margin' => '여유',
'Messages' => '메시지',
'Milage' => '',
'Model' => '',
'Modified' => '수정',
'Modules' => '모듈',
'Name' => '이름',
'Name1' => 'name1.',
'Name2' => 'name2.',
'Name3' => 'Name3.',
'Net' => '그물',
'NewCustomers' => '',
'Notes' => '노트',
'Number' => '숫자',
'Office' => '사무실',
'Other' => '',
'Payment' => '지불',
'PaymentTerm' => '지불 기간',
'Permission' => '허가',
'Phone' => '핸드폰',
'Postal' => '우편 엽서',
'Price' => '가격',
'Prices' => '물가',
'Private' => '사적인',
'Productgroup' => '제품 그룹',
'Profile' => '프로필',
'Profit' => '',
'Purchase' => '구입',
'PurchasePrice' => '',
'Quantity' => '수량',
'RecentInvoices' => '최근 송장',
'Region' => '',
'Rep' => '',
'Responsible' => '',
'Retention' => '',
'Sales' => '매상',
'Segment' => '분절',
'Segments' => '세그먼트',
'Start' => '',
'Status' => '',
'Subtype' => '하위 유형',
'Support' => '지원하다',
'Tags' => '태그',
'Title' => '',
'To' => '',
'Total' => '',
'TotalPrice' => '',
'Type' => '유형',
'UnitPrice' => '',
'Upcoming' => '',
'VIN' => '',
'Value' => '',
'Vehicle' => '',
'Vehicles' => '',
'Vin' => '',
'Website' => '웹 사이트',
'Wire' => '철사',
'YTDSales' => 'YTD 판매',
'Zip' => '지퍼',
]];

View File

@ -49,7 +49,7 @@ echo $this->data['nav']->render(); ?>
<div class="form-group">
<label for="iPattern"><?= $this->getHtml('Pattern', 'Attribute', 'Backend'); ?></label>
<input id="iPattern" type="text" value="<?= $this->printHtml($attribute->validationPAttern); ?>">
<input id="iPattern" type="text" value="<?= $this->printHtml($attribute->validationPattern); ?>">
</div>
<div class="form-group">
@ -74,7 +74,7 @@ echo $this->data['nav']->render(); ?>
<div class="col-xs-12 col-md-6">
<div class="portlet">
<div class="portlet-head"><?= $this->getHtml('Language', '0', '0'); ?><i class="g-icon download btn end-xs">download</i></div>
<table class="default">
<table class="default sticky">
<thead>
<tr>
<td>

View File

@ -64,18 +64,6 @@ echo $this->data['nav']->render(); ?>
<label>
<i class="filter g-icon">filter_alt</i>
</label>
<td><?= $this->getHtml('Type'); ?>
<label for="iSalesClientList-sort-7">
<input type="radio" name="iSalesClientList-sort" id="iSalesClientList-sort-7">
<i class="sort-asc g-icon">expand_less</i>
</label>
<label for="iSalesClientList-sort-8">
<input type="radio" name="iSalesClientList-sort" id="iSalesClientList-sort-8">
<i class="sort-desc g-icon">expand_more</i>
</label>
<label>
<i class="filter g-icon">filter_alt</i>
</label>
<tbody>
<?php
$count = 0;
@ -86,9 +74,10 @@ echo $this->data['nav']->render(); ?>
<tr data-href="<?= $url; ?>">
<td>
<td data-label="<?= $this->getHtml('ID', '0', '0'); ?>"><a href="<?= $url; ?>"><?= $this->printHtml((string) $value->id); ?></a>
<td data-label="<?= $this->getHtml('Status'); ?>"><a href="<?= $url; ?>"><?= $this->getHtml(':status' . $value->status); ?></a>
<td data-label="<?= $this->getHtml('Name'); ?>"><a href="<?= $url; ?>"><?= $this->printHtml($value->name); ?></a>
<td data-label="<?= $this->getHtml('Type'); ?>"><a href="<?= $url; ?>"><?= $this->printHtml($value->type->getL11n()); ?></a>
<td data-label="<?= $this->getHtml('Status'); ?>"><a href="<?= $url; ?>"><?= $this->getHtml(':status-d' . $value->status); ?></a>
<td data-label="<?= $this->getHtml('Name'); ?>"><a href="<?= $url; ?>"><?= $this->printHtml(
$this->renderUserName('%3$s %2$s %1$s', [$value->account->name1, $value->account->name2, $value->account->name3, $value->account->login])
); ?></a>
<?php endforeach; ?>
<?php if ($count === 0) : ?>
<tr><td colspan="8" class="empty"><?= $this->getHtml('Empty', '0', '0'); ?>

View File

@ -63,7 +63,7 @@ echo $this->data['nav']->render();
<label for="iDriverStatus"><?= $this->getHtml('Status'); ?></label>
<select id="iDriverStatus" name="driver_status">
<?php foreach ($driverStatus as $status) : ?>
<option value="<?= $status; ?>"<?= $status === $driver->status ? ' selected' : ''; ?>><?= $this->getHtml(':status' . $status); ?>
<option value="<?= $status; ?>"<?= $status === $driver->status ? ' selected' : ''; ?>><?= $this->getHtml(':status-d' . $status); ?>
<?php endforeach; ?>
</select>
</div>
@ -128,17 +128,24 @@ echo $this->data['nav']->render();
<div class="col-xs-12 col-md-6">
<section class="portlet">
<div class="portlet-head"><?= $this->getHtml('Upcoming'); ?></div>
<table id="upcomingInspections" class="default">
<table id="upcomingInspections" class="default sticky">
<thead>
<tr>
<td><?= $this->getHtml('Date'); ?>
<td class="wf-100"><?= $this->getHtml('Type'); ?>
<td><?= $this->getHtml('Responsible'); ?>
<tbody>
<?php foreach ($this->data['inspections'] as $inspection) :
// @todo handle old inspections in the past? maybe use a status?!
if ($inspection->next === null) {
continue;
}
?>
<tr>
<td><?= $inspection->next->format('Y-m-d H:i'); ?>
<td><?= $this->printHtml($inspection->type->getL11n()); ?>
<td>
<td>
<td>
<?php endforeach; ?>
</table>
</section>
</div>
@ -146,17 +153,19 @@ echo $this->data['nav']->render();
<div class="col-xs-12 col-md-6">
<section class="portlet">
<div class="portlet-head"><?= $this->getHtml('History'); ?></div>
<table id="historicInspections" class="default">
<table id="historicInspections" class="default sticky">
<thead>
<tr>
<td><?= $this->getHtml('Date'); ?>
<td class="wf-100"><?= $this->getHtml('Type'); ?>
<td><?= $this->getHtml('Responsible'); ?>
<tbody>
<?php foreach ($this->data['inspections'] as $inspection) : ?>
<tr>
<td><?= $inspection->date->format('Y-m-d H:i'); ?>
<td><?= $this->printHtml($inspection->type->getL11n()); ?>
<td>
<td>
<td>
<?php endforeach; ?>
</table>
</section>
</div>
@ -246,7 +255,7 @@ echo $this->data['nav']->render();
<section class="portlet">
<div class="portlet-head"><?= $this->getHtml('Milage'); ?><i class="g-icon download btn end-xs">download</i></div>
<div class="slider">
<table id="milageTable" class="default"
<table id="milageTable" class="default sticky"
data-tag="form"
data-ui-element="tr"
data-add-tpl=".oms-add-tpl-milage"

View File

@ -173,16 +173,21 @@ echo $this->data['nav']->render();
<div class="col-xs-12 col-md-6">
<section class="portlet">
<div class="portlet-head"><?= $this->getHtml('Upcoming'); ?></div>
<table id="upcomingInspections" class="default">
<table id="upcomingInspections" class="default sticky">
<thead>
<tr>
<td><?= $this->getHtml('Date'); ?>
<td class="wf-100"><?= $this->getHtml('Type'); ?>
<td><?= $this->getHtml('Responsible'); ?>
<tbody>
<?php foreach ($this->data['inspections'] as $inspection) : ?>
<?php foreach ($this->data['inspections'] as $inspection) :
// @todo handle old inspections in the past? maybe use a status?!
if ($inspection->next === null) {
continue;
}
?>
<tr>
<td><?= $inspection->next?->format('Y-m-d H:i'); ?>
<td><?= $inspection->next->format('Y-m-d H:i'); ?>
<td><?= $this->printHtml($inspection->type->getL11n()); ?>
<td>
<?php endforeach; ?>
@ -193,17 +198,19 @@ echo $this->data['nav']->render();
<div class="col-xs-12 col-md-6">
<section class="portlet">
<div class="portlet-head"><?= $this->getHtml('History'); ?></div>
<table id="historicInspections" class="default">
<table id="historicInspections" class="default sticky">
<thead>
<tr>
<td><?= $this->getHtml('Date'); ?>
<td class="wf-100"><?= $this->getHtml('Type'); ?>
<td><?= $this->getHtml('Responsible'); ?>
<tbody>
<?php foreach ($this->data['inspections'] as $inspection) : ?>
<tr>
<td><?= $inspection->date->format('Y-m-d H:i'); ?>
<td><?= $this->printHtml($inspection->type->getL11n()); ?>
<td>
<td>
<td>
<?php endforeach; ?>
</table>
</section>
</div>
@ -293,7 +300,7 @@ echo $this->data['nav']->render();
<section class="portlet">
<div class="portlet-head"><?= $this->getHtml('Milage'); ?><i class="g-icon download btn end-xs">download</i></div>
<div class="slider">
<table id="milageTable" class="default"
<table id="milageTable" class="default sticky"
data-tag="form"
data-ui-element="tr"
data-add-tpl=".oms-add-tpl-milage"

View File

@ -14,7 +14,6 @@
"name": "Jingga",
"website": "jingga.app"
},
"description": "The buisness module.",
"directory": "FleetManagement",
"dependencies": {
"Admin": "1.0.0",

View File

@ -18,9 +18,7 @@ use Modules\FleetManagement\Models\FuelTypeMapper;
use Modules\FleetManagement\Models\VehicleTypeMapper;
use phpOMS\Message\Http\HttpRequest;
use phpOMS\Message\Http\HttpResponse;
use phpOMS\Message\Http\RequestStatusCode;
use phpOMS\Uri\HttpUri;
use phpOMS\Utils\TestUtils;
use phpOMS\Utils\RnG\Text;
trait ApiControllerVehicleTrait

View File

@ -16,8 +16,8 @@ namespace Modules\FleetManagement\tests\Controller;
use Model\CoreSettings;
use Modules\Admin\Models\AccountPermission;
use Modules\FleetManagement\tests\Controller\Api\ApiControllerVehicleTrait;
use Modules\FleetManagement\tests\Controller\Api\ApiControllerAttributeTrait;
use Modules\FleetManagement\tests\Controller\Api\ApiControllerVehicleTrait;
use phpOMS\Account\Account;
use phpOMS\Account\AccountManager;
use phpOMS\Account\PermissionType;

View File

@ -49,4 +49,4 @@ final class NullDriverInspectionTest extends \PHPUnit\Framework\TestCase
$null = new NullDriverInspection(2);
self::assertEquals(['id' => 2], $null);
}
}
}

View File

@ -49,4 +49,4 @@ final class NullDriverTest extends \PHPUnit\Framework\TestCase
$null = new NullDriver(2);
self::assertEquals(['id' => 2], $null->jsonSerialize());
}
}
}

View File

@ -49,4 +49,4 @@ final class NullInspectionTest extends \PHPUnit\Framework\TestCase
$null = new NullInspection(2);
self::assertEquals(['id' => 2], $null->jsonSerialize());
}
}
}

View File

@ -49,4 +49,4 @@ final class NullVehicleTest extends \PHPUnit\Framework\TestCase
$null = new NullVehicle(2);
self::assertEquals(['id' => 2], $null->jsonSerialize());
}
}
}