diff --git a/3rdparty/css/chosen-sprite.png b/3rdparty/css/chosen-sprite.png
new file mode 100644
index 00000000000..f20db4439ea
Binary files /dev/null and b/3rdparty/css/chosen-sprite.png differ
diff --git a/3rdparty/css/chosen.css b/3rdparty/css/chosen.css
new file mode 100644
index 00000000000..247d07bf021
--- /dev/null
+++ b/3rdparty/css/chosen.css
@@ -0,0 +1,340 @@
+/* @group Base */
+select.chzn-select {
+ visibility: hidden;
+ height: 28px !important;
+ min-height: 28px !important;
+}
+.chzn-container {
+ font-size: 13px;
+ position: relative;
+ display: inline-block;
+ zoom: 1;
+ *display: inline;
+}
+.chzn-container .chzn-drop {
+ background: #fff;
+ border: 1px solid #aaa;
+ border-top: 0;
+ position: absolute;
+ top: 29px;
+ left: 0;
+ -webkit-box-shadow: 0 4px 5px rgba(0,0,0,.15);
+ -moz-box-shadow : 0 4px 5px rgba(0,0,0,.15);
+ -o-box-shadow : 0 4px 5px rgba(0,0,0,.15);
+ box-shadow : 0 4px 5px rgba(0,0,0,.15);
+ z-index: 999;
+}
+/* @end */
+
+/* @group Single Chosen */
+.chzn-container-single .chzn-single {
+ background-color: #fff;
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eeeeee), color-stop(0.5, white));
+ background-image: -webkit-linear-gradient(center bottom, #eeeeee 0%, white 50%);
+ background-image: -moz-linear-gradient(center bottom, #eeeeee 0%, white 50%);
+ background-image: -o-linear-gradient(top, #eeeeee 0%,#ffffff 50%);
+ background-image: -ms-linear-gradient(top, #eeeeee 0%,#ffffff 50%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#ffffff',GradientType=0 );
+ background-image: linear-gradient(top, #eeeeee 0%,#ffffff 50%);
+ -webkit-border-radius: 4px;
+ -moz-border-radius : 4px;
+ border-radius : 4px;
+ -moz-background-clip : padding;
+ -webkit-background-clip: padding-box;
+ background-clip : padding-box;
+ border: 1px solid #aaa;
+ display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ position: relative;
+ height: 26px;
+ line-height: 26px;
+ padding: 0 0 0 8px;
+ color: #444;
+ text-decoration: none;
+}
+.chzn-container-single .chzn-single span {
+ margin-right: 26px;
+ display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ -o-text-overflow: ellipsis;
+ -ms-text-overflow: ellipsis;
+ -moz-binding: url('/xml/ellipsis.xml#ellipsis');
+ text-overflow: ellipsis;
+}
+.chzn-container-single .chzn-single div {
+ -webkit-border-radius: 0 4px 4px 0;
+ -moz-border-radius : 0 4px 4px 0;
+ border-radius : 0 4px 4px 0;
+ -moz-background-clip : padding;
+ -webkit-background-clip: padding-box;
+ background-clip : padding-box;
+ background: #ccc;
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
+ background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
+ background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
+ background-image: -o-linear-gradient(bottom, #ccc 0%, #eee 60%);
+ background-image: -ms-linear-gradient(top, #cccccc 0%,#eeeeee 60%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#eeeeee',GradientType=0 );
+ background-image: linear-gradient(top, #cccccc 0%,#eeeeee 60%);
+ border-left: 1px solid #aaa;
+ position: absolute;
+ right: 0;
+ top: 0;
+ display: block;
+ height: 100%;
+ width: 18px;
+}
+.chzn-container-single .chzn-single div b {
+ background: url('chosen-sprite.png') no-repeat 0 1px;
+ display: block;
+ width: 100%;
+ height: 100%;
+}
+.chzn-container-single .chzn-search {
+ padding: 3px 4px;
+ margin: 0;
+ white-space: nowrap;
+}
+.chzn-container-single .chzn-search input {
+ background: #fff url('chosen-sprite.png') no-repeat 100% -20px;
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ margin: 1px 0;
+ padding: 4px 20px 4px 5px;
+ outline: 0;
+ border: 1px solid #aaa;
+ font-family: sans-serif;
+ font-size: 1em;
+}
+.chzn-container-single .chzn-drop {
+ -webkit-border-radius: 0 0 4px 4px;
+ -moz-border-radius : 0 0 4px 4px;
+ border-radius : 0 0 4px 4px;
+ -moz-background-clip : padding;
+ -webkit-background-clip: padding-box;
+ background-clip : padding-box;
+}
+/* @end */
+
+/* @group Multi Chosen */
+.chzn-container-multi .chzn-choices {
+ background-color: #fff;
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
+ background-image: -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
+ background-image: -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
+ background-image: -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
+ background-image: -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
+ background-image: linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ border: 1px solid #aaa;
+ margin: 0;
+ padding: 0;
+ cursor: text;
+ overflow: hidden;
+ height: auto !important;
+ height: 1%;
+ position: relative;
+}
+.chzn-container-multi .chzn-choices li {
+ float: left;
+ list-style: none;
+}
+.chzn-container-multi .chzn-choices .search-field {
+ white-space: nowrap;
+ margin: 0;
+ padding: 0;
+}
+.chzn-container-multi .chzn-choices .search-field input {
+ color: #666;
+ background: transparent !important;
+ border: 0 !important;
+ padding: 5px;
+ margin: 1px 0;
+ outline: 0;
+ -webkit-box-shadow: none;
+ -moz-box-shadow : none;
+ -o-box-shadow : none;
+ box-shadow : none;
+}
+.chzn-container-multi .chzn-choices .search-field .default {
+ color: #999;
+}
+.chzn-container-multi .chzn-choices .search-choice {
+ -webkit-border-radius: 3px;
+ -moz-border-radius : 3px;
+ border-radius : 3px;
+ -moz-background-clip : padding;
+ -webkit-background-clip: padding-box;
+ background-clip : padding-box;
+ background-color: #e4e4e4;
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e4e4e4), color-stop(0.7, #eeeeee));
+ background-image: -webkit-linear-gradient(center bottom, #e4e4e4 0%, #eeeeee 70%);
+ background-image: -moz-linear-gradient(center bottom, #e4e4e4 0%, #eeeeee 70%);
+ background-image: -o-linear-gradient(bottom, #e4e4e4 0%, #eeeeee 70%);
+ background-image: -ms-linear-gradient(top, #e4e4e4 0%,#eeeeee 70%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4e4e4', endColorstr='#eeeeee',GradientType=0 );
+ background-image: linear-gradient(top, #e4e4e4 0%,#eeeeee 70%);
+ color: #333;
+ border: 1px solid #b4b4b4;
+ line-height: 13px;
+ padding: 3px 19px 3px 6px;
+ margin: 3px 0 3px 5px;
+ position: relative;
+}
+.chzn-container-multi .chzn-choices .search-choice span {
+ cursor: default;
+}
+.chzn-container-multi .chzn-choices .search-choice-focus {
+ background: #d4d4d4;
+}
+.chzn-container-multi .chzn-choices .search-choice .search-choice-close {
+ display: block;
+ position: absolute;
+ right: 5px;
+ top: 6px;
+ width: 8px;
+ height: 9px;
+ font-size: 1px;
+ background: url(chosen-sprite.png) right top no-repeat;
+}
+.chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover {
+ background-position: right -9px;
+}
+.chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close {
+ background-position: right -9px;
+}
+/* @end */
+
+/* @group Results */
+.chzn-container .chzn-results {
+ margin: 0 4px 4px 0;
+ max-height: 190px;
+ padding: 0 0 0 4px;
+ position: relative;
+ overflow-x: hidden;
+ overflow-y: auto;
+}
+.chzn-container-multi .chzn-results {
+ margin: -1px 0 0;
+ padding: 0;
+}
+.chzn-container .chzn-results li {
+ line-height: 80%;
+ padding: 7px 7px 8px;
+ margin: 0;
+ list-style: none;
+}
+.chzn-container .chzn-results .active-result {
+ cursor: pointer;
+}
+.chzn-container .chzn-results .highlighted {
+ background: #3875d7;
+ color: #fff;
+}
+.chzn-container .chzn-results li em {
+ background: #feffde;
+ font-style: normal;
+}
+.chzn-container .chzn-results .highlighted em {
+ background: transparent;
+}
+.chzn-container .chzn-results .no-results {
+ background: #f4f4f4;
+}
+.chzn-container .chzn-results .group-result {
+ cursor: default;
+ color: #999;
+ font-weight: bold;
+}
+.chzn-container .chzn-results .group-option {
+ padding-left: 20px;
+}
+.chzn-container-multi .chzn-drop .result-selected {
+ display: none;
+}
+/* @end */
+
+/* @group Active */
+.chzn-container-active .chzn-single {
+ -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
+ -moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
+ -o-box-shadow : 0 0 5px rgba(0,0,0,.3);
+ box-shadow : 0 0 5px rgba(0,0,0,.3);
+ border: 1px solid #5897fb;
+}
+.chzn-container-active .chzn-single-with-drop {
+ border: 1px solid #aaa;
+ -webkit-box-shadow: 0 1px 0 #fff inset;
+ -moz-box-shadow : 0 1px 0 #fff inset;
+ -o-box-shadow : 0 1px 0 #fff inset;
+ box-shadow : 0 1px 0 #fff inset;
+ background-color: #eee;
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, white), color-stop(0.5, #eeeeee));
+ background-image: -webkit-linear-gradient(center bottom, white 0%, #eeeeee 50%);
+ background-image: -moz-linear-gradient(center bottom, white 0%, #eeeeee 50%);
+ background-image: -o-linear-gradient(bottom, white 0%, #eeeeee 50%);
+ background-image: -ms-linear-gradient(top, #ffffff 0%,#eeeeee 50%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
+ background-image: linear-gradient(top, #ffffff 0%,#eeeeee 50%);
+ -webkit-border-bottom-left-radius : 0;
+ -webkit-border-bottom-right-radius: 0;
+ -moz-border-radius-bottomleft : 0;
+ -moz-border-radius-bottomright: 0;
+ border-bottom-left-radius : 0;
+ border-bottom-right-radius: 0;
+}
+.chzn-container-active .chzn-single-with-drop div {
+ background: transparent;
+ border-left: none;
+}
+.chzn-container-active .chzn-single-with-drop div b {
+ background-position: -18px 1px;
+}
+.chzn-container-active .chzn-choices {
+ -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
+ -moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
+ -o-box-shadow : 0 0 5px rgba(0,0,0,.3);
+ box-shadow : 0 0 5px rgba(0,0,0,.3);
+ border: 1px solid #5897fb;
+}
+.chzn-container-active .chzn-choices .search-field input {
+ color: #111 !important;
+}
+/* @end */
+
+/* @group Right to Left */
+.chzn-rtl { direction:rtl;text-align: right; }
+.chzn-rtl .chzn-single { padding-left: 0; padding-right: 8px; }
+.chzn-rtl .chzn-single span { margin-left: 26px; margin-right: 0; }
+.chzn-rtl .chzn-single div {
+ left: 0; right: auto;
+ border-left: none; border-right: 1px solid #aaaaaa;
+ -webkit-border-radius: 4px 0 0 4px;
+ -moz-border-radius : 4px 0 0 4px;
+ border-radius : 4px 0 0 4px;
+}
+.chzn-rtl .chzn-choices li { float: right; }
+.chzn-rtl .chzn-choices .search-choice { padding: 3px 6px 3px 19px; margin: 3px 5px 3px 0; }
+.chzn-rtl .chzn-choices .search-choice .search-choice-close { left: 5px; right: auto; background-position: right top;}
+.chzn-rtl.chzn-container-single .chzn-results { margin-left: 4px; margin-right: 0; padding-left: 0; padding-right: 4px; }
+.chzn-rtl .chzn-results .group-option { padding-left: 0; padding-right: 20px; }
+.chzn-rtl.chzn-container-active .chzn-single-with-drop div { border-right: none; }
+.chzn-rtl .chzn-search input {
+ background: url('chosen-sprite.png') no-repeat -38px -20px, #ffffff;
+ background: url('chosen-sprite.png') no-repeat -38px -20px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
+ background: url('chosen-sprite.png') no-repeat -38px -20px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat -38px -20px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat -38px -20px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat -38px -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat -38px -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ background: url('chosen-sprite.png') no-repeat -38px -20px, linear-gradient(top, #ffffff 85%,#eeeeee 99%);
+ padding: 4px 5px 4px 20px;
+}
+/* @end */
\ No newline at end of file
diff --git a/3rdparty/js/chosen/LICENSE.md b/3rdparty/js/chosen/LICENSE.md
new file mode 100644
index 00000000000..80109bba802
--- /dev/null
+++ b/3rdparty/js/chosen/LICENSE.md
@@ -0,0 +1,24 @@
+# Chosen, a Select Box Enhancer for jQuery and Protoype
+## by Patrick Filler for [Harvest](http://getharvest.com)
+
+Available for use under the [MIT License](http://en.wikipedia.org/wiki/MIT_License)
+
+Copyright (c) 2011 by Harvest
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
\ No newline at end of file
diff --git a/3rdparty/js/chosen/README.md b/3rdparty/js/chosen/README.md
new file mode 100644
index 00000000000..cee8ed1cc08
--- /dev/null
+++ b/3rdparty/js/chosen/README.md
@@ -0,0 +1,46 @@
+# Chosen
+
+Chosen is a library for making long, unwieldy select boxes more user friendly.
+
+- jQuery support: 1.4+
+- Prototype support: 1.7+
+
+For documentation, usage, and examples, see:
+http://harvesthq.github.com/chosen
+
+### Contributing to Chosen
+
+Contributions and pull requests are very welcome. Please follow these guidelines when submitting new code.
+
+1. Make all changes in Coffeescript files, **not** JavaScript files.
+2. For feature changes, update both jQuery *and* Prototype versions
+3. Use 'cake build' to generate Chosen's JavaScript file and minified version.
+4. Don't touch the VERSION file
+5. Submit a Pull Request using GitHub.
+
+### Using CoffeeScript & Cake
+
+First, make sure you have the proper CoffeeScript / Cake set-up in place.
+
+1. Install Coffeescript: the [CoffeeScript documentation](http://jashkenas.github.com/coffee-script/) provides easy-to-follow instructions.
+2. Install UglifyJS: npm -g install uglify-js
+3. Verify that your $NODE_PATH is properly configured using echo $NODE_PATH
+
+Once you're configured, building the JavasScript from the command line is easy:
+
+ cake build # build Chosen from source
+ cake watch # watch coffee/ for changes and build Chosen
+
+If you're interested, you can find the recipes in Cakefile.
+
+
+### Chosen Credits
+
+- Built by [Harvest](http://www.getharvest.com/)
+- Concept and development by [Patrick Filler](http://www.patrickfiller.com/)
+- Design and CSS by [Matthew Lettini](http://matthewlettini.com/)
+
+### Notable Forks
+
+- [Chosen for MooTools](https://github.com/julesjanssen/chosen), by Jules Janssen
+- [Chosen Drupal 7 Module](https://github.com/Polzme/chosen), by Pol Dell'Aiera
\ No newline at end of file
diff --git a/3rdparty/js/chosen/VERSION b/3rdparty/js/chosen/VERSION
new file mode 100644
index 00000000000..f374f6662e9
--- /dev/null
+++ b/3rdparty/js/chosen/VERSION
@@ -0,0 +1 @@
+0.9.1
diff --git a/admin/ajax/disableapp.php b/admin/ajax/disableapp.php
index dce62fa11d4..0cf66a553f8 100644
--- a/admin/ajax/disableapp.php
+++ b/admin/ajax/disableapp.php
@@ -1,5 +1,4 @@
1, "id" => "admin", "name" => "Administration" ));
-// OC_App::addAdminPage( array( "id" => "core_system", "order" => 1, "href" => OC_Helper::linkTo( "admin", "system.php" ), "name" =>"System", "icon" => OC_Helper::imagePath( "admin", "administration.png" )));
-OC_App::addAdminPage( array( "id" => "core_users", "order" => 2, "href" => OC_Helper::linkTo( "admin", "users.php" ), "name" => "Users", "icon" => OC_Helper::imagePath( "admin", "users.png" )));
-OC_App::addAdminPage( array( "id" => "core_apps", "order" => 3, "href" => OC_Helper::linkTo( "admin", "apps.php?installed" ), "name" => "Apps", "icon" => OC_Helper::imagePath( "admin", "apps.png" )));
-
-// Add subentries for App installer
-//OC_App::addNavigationSubEntry( "core_apps", array( "id" => "core_apps_get", "order" => 4, "href" => OC_Helper::linkTo( "admin", "apps.php" ), "name" => "Get new apps", "icon" => OC_Helper::imagePath( "admin", "navicon.png" )));
-
?>
diff --git a/admin/apps.php b/admin/apps.php
index 4f39feab0c5..de11dccc3d5 100644
--- a/admin/apps.php
+++ b/admin/apps.php
@@ -53,7 +53,7 @@ if($installed){
$records[]=$record;
}
- $tmpl = new OC_Template( "admin", "appsinst", "admin" );
+ $tmpl = new OC_Template( "admin", "appsinst", "user" );
$tmpl->assign( "apps", $records );
$tmpl->printPage();
unset($tmpl);
@@ -63,7 +63,7 @@ if($installed){
if($categories==NULL){
OC_App::setActiveNavigationEntry( "core_apps" );
- $tmpl = new OC_Template( "admin", "app_noconn", "admin" );
+ $tmpl = new OC_Template( "admin", "app_noconn", "user" );
$tmpl->printPage();
unset($tmpl);
exit();
@@ -82,7 +82,7 @@ if($installed){
}
// return template
- $tmpl = new OC_Template( "admin", "apps", "admin" );
+ $tmpl = new OC_Template( "admin", "apps", "user" );
$tmpl->assign( "categories", $categories );
$tmpl->assign( "apps", $apps );
@@ -94,7 +94,7 @@ if($installed){
$app=OC_OCSClient::getApplication($id);
- $tmpl = new OC_Template( "admin", "app", "admin" );
+ $tmpl = new OC_Template( "admin", "app", "user" );
$tmpl->assign( "categories", $categories );
$tmpl->assign( "app", $app );
$tmpl->printPage();
diff --git a/admin/css/apps.css b/admin/css/apps.css
index c6b4f69ebcb..92ab64df552 100644
--- a/admin/css/apps.css
+++ b/admin/css/apps.css
@@ -1,9 +1,14 @@
/* APPS TABLE */
-table td.date { width:5em; padding:.5em 1em; text-align:right; }
-table td.version, table td.enabled, table td.disabled { padding:.5em 1em; text-align:center; }
+table td.date { width:5em; padding:.5em 1em; text-align:left; }
+table td.version, table td.enabled, table td.disabled { padding:.5em 1em; text-align:left; }
.preview { padding:3px; text-align:left; }
-table td.date { width:11em; color:#555555; }
-table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; }
-table td.name a { padding:6px; text-decoration:none; color:#555555; }
-.type { text-decoration:none; color:#888888; font-size:.8em; }
-.description { text-decoration:none; color:#666666; font-size:.9em; }
+table td.date { width:11em; color:#555; }
+table td.selection, table th.selection, table td.fileaction { width:2em; text-align:left; }
+table td.name a { padding:6px; text-decoration:none; color:#555; }
+.type { text-decoration:none; color:#888; font-size:.8em; }
+.description { text-decoration:none; color:#666; font-size:.9em; }
+
+#content ul#apps { width:40em; list-style:none; }
+#content ul#apps li { display:block; padding:.2em; clear:right; }
+#content ul#apps em { color:#555; }
+#content ul#apps input { float:right; }
diff --git a/admin/css/users.css b/admin/css/users.css
new file mode 100644
index 00000000000..521217df4f4
--- /dev/null
+++ b/admin/css/users.css
@@ -0,0 +1,5 @@
+form {display:inline}
+td.remove>img,td.select>input{display:none;cursor:pointer}
+td.select,td.remove{width:1em}
+tr:hover>td.remove>img{display:inline}
+li.selected{background-color:#ddd}
diff --git a/admin/js/apps.js b/admin/js/apps.js
index ee9d814eb0b..4def5ed5553 100644
--- a/admin/js/apps.js
+++ b/admin/js/apps.js
@@ -1,18 +1,17 @@
$("input[x-use='appenablebutton']").live( "click", function(){
- appid = $(this).parent().parent().attr("x-uid");
+ appid = $(this).parent().data("uid");
//alert("dsfsdfsdf");
if($(this).val() == "enabled"){
$(this).attr("value","disabled");
$(this).removeClass( "enabled" );
$(this).addClass( "disabled" );
- //$.post( "ajax/disableapp.php", $(appid).serialize(), function(data){} );
- $.post( "ajax/disableapp.php", { appid: appid }, function(data){ alert(data.status);});
+ $.post( "ajax/disableapp.php", 'appid='+appid);
}
else if($(this).val() == "disabled"){
$(this).attr("value","enabled");
$(this).removeClass( "disabled" );
$(this).addClass( "enabled" );
- $.post( "ajax/enableapp.php", { appid: appid }, function(data){ alert(data.status);} );
+ $.post( "ajax/enableapp.php", 'appid='+appid);
}
});
\ No newline at end of file
diff --git a/admin/js/users.js b/admin/js/users.js
index 994ce6f6cbd..7e643fb60a2 100644
--- a/admin/js/users.js
+++ b/admin/js/users.js
@@ -1,340 +1,100 @@
$(document).ready(function(){
- // Vars we need
- var uid = "";
- var gid = "";
- var togglepassword = "";
- var togglegroup = "";
-
- //#########################################################################
- // Stuff I don't understand
- //#########################################################################
-
- function doToggleGroup( group ){
- $("#changegroupgid").val(group);
-
- // Serialize the data
- var post = $( "#changegroupsform" ).serialize();
- // Ajax foo
- $.post( 'ajax/togglegroups.php', post, function(data){
- if( data.status == "success" ){
- var groups = [];
- $("input[x-use='togglegroup']").each( function(index){
- if( $(this).attr("checked")){
- groups.push($(this).val());
- }
- });
- if( groups.length == 0 ){
- $("#changegroups").prev().html( ' ' );
- }
- else{
- $("#changegroups").prev().html( groups.join(", "));
- }
- }
- else{
- printError( data.data.message );
+ $('select[multiple]').chosen();
+
+ $('td.remove>img').live('click',function(event){
+ var uid=$(this).parent().parent().data('uid');
+ $.post(
+ OC.filePath('admin','ajax','removeuser.php'),
+ {username:uid},
+ function(result){
+
}
- });
- return false;
- }
-
- function printError( message ){
- $("#errormessage").text( message );
- $("#errordialog").dialog( "open" );
- return false;
- }
-
- //#########################################################################
- // Functions for editing the dom after user manipulation
- //#########################################################################
-
- // Manipulating the page after crteating a user
- function userCreated( username, groups ){
- // We need at least a space for showing the div
- if( groups == "" ){
- groups = ' ';
- }
-
- // Add user to table
- var newrow = '
| t( 'Name' ); ?> | -t( 'Version' ); ?> | -t( 'Author' ); ?> | -t( 'Status' ); ?> | -
|---|---|---|---|
| - | - | - | - |