Bulkl path fix

This commit is contained in:
Dennis Eichhorn 2017-02-12 21:42:39 +01:00
parent 9dd6d82baa
commit 2eb1161ed8
32 changed files with 0 additions and 2089 deletions

View File

@ -1,44 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Admin;
use phpOMS\DataStorage\Database\DatabasePool;
use phpOMS\Module\ActivateAbstract;
use phpOMS\Module\InfoManager;
/**
* Navigation class.
*
* @category Modules
* @package Modules\Admin
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Activate extends ActivateAbstract
{
/**
* {@inheritdoc}
*/
public static function activate(DatabasePool $dbPool, InfoManager $info)
{
parent::activate($dbPool, $info);
}
}

View File

@ -1,44 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Admin;
use phpOMS\DataStorage\Database\DatabasePool;
use phpOMS\Module\DeactivateAbstract;
use phpOMS\Module\InfoManager;
/**
* Navigation class.
*
* @category Modules
* @package Modules\Admin
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Deactivate extends DeactivateAbstract
{
/**
* {@inheritdoc}
*/
public static function deactivate(DatabasePool $dbPool, InfoManager $info)
{
parent::deactivate($dbPool, $info);
}
}

View File

@ -1,156 +0,0 @@
[
{
"id": 1004701001,
"pid": "754a08ddf8bcb1cf22f310f09206dd783d42f7dd",
"type": 2,
"subtype": 0,
"name": "Organization",
"uri": null,
"target": "self",
"icon": "fa fa-database",
"order": 2,
"from": "Organization",
"permission": null,
"parent": 0,
"children": [
{
"id": 1004702001,
"pid": "754a08ddf8bcb1cf22f310f09206dd783d42f7dd",
"type": 2,
"subtype": 1,
"name": "Units",
"uri": "/{/lang}/backend/organization/unit/list?{?}",
"target": "self",
"icon": null,
"order": 1,
"from": "Organization",
"permission": null,
"parent": 1004701001,
"children": [
{
"id": 1004702101,
"pid": "bed7df3aff1a2bcb0b5e761764a93f84c2793daf",
"type": 3,
"subtype": 1,
"name": "List",
"uri": "/{/lang}/backend/organization/unit/list?{?}",
"target": "self",
"icon": null,
"order": 5,
"from": "Organization",
"permission": null,
"parent": 1004702001,
"children": []
},
{
"id": 1004702102,
"pid": "bed7df3aff1a2bcb0b5e761764a93f84c2793daf",
"type": 3,
"subtype": 1,
"name": "Create",
"uri": "/{/lang}/backend/organization/unit/create?{?}",
"target": "self",
"icon": null,
"order": 25,
"from": "Organization",
"permission": null,
"parent": 1004702001,
"children": []
}
]
},
{
"id": 1004703001,
"pid": "754a08ddf8bcb1cf22f310f09206dd783d42f7dd",
"type": 2,
"subtype": 1,
"name": "Departments",
"uri": "/{/lang}/backend/organization/department/list?{?}",
"target": "self",
"icon": null,
"order": 5,
"from": "Organization",
"permission": null,
"parent": 1004701001,
"children": [
{
"id": 1004703101,
"pid": "fab21c089971de13f680a30c8fdd0a8edc97af6a",
"type": 3,
"subtype": 1,
"name": "List",
"uri": "/{/lang}/backend/organization/department/list?{?}",
"target": "self",
"icon": null,
"order": 5,
"from": "Organization",
"permission": null,
"parent": 1004703001,
"children": []
},
{
"id": 1004703102,
"pid": "fab21c089971de13f680a30c8fdd0a8edc97af6a",
"type": 3,
"subtype": 1,
"name": "Create",
"uri": "/{/lang}/backend/organization/department/create?{?}",
"target": "self",
"icon": null,
"order": 25,
"from": "Organization",
"permission": null,
"parent": 1004703001,
"children": []
}
]
},
{
"id": 1004704001,
"pid": "754a08ddf8bcb1cf22f310f09206dd783d42f7dd",
"type": 2,
"subtype": 1,
"name": "Positions",
"uri": "/{/lang}/backend/organization/position/list?{?}",
"target": "self",
"icon": null,
"order": 20,
"from": "Organization",
"permission": null,
"parent": 1004701001,
"children": [
{
"id": 1004704101,
"pid": "67b1a05950026df723a6c35c7801234c978e85f2",
"type": 3,
"subtype": 1,
"name": "List",
"uri": "/{/lang}/backend/organization/position/list?{?}",
"target": "self",
"icon": null,
"order": 5,
"from": "Organization",
"permission": null,
"parent": 1004704001,
"children": []
},
{
"id": 1004704102,
"pid": "67b1a05950026df723a6c35c7801234c978e85f2",
"type": 3,
"subtype": 1,
"name": "Create",
"uri": "/{/lang}/backend/organization/position/create?{?}",
"target": "self",
"icon": null,
"order": 25,
"from": "Organization",
"permission": null,
"parent": 1004704001,
"children": []
}
]
}
]
}
]

View File

@ -1,43 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Admin\Install;
use phpOMS\DataStorage\Database\DatabasePool;
/**
* Navigation class.
*
* @category Modules
* @package Modules\Admin
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Navigation
{
/**
* {@inheritdoc}
*/
public static function install(string $path, DatabasePool $dbPool)
{
$navData = json_decode(file_get_contents(__DIR__ . '/Navigation.install.json'), true);
$class = '\\Modules\\Navigation\\Admin\\Installer';
/** @var $class \Modules\Navigation\Admin\Installer */
$class::installExternal($dbPool, $navData);
}
}

View File

@ -1,130 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Admin;
use phpOMS\DataStorage\Database\DatabaseType;
use phpOMS\DataStorage\Database\DatabasePool;
use phpOMS\Module\InfoManager;
use phpOMS\Module\InstallerAbstract;
/**
* Organization install class.
*
* @category Modules
* @package Modules\Organization
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Installer extends InstallerAbstract
{
/**
* {@inheritdoc}
*/
public static function install(string $path, DatabasePool $dbPool, InfoManager $info)
{
parent::install($path, $dbPool, $info);
switch ($dbPool->get('core')->getType()) {
case DatabaseType::MYSQL:
$dbPool->get('core')->con->prepare(
'CREATE TABLE if NOT EXISTS `' . $dbPool->get('core')->prefix . 'organization_unit` (
`organization_unit_id` int(11) NOT NULL AUTO_INCREMENT,
`organization_unit_name` varchar(50) DEFAULT NULL,
`organization_unit_description` varchar(255) DEFAULT NULL,
`organization_unit_parent` int(11) DEFAULT NULL,
`organization_unit_status` int(3) DEFAULT NULL,
PRIMARY KEY (`organization_unit_id`),
KEY `organization_unit_parent` (`organization_unit_parent`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;'
)->execute();
$dbPool->get('core')->con->prepare(
'ALTER TABLE `' . $dbPool->get('core')->prefix . 'organization_unit`
ADD CONSTRAINT `' . $dbPool->get('core')->prefix . 'organization_unit_ibfk_1` FOREIGN KEY (`organization_unit_parent`) REFERENCES `' . $dbPool->get('core')->prefix . 'organization_unit` (`organization_unit_id`);'
)->execute();
$dbPool->get('core')->con->prepare(
'CREATE TABLE if NOT EXISTS `' . $dbPool->get('core')->prefix . 'organization_department` (
`organization_department_id` int(11) NOT NULL AUTO_INCREMENT,
`organization_department_name` varchar(30) DEFAULT NULL,
`organization_department_description` varchar(255) DEFAULT NULL,
`organization_department_parent` int(11) DEFAULT NULL,
`organization_department_status` int(3) DEFAULT NULL,
`organization_department_unit` int(11) NOT NULL,
PRIMARY KEY (`organization_department_id`),
KEY `organization_department_parent` (`organization_department_parent`),
KEY `organization_department_unit` (`organization_department_unit`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;'
)->execute();
$dbPool->get('core')->con->prepare(
'ALTER TABLE `' . $dbPool->get('core')->prefix . 'organization_department`
ADD CONSTRAINT `' . $dbPool->get('core')->prefix . 'organization_department_ibfk_1` FOREIGN KEY (`organization_department_parent`) REFERENCES `' . $dbPool->get('core')->prefix . 'organization_department` (`organization_department_id`),
ADD CONSTRAINT `' . $dbPool->get('core')->prefix . 'organization_department_ibfk_2` FOREIGN KEY (`organization_department_unit`) REFERENCES `' . $dbPool->get('core')->prefix . 'organization_unit` (`organization_unit_id`);'
)->execute();
$dbPool->get('core')->con->prepare(
'CREATE TABLE if NOT EXISTS `' . $dbPool->get('core')->prefix . 'organization_position` (
`organization_position_id` int(11) NOT NULL AUTO_INCREMENT,
`organization_position_name` varchar(50) DEFAULT NULL,
`organization_position_description` varchar(255) DEFAULT NULL,
`organization_position_parent` int(11) DEFAULT NULL,
`organization_position_status` int(3) DEFAULT NULL,
PRIMARY KEY (`organization_position_id`),
KEY `organization_position_parent` (`organization_position_parent`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;'
)->execute();
$dbPool->get('core')->con->prepare(
'ALTER TABLE `' . $dbPool->get('core')->prefix . 'organization_position`
ADD CONSTRAINT `' . $dbPool->get('core')->prefix . 'organization_position_ibfk_1` FOREIGN KEY (`organization_position_parent`) REFERENCES `' . $dbPool->get('core')->prefix . 'organization_position` (`organization_position_id`);'
)->execute();
$dbPool->get('core')->con->prepare(
'CREATE TABLE if NOT EXISTS `' . $dbPool->get('core')->prefix . 'organization_address` (
`organization_address_id` int(11) NOT NULL AUTO_INCREMENT,
`organization_address_status` tinyint(2) DEFAULT NULL,
`organization_address_matchcode` varchar(50) DEFAULT NULL,
`organization_address_name` varchar(50) DEFAULT NULL,
`organization_address_fao` varchar(30) DEFAULT NULL,
`organization_address_addr` varchar(50) DEFAULT NULL,
`organization_address_city` varchar(20) DEFAULT NULL,
`organization_address_zip` varchar(20) DEFAULT NULL,
`organization_address_state` varchar(20) DEFAULT NULL,
`organization_address_country` varchar(30) DEFAULT NULL,
`organization_address_unit` int(11) DEFAULT NULL,
PRIMARY KEY (`organization_address_id`),
KEY `organization_address_unit` (`organization_address_unit`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;'
)->execute();
$dbPool->get('core')->con->prepare(
'ALTER TABLE `' . $dbPool->get('core')->prefix . 'organization_address`
ADD CONSTRAINT `' . $dbPool->get('core')->prefix . 'organization_address_ibfk_1` FOREIGN KEY (`organization_address_unit`) REFERENCES `' . $dbPool->get('core')->prefix . 'organization_unit` (`organization_unit_id`);'
)->execute();
$dbPool->get('core')->con->prepare(
'INSERT INTO `' . $dbPool->get('core')->prefix . 'organization_unit` (`organization_unit_name`, `organization_unit_description`, `organization_unit_parent`) VALUES
(\'Default\', \'Default unit.\', NULL);'
)->execute();
break;
}
}
}

View File

@ -1,24 +0,0 @@
<?php
use phpOMS\Router\RouteVerb;
return [
'^.*/api/organization/position.*$' => [
[
'dest' => '\Modules\Organization\Controller:apiPositionCreate',
'verb' => RouteVerb::SET,
],
],
'^.*/api/organization/department.*$' => [
[
'dest' => '\Modules\Organization\Controller:apiDepartmentCreate',
'verb' => RouteVerb::SET,
],
],
'^.*/api/organization/unit.*$' => [
[
'dest' => '\Modules\Organization\Controller:apiUnitCreate',
'verb' => RouteVerb::SET,
],
],
];

View File

@ -1,60 +0,0 @@
<?php
use phpOMS\Router\RouteVerb;
return [
'^.*/backend/organization/unit/list.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewUnitList',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/unit/profile.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewUnitProfile',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/unit/create.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewUnitCreate',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/department/list.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewDepartmentList',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/department/profile.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewDepartmentProfile',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/department/create.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewDepartmentCreate',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/position/list.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewPositionList',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/position/profile.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewPositionProfile',
'verb' => RouteVerb::GET,
],
],
'^.*/backend/organization/position/create.*$' => [
[
'dest' => '\Modules\Organization\Controller:viewPositionCreate',
'verb' => RouteVerb::GET,
],
],
];

View File

@ -1,3 +0,0 @@
<?php
$moduleRoutes = [];

View File

@ -1,3 +0,0 @@
<?php
$moduleRoutes = [];

View File

@ -1,54 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Admin;
use phpOMS\DataStorage\Database\DatabasePool;
use phpOMS\DataStorage\Database\Schema\Builder;
use phpOMS\Module\UninstallAbstract;
/**
* Navigation class.
*
* @category Modules
* @package Modules\Admin
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Uninstall extends UninstallAbstract
{
/**
* {@inheritdoc}
*/
public static function uninstall(DatabasePool $dbPool, InfoManager $info)
{
parent::uninstall($dbPool, $info);
$query = new Builder($dbPool->get());
$query->prefix($dbPool->get('core')->getPrefix())->drop(
'organization_address',
'organization_department',
'organization_unit'
);
$dbPool->get()->con->prepare($query->toSql())->execute();
}
}

View File

@ -1,46 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Admin;
use phpOMS\DataStorage\Database\DatabasePool;
use phpOMS\Module\UpdateAbstract;
use phpOMS\System\File\Directory;
/**
* Navigation class.
*
* @category Modules
* @package Modules\Admin
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Update extends UpdateAbstract
{
/**
* {@inheritdoc}
*/
public static function update(DatabasePool $dbPool, array $info)
{
Directory::deletePath(__DIR__ . '/Update');
mkdir('Update');
parent::update($dbPool, $info);
}
}

View File

@ -1,382 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization;
use Model\Message\FormValidation;
use Modules\Organization\Models\Department;
use Modules\Organization\Models\DepartmentMapper;
use Modules\Organization\Models\Position;
use Modules\Organization\Models\PositionMapper;
use Modules\Organization\Models\Status;
use Modules\Organization\Models\Unit;
use Modules\Organization\Models\UnitMapper;
use phpOMS\Message\RequestAbstract;
use phpOMS\Message\ResponseAbstract;
use phpOMS\Module\ModuleAbstract;
use phpOMS\Module\WebInterface;
use phpOMS\Views\View;
/**
* Organization Controller class.
*
* @category Modules
* @package Modules\Organization
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
class Controller extends ModuleAbstract implements WebInterface
{
/**
* Module path.
*
* @var string
* @since 1.0.0
*/
/* public */ const MODULE_PATH = __DIR__;
/**
* Module version.
*
* @var string
* @since 1.0.0
*/
/* public */ const MODULE_VERSION = '1.0.0';
/**
* Module name.
*
* @var string
* @since 1.0.0
*/
/* public */ const MODULE_NAME = 'Organization';
/**
* Providing.
*
* @var string
* @since 1.0.0
*/
protected static $providing = [];
/**
* Dependencies.
*
* @var string
* @since 1.0.0
*/
protected static $dependencies = [
];
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewUnitList(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/unit-list');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004702001, $request, $response));
$view->addData('list:elements', UnitMapper::getAll());
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewUnitProfile(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/unit-profile');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004702001, $request, $response));
$view->addData('unit', UnitMapper::get((int) $request->getData('id')));
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewUnitCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/unit-create');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004702001, $request, $response));
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewDepartmentList(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/department-list');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004703001, $request, $response));
$view->addData('list:elements', DepartmentMapper::getAll());
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewDepartmentProfile(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/department-profile');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004703001, $request, $response));
$view->addData('department', DepartmentMapper::get((int) $request->getData('id')));
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewDepartmentCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/department-create');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004703001, $request, $response));
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewPositionList(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/position-list');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004704001, $request, $response));
$view->addData('list:elements', PositionMapper::getAll());
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewPositionProfile(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/position-profile');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004704001, $request, $response));
$view->addData('position', PositionMapper::get((int) $request->getData('id')));
return $view;
}
/**
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param mixed $data Generic data
*
* @return \Serializable
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function viewPositionCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable
{
$view = new View($this->app, $request, $response);
$view->setTemplate('/Modules/Organization/Theme/Backend/position-create');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004704001, $request, $response));
return $view;
}
private function validateUnitCreate(RequestAbstract $request) : array
{
$val = [];
if (
($val['name'] = empty($request->getData('name')))
|| ($val['parent'] = (
!empty($request->getData('parent'))
&& !is_numeric($request->getData('parent'))
))
|| ($val['status'] = (
$request->getData('status') === null
|| !Status::isValidValue((int) $request->getData('status'))
))
) {
return $val;
}
return [];
}
public function apiUnitCreate(RequestAbstract $request, ResponseAbstract $response, $data = null)
{
if (!empty($val = $this->validateUnitCreate($request))) {
$response->set('unit_create', new FormValidation($val));
return;
}
$unit = new Unit();
$unit->setName($request->getData('name'));
$unit->setDescription($request->getData('description') ?? '');
$unit->setStatus((int) $request->getData('status'));
UnitMapper::create($unit);
$response->set('unit', $unit->jsonSerialize());
}
private function validatePositionCreate(RequestAbstract $request) : array
{
$val = [];
if (
($val['name'] = empty($request->getData('name')))
|| ($val['parent'] = (
!empty($request->getData('parent'))
&& !is_numeric($request->getData('parent'))
))
|| ($val['status'] = (
$request->getData('status') === null
|| !Status::isValidValue((int) $request->getData('status'))
))
) {
return $val;
}
return [];
}
public function apiPositionCreate(RequestAbstract $request, ResponseAbstract $response, $data = null)
{
if (!empty($val = $this->validatePositionCreate($request))) {
$response->set('position_create', new FormValidation($val));
return;
}
$position = new Position();
$position->setName($request->getData('name'));
$position->setStatus((int) $request->getData('status'));
$position->setDescription($request->getData('description') ?? '');
PositionMapper::create($position);
$response->set('position', $position->jsonSerialize());
}
private function validateDepartmentCreate(RequestAbstract $request) : array
{
$val = [];
if (
($val['name'] = empty($request->getData('name')))
|| ($val['parent'] = (
!empty($request->getData('parent'))
&& !is_numeric($request->getData('parent'))
))
|| ($val['unit'] = (
!is_numeric((int) $request->getData('unit'))
))
) {
return $val;
}
return [];
}
public function apiDepartmentCreate(RequestAbstract $request, ResponseAbstract $response, $data = null)
{
if (!empty($val = $this->validateDepartmentCreate($request))) {
$response->set('department_create', new FormValidation($val));
return;
}
$department = new Department();
$department->setName($request->getData('name'));
$department->setStatus((int) $request->getData('status'));
$department->setDescription($request->getData('description') ?? '');
DepartmentMapper::create($department);
$response->set('department', $department->jsonSerialize());
}
}

View File

@ -1,122 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
class Department
{
protected $id = 0;
protected $name = '';
protected $parent = null;
protected $status = Status::INACTIVE;
protected $unit = 1;
protected $description = '';
public function getId() : int
{
return $this->id;
}
public function getName() : string
{
return $this->name;
}
public function setName(string $name)
{
return $this->name = $name;
}
public function getParent()
{
return $this->parent;
}
public function setParent(int $parent)
{
$this->parent = $parent;
}
public function getStatus() : int
{
return $this->status;
}
public function setStatus(int $status)
{
$this->status = $status;
}
public function getUnit() : int
{
return $this->unit;
}
public function setUnit(int $unit)
{
$this->unit = $unit;
}
public function getDescription() : string
{
return $this->description;
}
public function setDescription(string $desc)
{
$this->description = $desc;
}
public function toArray() : array
{
return [
'id' => $this->id,
'name' => $this->name,
'description' => $this->description,
'unit' => $this->unit,
];
}
/**
* Get string representation.
*
* @return string
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function __toString()
{
return json_encode($this->toArray());
}
/**
* Json serialize.
*
* @return string
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function jsonSerialize()
{
return $this->toArray();
}
}

View File

@ -1,59 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
use phpOMS\DataStorage\Database\DataMapperAbstract;
class DepartmentMapper extends DataMapperAbstract
{
/**
* Columns.
*
* @var array
* @since 1.0.0
*/
protected static $columns = [
'organization_department_id' => ['name' => 'organization_department_id', 'type' => 'int', 'internal' => 'id'],
'organization_department_name' => ['name' => 'organization_department_name', 'type' => 'string', 'internal' => 'name'],
'organization_department_description' => ['name' => 'organization_department_description', 'type' => 'string', 'internal' => 'description'],
'organization_department_parent' => ['name' => 'organization_department_parent', 'type' => 'int', 'internal' => 'parent'],
'organization_department_status' => ['name' => 'organization_department_status', 'type' => 'int', 'internal' => 'status'],
'organization_department_unit' => ['name' => 'organization_department_unit', 'type' => 'int', 'internal' => 'unit'],
];
protected static $belongsTo = [
'account' => [
'mapper' => UnitMapper::class,
'dest' => 'organization_department_unit',
],
];
/**
* Primary table.
*
* @var string
* @since 1.0.0
*/
protected static $table = 'organization_department';
/**
* Primary field name.
*
* @var string
* @since 1.0.0
*/
protected static $primaryField = 'organization_department_id';
}

View File

@ -1,111 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
use phpOMS\Contract\ArrayableInterface;
class Position implements ArrayableInterface, \JsonSerializable
{
private $id = 0;
private $name = '';
private $parent = null;
private $description = '';
protected $status = Status::INACTIVE;
public function getId() : int
{
return $this->id;
}
public function getName() : string
{
return $this->name;
}
public function setName(string $name)
{
$this->name = $name;
}
public function getParent()
{
return $this->parent;
}
public function setParent(int $parent)
{
$this->parent = $parent;
}
public function getStatus() : int
{
return $this->status;
}
public function setStatus(int $status)
{
$this->status = $status;
}
public function getDescription() : string
{
return $this->description;
}
public function setDescription(string $desc)
{
$this->description = $desc;
}
public function toArray() : array
{
return [
'id' => $this->id,
'name' => $this->name,
'description' => $this->description,
];
}
/**
* Get string representation.
*
* @return string
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function __toString()
{
return json_encode($this->toArray());
}
/**
* Json serialize.
*
* @return string
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function jsonSerialize()
{
return $this->toArray();
}
}

View File

@ -1,59 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
use phpOMS\DataStorage\Database\DataMapperAbstract;
class PositionMapper extends DataMapperAbstract
{
/**
* Columns.
*
* @var array
* @since 1.0.0
*/
protected static $columns = [
'organization_position_id' => ['name' => 'organization_position_id', 'type' => 'int', 'internal' => 'id'],
'organization_position_name' => ['name' => 'organization_position_name', 'type' => 'string', 'internal' => 'name'],
'organization_position_description' => ['name' => 'organization_position_description', 'type' => 'string', 'internal' => 'description'],
'organization_position_parent' => ['name' => 'organization_position_parent', 'type' => 'int', 'internal' => 'parent'],
'organization_position_status' => ['name' => 'organization_position_status', 'type' => 'int', 'internal' => 'status'],
];
protected static $belongsTo = [
'account' => [
'mapper' => PositionMapper::class,
'dest' => 'organization_position_parent',
],
];
/**
* Primary table.
*
* @var string
* @since 1.0.0
*/
protected static $table = 'organization_position';
/**
* Primary field name.
*
* @var string
* @since 1.0.0
*/
protected static $primaryField = 'organization_position_id';
}

View File

@ -1,38 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright 2013 Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
use phpOMS\Datatypes\Enum;
/**
* Accept status enum.
*
* @category Calendar
* @package Modules
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @license OMS License 1.0
* @link http://orange-management.com
* @since 1.0.0
*/
abstract class Status extends Enum
{
/* public */ const ACTIVE = 1;
/* public */ const INACTIVE = 2;
/* public */ const HIDDEN = 4;
}

View File

@ -1,111 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
use phpOMS\Contract\ArrayableInterface;
class Unit implements ArrayableInterface, \JsonSerializable
{
private $id = 0;
private $name = '';
private $parent = null;
private $description = '';
protected $status = Status::INACTIVE;
public function getId() : int
{
return $this->id;
}
public function getName() : string
{
return $this->name;
}
public function setName(string $name)
{
$this->name = $name;
}
public function getParent()
{
return $this->parent;
}
public function setParent(int $parent)
{
$this->parent = $parent;
}
public function getStatus() : int
{
return $this->status;
}
public function setStatus(int $status)
{
$this->status = $status;
}
public function getDescription() : string
{
return $this->description;
}
public function setDescription(string $desc)
{
$this->description = $desc;
}
public function toArray() : array
{
return [
'id' => $this->id,
'name' => $this->name,
'description' => $this->description,
];
}
/**
* Get string representation.
*
* @return string
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function __toString()
{
return json_encode($this->toArray());
}
/**
* Json serialize.
*
* @return string
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function jsonSerialize()
{
return $this->toArray();
}
}

View File

@ -1,58 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
namespace Modules\Organization\Models;
use phpOMS\DataStorage\Database\DataMapperAbstract;
class UnitMapper extends DataMapperAbstract
{
/**
* Columns.
*
* @var array
* @since 1.0.0
*/
protected static $columns = [
'organization_unit_id' => ['name' => 'organization_unit_id', 'type' => 'int', 'internal' => 'id'],
'organization_unit_name' => ['name' => 'organization_unit_name', 'type' => 'string', 'internal' => 'name'],
'organization_unit_description' => ['name' => 'organization_unit_description', 'type' => 'string', 'internal' => 'description'],
'organization_unit_parent' => ['name' => 'organization_unit_parent', 'type' => 'int', 'internal' => 'parent'],
'organization_unit_status' => ['name' => 'organization_unit_status', 'type' => 'int', 'internal' => 'status'],
];
protected static $belongsTo = [
'account' => [
'mapper' => UnitMapper::class,
'dest' => 'organization_uni_parent',
],
];
/**
* Primary table.
*
* @var string
* @since 1.0.0
*/
protected static $table = 'organization_unit';
/**
* Primary field name.
*
* @var string
* @since 1.0.0
*/
protected static $primaryField = 'organization_unit_id';
}

View File

@ -1 +0,0 @@
# Business #

View File

@ -1,21 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
return ['Navigation' => [
'Departments' => 'Departments',
'Organization' => 'Organization',
'Positions' => 'Positions',
'Units' => 'Units',
]];

View File

@ -1,29 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
return ['Organization' => [
'Active' => 'Active',
'Department' => 'Department',
'Departments' => 'Departments',
'Description' => 'Description',
'Inactive' => 'Inactive',
'Name' => 'Name',
'Parent' => 'Parent',
'Position' => 'Position',
'Positions' => 'Positions',
'Status' => 'Status',
'Unit' => 'Unit',
'Units' => 'Units',
]];

View File

@ -1,44 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12 col-md-6">
<section class="box wf-100">
<header><h1><?= $this->getText('Department'); ?></h1></header>
<div class="inner">
<form id="fDepartmentCreate" method="POST" action="<?= \phpOMS\Uri\UriFactory::build('{/base}{/rootPath}{/lang}/api/organization/department'); ?>">
<table class="layout wf-100">
<tr><td><label for="iName"><?= $this->getText('Name'); ?></label>
<tr><td><input type="text" name="name" id="iName" placeholder="&#xf040; R&D" required>
<tr><td><label for="iParent"><?= $this->getText('Parent'); ?></label>
<tr><td><span class="input"><button type="button" formaction=""><i class="fa fa-book"></i></button><input type="text" name="parent" id="iParent"></span>
<tr><td><label for="iUnit"><?= $this->getText('Unit'); ?></label>
<tr><td><select name="unit" id="iUnit">
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription" placeholder="&#xf040;"></textarea>
<tr><td><input type="submit" value="<?= $this->getText('Create', 0, 0); ?>">
</table>
</form>
</div>
</section>
</div>
</div>

View File

@ -1,58 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
$footerView = new \Web\Views\Lists\PaginationView($this->app, $this->request, $this->response);
$footerView->setTemplate('/Web/Templates/Lists/Footer/PaginationBig');
$footerView->setPages(1 / 25);
$footerView->setPage(1);
$footerView->setResults(1);
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12">
<div class="box wf-100">
<table class="table">
<caption><?= $this->getText('Departments'); ?></caption>
<thead>
<tr>
<td><?= $this->getText('ID', 0, 0); ?>
<td class="wf-100"><?= $this->getText('Name'); ?>
<td><?= $this->getText('Parent'); ?>
<td><?= $this->getText('Unit'); ?>
<tfoot>
<tr><td colspan="4"><?= $footerView->render(); ?>
<tbody>
<?php $c = 0; foreach ($this->getData('list:elements') as $key => $value) : $c++;
$url = \phpOMS\Uri\UriFactory::build('/{/lang}/backend/organization/department/profile?{?}&id=' . $value->getId()); ?>
<tr>
<td><a href="<?= $url; ?>"><?= $value->getId(); ?></a>
<td><a href="<?= $url; ?>"><?= $value->getName(); ?></a>
<td><a href="<?= $url; ?>"><?= $value->getParent(); ?></a>
<td><a href="<?= $url; ?>"><?= $value->getUnit(); ?></a>
<?php endforeach; ?>
<?php if($c === 0) : ?>
<tr>
<td colspan="4" class="empty"><?= $this->getText('Empty', 0, 0); ?>
<?php endif; ?>
</table>
</div>
</div>
</div>

View File

@ -1,48 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
$department = $this->getData('department');
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12 col-md-6">
<section class="box wf-100">
<header><h1><?= $this->getText('Department'); ?></h1></header>
<div class="inner">
<form>
<table class="layout wf-100">
<tr><td><label for="iName"><?= $this->getText('Name'); ?></label>
<tr><td><input type="text" name="name" id="iName" value="<?= $department->getName(); ?>">
<tr><td><label for="iParent"><?= $this->getText('Parent'); ?></label>
<tr><td><input type="text" name="parent" id="iParent" value="<?= $department->getParent(); ?>">
<tr><td><label for="iStatus"><?= $this->getText('Status'); ?></label>
<tr><td><select name="status" id="iStatus">
<option><?= $this->getText('Active'); ?>
<option><?= $this->getText('Inactive'); ?>
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription"><?= $department->getDescription(); ?></textarea>
<tr><td><input type="submit" value="<?= $this->getText('Save', 0) ?>">
</table>
</form>
</div>
</section>
</div>
</div>

View File

@ -1,46 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12 col-md-6">
<section class="box wf-100">
<header><h1><?= $this->getText('Position'); ?></h1></header>
<div class="inner">
<form id="fPositionCreate" method="POST" action="<?= \phpOMS\Uri\UriFactory::build('{/base}{/rootPath}{/lang}/api/organization/position'); ?>">
<table class="layout wf-100">
<tr><td><label for="iName"><?= $this->getText('Name'); ?></label>
<tr><td><input type="text" name="name" id="iName" placeholder="&#xf040; Orange Management" required>
<tr><td><label for="iParent"><?= $this->getText('Parent'); ?></label>
<tr><td><span class="input"><button type="button" formaction=""><i class="fa fa-book"></i></button><input type="text" name="parent" id="iParent"></span>
<tr><td><label for="iStatus"><?= $this->getText('Status'); ?></label>
<tr><td><select name="status" id="iStatus">
<option value="<?= \Modules\Organization\Models\Status::ACTIVE; ?>"><?= $this->getText('Active'); ?>
<option value="<?= \Modules\Organization\Models\Status::INACTIVE; ?>"><?= $this->getText('Inactive'); ?>
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription" placeholder="&#xf040;"></textarea>
<tr><td><input type="submit" value="<?= $this->getText('Create', 0, 0); ?>">
</table>
</form>
</div>
</section>
</div>
</div>

View File

@ -1,57 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
$footerView = new \Web\Views\Lists\PaginationView($this->app, $this->request, $this->response);
$footerView->setTemplate('/Web/Templates/Lists/Footer/PaginationBig');
$footerView->setPages(1 / 25);
$footerView->setPage(1);
$footerView->setResults(1);
$listElements = $this->getData('list:elements') ?? [];
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12">
<div class="box wf-100">
<table class="table">
<caption><?= $this->getText('Positions'); ?></caption>
<thead>
<tr>
<td><?= $this->getText('ID', 0, 0); ?>
<td class="wf-100"><?= $this->getText('Name'); ?>
<td><?= $this->getText('Parent'); ?>
<tfoot>
<tr><td colspan="3"><?= $footerView->render(); ?>
<tbody>
<?php $count = 0; foreach($listElements as $key => $value) : $count++;
$url = \phpOMS\Uri\UriFactory::build('/{/lang}/backend/organization/position/profile?{?}&id=' . $value->getId()); ?>
<tr>
<td><a href="<?= $url; ?>"><?= $value->getId(); ?></a>
<td><a href="<?= $url; ?>"><?= $value->getName(); ?></a>
<td><a href="<?= $url; ?>"><?= $value->getParent(); ?></a>
<?php endforeach; ?>
<?php if($count === 0) : ?>
<tr><td colspan="5" class="empty"><?= $this->getText('Empty', 0, 0); ?>
<?php endif; ?>
</table>
</div>
</div>
</div>

View File

@ -1,48 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
$position = $this->getData('position');
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12 col-md-6">
<section class="box wf-100">
<header><h1><?= $this->getText('Position'); ?></h1></header>
<div class="inner">
<form>
<table class="layout wf-100">
<tr><td><label for="iName"><?= $this->getText('Name'); ?></label>
<tr><td><input type="text" name="name" id="iName" value="<?= $position->getName(); ?>">
<tr><td><label for="iParent"><?= $this->getText('Parent'); ?></label>
<tr><td><input type="text" name="parent" id="iParent" value="<?= $position->getParent(); ?>">
<tr><td><label for="iStatus"><?= $this->getText('Status'); ?></label>
<tr><td><select name="status" id="iStatus">
<option><?= $this->getText('Active'); ?>
<option><?= $this->getText('Inactive'); ?>
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription"><?= $position->getDescription(); ?></textarea>
<tr><td><input type="submit" value="<?= $this->getText('Save', 0) ?>">
</table>
</form>
</div>
</section>
</div>
</div>

View File

@ -1,46 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12 col-md-6">
<section class="box wf-100">
<header><h1><?= $this->getText('Unit'); ?></h1></header>
<div class="inner">
<form id="fUnitCreate" method="POST" action="<?= \phpOMS\Uri\UriFactory::build('{/base}{/rootPath}{/lang}/api/organization/unit'); ?>">
<table class="layout wf-100">
<tr><td><label for="iName"><?= $this->getText('Name'); ?></label>
<tr><td><input type="text" name="name" id="iName" placeholder="&#xf040; Orange Management" required>
<tr><td><label for="iParent"><?= $this->getText('Parent'); ?></label>
<tr><td><span class="input"><button type="button" formaction=""><i class="fa fa-book"></i></button><input type="text" name="parent" id="iParent"></span>
<tr><td><label for="iStatus"><?= $this->getText('Status'); ?></label>
<tr><td><select name="status" id="iStatus">
<option value="<?= \Modules\Organization\Models\Status::ACTIVE; ?>"><?= $this->getText('Active'); ?>
<option value="<?= \Modules\Organization\Models\Status::INACTIVE; ?>"><?= $this->getText('Inactive'); ?>
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription" placeholder="&#xf040;"></textarea>
<tr><td><input type="submit" value="<?= $this->getText('Create', 0, 0); ?>">
</table>
</form>
</div>
</section>
</div>
</div>

View File

@ -1,52 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
$footerView = new \Web\Views\Lists\PaginationView($this->app, $this->request, $this->response);
$footerView->setTemplate('/Web/Templates/Lists/Footer/PaginationBig');
$footerView->setPages(1 / 25);
$footerView->setPage(1);
$footerView->setResults(1);
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12">
<div class="box wf-100">
<table class="table">
<caption><?= $this->getText('Units'); ?></caption>
<thead>
<tr>
<td><?= $this->getText('ID', 0, 0); ?>
<td class="wf-100"><?= $this->getText('Name'); ?>
<td><?= $this->getText('Parent'); ?>
<tfoot>
<tr><td colspan="3"><?= $footerView->render(); ?>
<tbody>
<?php foreach ($this->getData('list:elements') as $key => $value) :
$url = \phpOMS\Uri\UriFactory::build('/{/lang}/backend/organization/unit/profile?{?}&id=' . $value->getId()); ?>
<tr>
<td data-label="<?= $this->getText('ID', 0, 0); ?>"><a href="<?= $url; ?>"><?= $value->getId(); ?></a>
<td data-label="<?= $this->getText('Name'); ?>"><a href="<?= $url; ?>"><?= $value->getName(); ?></a>
<td data-label="<?= $this->getText('Parent'); ?>"><a href="<?= $url; ?>"><?= $value->getParent(); ?></a>
<?php endforeach; ?>
</table>
</div>
</div>
</div>

View File

@ -1,48 +0,0 @@
<?php
/**
* Orange Management
*
* PHP Version 7.1
*
* @category TBD
* @package TBD
* @author OMS Development Team <dev@oms.com>
* @author Dennis Eichhorn <d.eichhorn@oms.com>
* @copyright Dennis Eichhorn
* @license OMS License 1.0
* @version 1.0.0
* @link http://orange-management.com
*/
/**
* @var \phpOMS\Views\View $this
*/
$unit = $this->getData('unit');
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12 col-md-6">
<section class="box wf-100">
<header><h1><?= $this->getText('Unit'); ?></h1></header>
<div class="inner">
<form>
<table class="layout wf-100">
<tr><td><label for="iName"><?= $this->getText('Name'); ?></label>
<tr><td><input type="text" name="name" id="iName" value="<?= $unit->getName(); ?>">
<tr><td><label for="iParent"><?= $this->getText('Parent'); ?></label>
<tr><td><span class="input"><button type="button" formaction=""><i class="fa fa-book"></i></button><input type="text" name="parent" id="iParent" value="<?= $unit->getParent(); ?>" required></span>
<tr><td><label for="iStatus"><?= $this->getText('Status'); ?></label>
<tr><td><select name="status" id="iStatus">
<option><?= $this->getText('Active'); ?>
<option><?= $this->getText('Inactive'); ?>
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription"><?= $unit->getDescription(); ?></textarea>
<tr><td><input type="submit" value="<?= $this->getText('Save', 0) ?>">
</table>
</form>
</div>
</section>
</div>
</div>

View File

@ -1,44 +0,0 @@
{
"name": {
"id": 1004700000,
"internal": "Organization",
"external": "OMS Organization"
},
"version": "1.0.0",
"requirements": {
"phpOMS": "1.0.0",
"phpOMS-db": "1.0.0"
},
"creator": {
"name": "Orange Management",
"website": "www.spl1nes.com"
},
"description": "The buisness module.",
"directory": "Organization",
"dependencies": {
"Admin" : "1.0.0"
},
"providing": {
"Navigation": "*"
},
"load": [
{
"pid": [
"4b04e005b108e41e107bf2e16b858588275200f3"
],
"type": 4,
"for": "Organization",
"file": "Organization",
"from": "Admin"
},
{
"pid": [
"754a08ddf8bcb1cf22f310f09206dd783d42f7dd"
],
"type": 5,
"from": "Organization",
"for": "Navigation",
"file": "Navigation"
}
]
}