3 commits - lib/client public_html/js public_html/skins
Aleksander Machniak
machniak at kolabsys.com
Thu Oct 4 14:21:33 CEST 2012
lib/client/kolab_client_task_domain.php | 1
lib/client/kolab_client_task_group.php | 1
lib/client/kolab_client_task_resource.php | 1
lib/client/kolab_client_task_role.php | 1
lib/client/kolab_client_task_settings.php | 33 ++++++++++++++++++++++++++
lib/client/kolab_client_task_user.php | 1
public_html/js/kolab_admin.js | 2 -
public_html/skins/default/templates/main.html | 2 -
8 files changed, 40 insertions(+), 2 deletions(-)
New commits:
commit fa90d7162e54daca1b4a8eedf881122c8d966318
Author: Aleksander Machniak <alec at alec.pl>
Date: Thu Oct 4 14:20:53 2012 +0200
Fix jumping to previous page when deleting last record on current page
diff --git a/lib/client/kolab_client_task_domain.php b/lib/client/kolab_client_task_domain.php
index 8a538fc..edb716e 100644
--- a/lib/client/kolab_client_task_domain.php
+++ b/lib/client/kolab_client_task_domain.php
@@ -177,6 +177,7 @@ class kolab_client_task_domain extends kolab_client_task
$this->output->set_env('search_request', $search_request ? base64_encode(serialize($search_request)) : null);
$this->output->set_env('list_page', $page);
$this->output->set_env('list_count', $count);
+ $this->output->set_env('list_size', $i);
$this->output->set_object('domainlist', $table);
}
diff --git a/lib/client/kolab_client_task_group.php b/lib/client/kolab_client_task_group.php
index eb5e6b7..3349129 100644
--- a/lib/client/kolab_client_task_group.php
+++ b/lib/client/kolab_client_task_group.php
@@ -169,6 +169,7 @@ class kolab_client_task_group extends kolab_client_task
$this->output->set_env('search_request', $search_request ? base64_encode(serialize($search_request)) : null);
$this->output->set_env('list_page', $page);
$this->output->set_env('list_count', $count);
+ $this->output->set_env('list_size', count($result));
$this->output->set_object('grouplist', $table);
}
diff --git a/lib/client/kolab_client_task_resource.php b/lib/client/kolab_client_task_resource.php
index f0ce4b0..a5669be 100644
--- a/lib/client/kolab_client_task_resource.php
+++ b/lib/client/kolab_client_task_resource.php
@@ -171,6 +171,7 @@ class kolab_client_task_resource extends kolab_client_task
$this->output->set_env('search_request', $search_request ? base64_encode(serialize($search_request)) : null);
$this->output->set_env('list_page', $page);
$this->output->set_env('list_count', $count);
+ $this->output->set_env('list_size', count($result));
$this->output->set_object('resourcelist', $table);
}
diff --git a/lib/client/kolab_client_task_role.php b/lib/client/kolab_client_task_role.php
index beac689..5539ceb 100644
--- a/lib/client/kolab_client_task_role.php
+++ b/lib/client/kolab_client_task_role.php
@@ -169,6 +169,7 @@ class kolab_client_task_role extends kolab_client_task
$this->output->set_env('search_request', $search_request ? base64_encode(serialize($search_request)) : null);
$this->output->set_env('list_page', $page);
$this->output->set_env('list_count', $count);
+ $this->output->set_env('list_size', count($result));
$this->output->set_object('rolelist', $table);
}
diff --git a/lib/client/kolab_client_task_settings.php b/lib/client/kolab_client_task_settings.php
index ca29f50..f149ba0 100644
--- a/lib/client/kolab_client_task_settings.php
+++ b/lib/client/kolab_client_task_settings.php
@@ -330,6 +330,7 @@ class kolab_client_task_settings extends kolab_client_task
$this->output->set_env('search_request', $search_request ? base64_encode(serialize($search_request)) : null);
$this->output->set_env('list_page', $page);
$this->output->set_env('list_count', $count);
+ $this->output->set_env('list_size', count($result));
$this->output->set_object('typelist', $table);
}
diff --git a/lib/client/kolab_client_task_user.php b/lib/client/kolab_client_task_user.php
index cf4d9b9..3edf551 100644
--- a/lib/client/kolab_client_task_user.php
+++ b/lib/client/kolab_client_task_user.php
@@ -169,6 +169,7 @@ class kolab_client_task_user extends kolab_client_task
$this->output->set_env('search_request', $search_request ? base64_encode(serialize($search_request)) : null);
$this->output->set_env('list_page', $page);
$this->output->set_env('list_count', $count);
+ $this->output->set_env('list_size', count($result));
$this->output->set_object('userlist', $table);
}
diff --git a/public_html/js/kolab_admin.js b/public_html/js/kolab_admin.js
index 928ef30..fd4d3fd 100644
--- a/public_html/js/kolab_admin.js
+++ b/public_html/js/kolab_admin.js
@@ -1652,7 +1652,7 @@ function kolab_admin()
// if objects list exists
if ($('#'+list_id).length) {
// goto previous page if last record on the current page has been deleted
- if (action.match(/\.delete/) && this.env.list_count)
+ if (this.env.list_page > 1 && this.env.list_size == 1 && action.match(/\.delete/))
page -= 1;
this.command(list, {page: page});
commit b6f32c5f2c7b7c5bee8bec5471af953966f91467
Author: Aleksander Machniak <alec at alec.pl>
Date: Thu Oct 4 13:56:01 2012 +0200
Remove useless title attribute
diff --git a/public_html/skins/default/templates/main.html b/public_html/skins/default/templates/main.html
index 829c407..0de2e4f 100644
--- a/public_html/skins/default/templates/main.html
+++ b/public_html/skins/default/templates/main.html
@@ -22,7 +22,7 @@
{$user.domain}
{/if}
</span>
- <span class="logout link" title="{$engine->translate('logout')}" onclick="kadm.main_logout()">{$engine->translate('logout')}</span>
+ <span class="logout link" onclick="kadm.main_logout()">{$engine->translate('logout')}</span>
</div>
<div id="navigation">{$main_menu}</div>
<div id="task_navigation">{$task_menu}</div>
commit 66bcdff3e17b93eed887f6ca81d2b29c5bddd9ff
Author: Aleksander Machniak <alec at alec.pl>
Date: Thu Oct 4 13:55:33 2012 +0200
Implement searching in object types
diff --git a/lib/client/kolab_client_task_settings.php b/lib/client/kolab_client_task_settings.php
index 4dffdb6..ca29f50 100644
--- a/lib/client/kolab_client_task_settings.php
+++ b/lib/client/kolab_client_task_settings.php
@@ -213,6 +213,38 @@ class kolab_client_task_settings extends kolab_client_task
// get object types list
$result = $this->object_types($type);
+ // Implement searching here, not in the API, we don't expect too many records
+ if (!empty($search_request)) {
+ foreach ($result as $idx => $record) {
+ $found = false;
+ foreach ($search_request as $key => $value) {
+ if (!empty($record[$key])) {
+ $s = mb_strtoupper($value['value']);
+ $v = mb_strtoupper($record[$key]);
+ switch ($value['type']) {
+ case 'both':
+ $res = $v === $s || strpos($v, $s) !== false;
+ break;
+ case 'exact':
+ $res = $v === $s;
+ break;
+ case 'prefix':
+ $res = strpos($v, $s) === 0;
+ break;
+ }
+
+ if ($res) {
+ $found = true;
+ break;
+ }
+ }
+ }
+ if (!$found) {
+ unset($result[$idx]);
+ }
+ }
+ }
+
// assign ID
foreach (array_keys($result) as $idx) {
$result[$idx]['id'] = $idx;
More information about the commits
mailing list