Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f143ef9732 | |||
| 606154ff24 | |||
| 8cf7370cae | |||
| bf2a772566 | |||
| ddb7e645a0 |
@@ -189,6 +189,13 @@ function bindOrganisationButtons(el, options) {
|
|||||||
var options = {
|
var options = {
|
||||||
ajax: {
|
ajax: {
|
||||||
url: site.uri.public + '/api/organisations',
|
url: site.uri.public + '/api/organisations',
|
||||||
|
data: function (params) {
|
||||||
|
return {
|
||||||
|
filters: {
|
||||||
|
info : params.term
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
processResults: function (data) {
|
processResults: function (data) {
|
||||||
var items = data.rows.filter((i) => i.slug != organisation_slug);
|
var items = data.rows.filter((i) => i.slug != organisation_slug);
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -255,7 +255,7 @@ class OrganisationController extends SimpleController
|
|||||||
// Check if name or slug already exists
|
// Check if name or slug already exists
|
||||||
if (
|
if (
|
||||||
isset($data['name']) &&
|
isset($data['name']) &&
|
||||||
$data['name'] != $organisation->name &&
|
strtolower($data['name']) != strtolower($organisation->name) &&
|
||||||
$classMapper->getClassMapping('organisation')::findUnique($data['name'], 'name')
|
$classMapper->getClassMapping('organisation')::findUnique($data['name'], 'name')
|
||||||
) {
|
) {
|
||||||
$ms->addMessageTranslated('danger', 'ORGANISATION.NAME.IN_USE', $data);
|
$ms->addMessageTranslated('danger', 'ORGANISATION.NAME.IN_USE', $data);
|
||||||
|
|||||||
@@ -311,6 +311,14 @@ class OrganisationPermissions extends BaseSeed
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$roleUserAdmin = Role::where('slug', 'user-admin')->first();
|
||||||
|
if ($roleSiteAdmin) {
|
||||||
|
$roleSiteAdmin->permissions()->syncWithoutDetaching([
|
||||||
|
$permissions['view_user_field']->id,
|
||||||
|
$permissions['update_user_field']->id,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
$roleGroupAdmin = Role::where('slug', 'group-admin')->first();
|
$roleGroupAdmin = Role::where('slug', 'group-admin')->first();
|
||||||
if ($roleGroupAdmin) {
|
if ($roleGroupAdmin) {
|
||||||
$roleGroupAdmin->permissions()->sync([
|
$roleGroupAdmin->permissions()->sync([
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ namespace UserFrosting\Sprinkle\Organisations\Sprunje;
|
|||||||
use Illuminate\Database\Schema\Builder;
|
use Illuminate\Database\Schema\Builder;
|
||||||
use UserFrosting\Sprinkle\Core\Facades\Translator;
|
use UserFrosting\Sprinkle\Core\Facades\Translator;
|
||||||
use UserFrosting\Sprinkle\Core\Sprunje\Sprunje;
|
use UserFrosting\Sprinkle\Core\Sprunje\Sprunje;
|
||||||
use UserFrosting\Sprinkle\Admin\Sprunje\UserSprunje as UFUserSprunje;
|
use UserFrosting\Sprinkle\UFTweaks\Sprunje\UserSprunje as UFUserSprunje;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* UserSprunje.
|
* UserSprunje.
|
||||||
@@ -29,8 +29,10 @@ class UserSprunje extends UFUserSprunje
|
|||||||
'last_activity',
|
'last_activity',
|
||||||
'status',
|
'status',
|
||||||
];
|
];
|
||||||
|
|
||||||
protected $sortable = [
|
protected $sortable = [
|
||||||
'name',
|
'name',
|
||||||
|
'organisations',
|
||||||
'last_activity',
|
'last_activity',
|
||||||
'status',
|
'status',
|
||||||
];
|
];
|
||||||
@@ -56,6 +58,7 @@ class UserSprunje extends UFUserSprunje
|
|||||||
*/
|
*/
|
||||||
protected function sortOrganisations($query, $direction)
|
protected function sortOrganisations($query, $direction)
|
||||||
{
|
{
|
||||||
|
$query = $query->addSelect('organisations.name');
|
||||||
$query->orderBy('organisations.name', $direction);
|
$query->orderBy('organisations.name', $direction);
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
@@ -75,13 +78,64 @@ class UserSprunje extends UFUserSprunje
|
|||||||
$values = explode($this->orSeparator, $value);
|
$values = explode($this->orSeparator, $value);
|
||||||
$query->where(function ($query) use ($values) {
|
$query->where(function ($query) use ($values) {
|
||||||
foreach ($values as $value) {
|
foreach ($values as $value) {
|
||||||
$query->orLike('organisations.name', $value);
|
$likeValue = '%' . mb_strtolower($value) . '%';
|
||||||
|
$query->orWhereRaw('LOWER(organisations.name) LIKE ?', $likeValue);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sort based on last activity time.
|
||||||
|
*
|
||||||
|
* @param Builder $query
|
||||||
|
* @param string $direction
|
||||||
|
*
|
||||||
|
* @return self
|
||||||
|
*/
|
||||||
|
protected function sortLastActivity($query, $direction)
|
||||||
|
{
|
||||||
|
$query = $query->addSelect('activities.occurred_at');
|
||||||
|
$query->orderBy('activities.occurred_at', $direction);
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sort based on last name.
|
||||||
|
*
|
||||||
|
* @param Builder $query
|
||||||
|
* @param string $direction
|
||||||
|
*
|
||||||
|
* @return self
|
||||||
|
*/
|
||||||
|
protected function sortName($query, $direction)
|
||||||
|
{
|
||||||
|
$query = $query->addSelect('last_name');
|
||||||
|
$query = $query->addSelect('first_name');
|
||||||
|
$query->orderBy('last_name', $direction)->orderBy('first_name', $direction);
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sort active, unactivated, disabled.
|
||||||
|
*
|
||||||
|
* @param Builder $query
|
||||||
|
* @param string $direction
|
||||||
|
*
|
||||||
|
* @return self
|
||||||
|
*/
|
||||||
|
protected function sortStatus($query, $direction)
|
||||||
|
{
|
||||||
|
$query = $query->addSelect('flag_enabled');
|
||||||
|
$query = $query->addSelect('flag_verified');
|
||||||
|
$query->orderBy('flag_enabled', $direction)->orderBy('flag_verified', $direction);
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the unpaginated count of items (before filtering) in this query.
|
* Get the unpaginated count of items (before filtering) in this query.
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user