Adding mobile modules endpoint

This commit is contained in:
Thilina Hasantha
2019-02-19 07:05:10 +01:00
parent ca58e75556
commit c3344b99fa
2 changed files with 31 additions and 0 deletions

View File

@@ -50,5 +50,10 @@ class MetadataAdminManager extends AbstractModuleManager
$restEndPoint = new MetadataRestEndPoint();
$restEndPoint->process('getCountries', []);
});
\Classes\Macaw::get(REST_API_PATH.'meta/mobile-modules', function () {
$restEndPoint = new MetadataRestEndPoint();
$restEndPoint->process('getMobileModules', []);
});
}
}

View File

@@ -2,7 +2,9 @@
namespace Metadata\Rest;
use Classes\Data\Query\DataQuery;
use Classes\IceResponse;
use Classes\RestEndPoint;
use Modules\Common\Model\Module;
use Users\Common\Model\User;
class MetadataRestEndPoint extends RestEndPoint
@@ -20,4 +22,28 @@ class MetadataRestEndPoint extends RestEndPoint
$query->setLength(500);
return $this->listByQuery($query);
}
public function getMobileModules(User $user)
{
$mobileModules = [
'leaves' => false,
'attendance' => false,
'staffdirectory' => false,
'expenses' => false,
];
foreach ($mobileModules as $key => $value) {
$mobileModules[$key] = $this->isUserModuleEnabled($key);
}
return new IceResponse(IceResponse::SUCCESS, ['data' => $mobileModules]);
}
private function isUserModuleEnabled($name)
{
$module = new Module();
$modules = $module->Find('name = ? and mod_group = ? and status = ?', [$name, 'user', 'Enabled']);
return count($modules) > 0;
}
}