mirror of https://github.com/jumpserver/jumpserver
Modify user detail of usergroup
parent
824b1c7f6f
commit
279987925a
Binary file not shown.
After Width: | Height: | Size: 2.6 KiB |
Binary file not shown.
After Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
After Width: | Height: | Size: 3.8 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
|
@ -2,9 +2,9 @@
|
||||||
Chosen, a Select Box Enhancer for jQuery and Prototype
|
Chosen, a Select Box Enhancer for jQuery and Prototype
|
||||||
by Patrick Filler for Harvest, http://getharvest.com
|
by Patrick Filler for Harvest, http://getharvest.com
|
||||||
|
|
||||||
Version 1.6.2
|
Version 1.1.0
|
||||||
Full source at https://github.com/harvesthq/chosen
|
Full source at https://github.com/harvesthq/chosen
|
||||||
Copyright (c) 2011-2016 Harvest http://getharvest.com
|
Copyright (c) 2011 Harvest http://getharvest.com
|
||||||
|
|
||||||
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
|
||||||
This file is generated by `grunt build`, do not edit it by hand.
|
This file is generated by `grunt build`, do not edit it by hand.
|
||||||
|
@ -12,436 +12,418 @@ This file is generated by `grunt build`, do not edit it by hand.
|
||||||
|
|
||||||
/* @group Base */
|
/* @group Base */
|
||||||
.chosen-container {
|
.chosen-container {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
-webkit-user-select: none;
|
zoom: 1;
|
||||||
-moz-user-select: none;
|
*display: inline;
|
||||||
user-select: none;
|
-webkit-user-select: none;
|
||||||
}
|
-moz-user-select: none;
|
||||||
.chosen-container * {
|
user-select: none;
|
||||||
-webkit-box-sizing: border-box;
|
|
||||||
-moz-box-sizing: border-box;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-drop {
|
.chosen-container .chosen-drop {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 100%;
|
top: 100%;
|
||||||
left: -9999px;
|
left: -9999px;
|
||||||
z-index: 1010;
|
z-index: 1010;
|
||||||
width: 100%;
|
-webkit-box-sizing: border-box;
|
||||||
border: 1px solid #aaa;
|
-moz-box-sizing: border-box;
|
||||||
border-top: 0;
|
box-sizing: border-box;
|
||||||
background: #fff;
|
width: 100%;
|
||||||
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
|
border: 1px solid #aaa;
|
||||||
|
border-top: 0;
|
||||||
|
background: #fff;
|
||||||
|
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
|
||||||
}
|
}
|
||||||
.chosen-container.chosen-with-drop .chosen-drop {
|
.chosen-container.chosen-with-drop .chosen-drop {
|
||||||
left: 0;
|
left: 0;
|
||||||
}
|
}
|
||||||
.chosen-container a {
|
.chosen-container a {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
|
||||||
.chosen-container .search-choice .group-name, .chosen-container .chosen-single .group-name {
|
|
||||||
margin-right: 4px;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
font-weight: normal;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
.chosen-container .search-choice .group-name:after, .chosen-container .chosen-single .group-name:after {
|
|
||||||
content: ":";
|
|
||||||
padding-left: 2px;
|
|
||||||
vertical-align: top;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Single Chosen */
|
/* @group Single Chosen */
|
||||||
.chosen-container-single .chosen-single {
|
.chosen-container-single .chosen-single {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: block;
|
display: block;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
padding: 0 0 0 8px;
|
padding: 0 0 0 8px;
|
||||||
height: 25px;
|
height: 23px;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
|
background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
|
||||||
background: -webkit-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
background: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
||||||
background: -moz-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
background: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
||||||
background: -o-linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
background: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
||||||
background: linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
background: linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
|
||||||
background-clip: padding-box;
|
background-clip: padding-box;
|
||||||
box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
|
box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
|
||||||
color: #444;
|
color: #444;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-default {
|
.chosen-container-single .chosen-default {
|
||||||
color: #999;
|
color: #999;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-single span {
|
.chosen-container-single .chosen-single span {
|
||||||
display: block;
|
display: block;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
margin-right: 26px;
|
margin-right: 26px;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-single-with-deselect span {
|
.chosen-container-single .chosen-single-with-deselect span {
|
||||||
margin-right: 38px;
|
margin-right: 38px;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-single abbr {
|
.chosen-container-single .chosen-single abbr {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 6px;
|
top: 6px;
|
||||||
right: 26px;
|
right: 26px;
|
||||||
display: block;
|
display: block;
|
||||||
width: 12px;
|
width: 12px;
|
||||||
height: 12px;
|
height: 12px;
|
||||||
background: url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') -42px 1px no-repeat;
|
background: url('chosen-sprite.png') -42px 1px no-repeat;
|
||||||
font-size: 1px;
|
font-size: 1px;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-single abbr:hover {
|
.chosen-container-single .chosen-single abbr:hover {
|
||||||
background-position: -42px -10px;
|
background-position: -42px -10px;
|
||||||
}
|
}
|
||||||
.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
|
.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
|
||||||
background-position: -42px -10px;
|
background-position: -42px -10px;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-single div {
|
.chosen-container-single .chosen-single div {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
display: block;
|
display: block;
|
||||||
width: 18px;
|
width: 18px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-single div b {
|
.chosen-container-single .chosen-single div b {
|
||||||
display: block;
|
display: block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background: url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') no-repeat 0px 2px;
|
background: url('chosen-sprite.png') no-repeat 0px 2px;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-search {
|
.chosen-container-single .chosen-search {
|
||||||
position: relative;
|
position: relative;
|
||||||
z-index: 1010;
|
z-index: 1010;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 3px 4px;
|
padding: 3px 4px;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-search input[type="text"] {
|
.chosen-container-single .chosen-search input[type="text"] {
|
||||||
margin: 1px 0;
|
-webkit-box-sizing: border-box;
|
||||||
padding: 4px 20px 4px 5px;
|
-moz-box-sizing: border-box;
|
||||||
width: 100%;
|
box-sizing: border-box;
|
||||||
height: auto;
|
margin: 1px 0;
|
||||||
outline: 0;
|
padding: 4px 20px 4px 5px;
|
||||||
border: 1px solid #aaa;
|
width: 100%;
|
||||||
background: white url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') no-repeat 100% -20px;
|
height: auto;
|
||||||
background: url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') no-repeat 100% -20px;
|
outline: 0;
|
||||||
font-size: 1em;
|
border: 1px solid #aaa;
|
||||||
font-family: sans-serif;
|
background: white url('chosen-sprite.png') no-repeat 100% -20px;
|
||||||
line-height: normal;
|
background: url('chosen-sprite.png') no-repeat 100% -20px;
|
||||||
border-radius: 0;
|
font-size: 1em;
|
||||||
|
font-family: sans-serif;
|
||||||
|
line-height: normal;
|
||||||
|
border-radius: 0;
|
||||||
}
|
}
|
||||||
.chosen-container-single .chosen-drop {
|
.chosen-container-single .chosen-drop {
|
||||||
margin-top: -1px;
|
margin-top: -1px;
|
||||||
border-radius: 0 0 4px 4px;
|
border-radius: 0 0 4px 4px;
|
||||||
background-clip: padding-box;
|
background-clip: padding-box;
|
||||||
}
|
}
|
||||||
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
|
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: -9999px;
|
left: -9999px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Results */
|
/* @group Results */
|
||||||
.chosen-container .chosen-results {
|
.chosen-container .chosen-results {
|
||||||
color: #444;
|
position: relative;
|
||||||
position: relative;
|
overflow-x: hidden;
|
||||||
overflow-x: hidden;
|
overflow-y: auto;
|
||||||
overflow-y: auto;
|
margin: 0 4px 4px 0;
|
||||||
margin: 0 4px 4px 0;
|
padding: 0 0 0 4px;
|
||||||
padding: 0 0 0 4px;
|
max-height: 240px;
|
||||||
max-height: 240px;
|
-webkit-overflow-scrolling: touch;
|
||||||
-webkit-overflow-scrolling: touch;
|
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li {
|
.chosen-container .chosen-results li {
|
||||||
display: none;
|
display: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 5px 6px;
|
padding: 5px 6px;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
line-height: 15px;
|
line-height: 15px;
|
||||||
word-wrap: break-word;
|
-webkit-touch-callout: none;
|
||||||
-webkit-touch-callout: none;
|
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li.active-result {
|
.chosen-container .chosen-results li.active-result {
|
||||||
display: list-item;
|
display: list-item;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li.disabled-result {
|
.chosen-container .chosen-results li.disabled-result {
|
||||||
display: list-item;
|
display: list-item;
|
||||||
color: #ccc;
|
color: #ccc;
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li.highlighted {
|
.chosen-container .chosen-results li.highlighted {
|
||||||
background-color: #3875d7;
|
background-color: #3875d7;
|
||||||
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
|
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
|
||||||
background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
||||||
background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
||||||
background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
|
||||||
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
|
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li.no-results {
|
.chosen-container .chosen-results li.no-results {
|
||||||
color: #777;
|
display: list-item;
|
||||||
display: list-item;
|
background: #f4f4f4;
|
||||||
background: #f4f4f4;
|
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li.group-result {
|
.chosen-container .chosen-results li.group-result {
|
||||||
display: list-item;
|
display: list-item;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li.group-option {
|
.chosen-container .chosen-results li.group-option {
|
||||||
padding-left: 15px;
|
padding-left: 15px;
|
||||||
}
|
}
|
||||||
.chosen-container .chosen-results li em {
|
.chosen-container .chosen-results li em {
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Multi Chosen */
|
/* @group Multi Chosen */
|
||||||
.chosen-container-multi .chosen-choices {
|
.chosen-container-multi .chosen-choices {
|
||||||
position: relative;
|
-moz-box-sizing: border-box;
|
||||||
overflow: hidden;
|
background-color: #FFFFFF;
|
||||||
margin: 0;
|
border: 1px solid #CBD5DD;
|
||||||
padding: 0 5px;
|
border-radius: 2px;
|
||||||
width: 100%;
|
cursor: text;
|
||||||
height: auto;
|
height: auto !important;
|
||||||
border: 1px solid #aaa;
|
margin: 0;
|
||||||
background-color: #fff;
|
min-height: 30px;
|
||||||
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
|
overflow: hidden;
|
||||||
background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
padding: 2px;
|
||||||
background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
position: relative;
|
||||||
background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
|
width: 100%;
|
||||||
background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
|
|
||||||
cursor: text;
|
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li {
|
.chosen-container-multi .chosen-choices li {
|
||||||
float: left;
|
float: left;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-field {
|
.chosen-container-multi .chosen-choices li.search-field {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
|
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
|
||||||
margin: 1px 0;
|
margin: 1px 0;
|
||||||
padding: 0;
|
padding: 5px;
|
||||||
height: 25px;
|
height: 25px;
|
||||||
outline: 0;
|
outline: 0;
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
background: transparent !important;
|
background: transparent !important;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
color: #999;
|
color: #666;
|
||||||
font-size: 100%;
|
font-size: 100%;
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
line-height: normal;
|
line-height: normal;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
.chosen-container-multi .chosen-choices li.search-field .default {
|
||||||
|
color: #999;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-choice {
|
.chosen-container-multi .chosen-choices li.search-choice {
|
||||||
position: relative;
|
position: relative;
|
||||||
margin: 3px 5px 3px 0;
|
margin: 3px 0 3px 5px;
|
||||||
padding: 3px 20px 3px 5px;
|
padding: 3px 20px 3px 5px;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
max-width: 100%;
|
border-radius: 3px;
|
||||||
border-radius: 3px;
|
background-color: #e4e4e4;
|
||||||
background-color: #eeeeee;
|
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
||||||
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-clip: padding-box;
|
||||||
background-size: 100% 19px;
|
box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
||||||
background-repeat: repeat-x;
|
color: #333;
|
||||||
background-clip: padding-box;
|
line-height: 13px;
|
||||||
box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
cursor: default;
|
||||||
color: #333;
|
|
||||||
line-height: 13px;
|
|
||||||
cursor: default;
|
|
||||||
}
|
|
||||||
.chosen-container-multi .chosen-choices li.search-choice span {
|
|
||||||
word-wrap: break-word;
|
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
|
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 4px;
|
top: 4px;
|
||||||
right: 3px;
|
right: 3px;
|
||||||
display: block;
|
display: block;
|
||||||
width: 12px;
|
width: 12px;
|
||||||
height: 12px;
|
height: 12px;
|
||||||
background: url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') -42px 1px no-repeat;
|
background: url('chosen-sprite.png') -42px 1px no-repeat;
|
||||||
font-size: 1px;
|
font-size: 1px;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
|
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
|
||||||
background-position: -42px -10px;
|
background-position: -42px -10px;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-choice-disabled {
|
.chosen-container-multi .chosen-choices li.search-choice-disabled {
|
||||||
padding-right: 5px;
|
padding-right: 5px;
|
||||||
border: 1px solid #ccc;
|
border: 1px solid #ccc;
|
||||||
background-color: #e4e4e4;
|
background-color: #e4e4e4;
|
||||||
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
|
||||||
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
|
||||||
color: #666;
|
color: #666;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-choice-focus {
|
.chosen-container-multi .chosen-choices li.search-choice-focus {
|
||||||
background: #d4d4d4;
|
background: #d4d4d4;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
|
.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
|
||||||
background-position: -42px -10px;
|
background-position: -42px -10px;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-results {
|
.chosen-container-multi .chosen-results {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
.chosen-container-multi .chosen-drop .result-selected {
|
.chosen-container-multi .chosen-drop .result-selected {
|
||||||
display: list-item;
|
display: list-item;
|
||||||
color: #ccc;
|
color: #ccc;
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Active */
|
/* @group Active */
|
||||||
.chosen-container-active .chosen-single {
|
.chosen-container-active .chosen-single {
|
||||||
border: 1px solid #5897fb;
|
border: 1px solid #5897fb;
|
||||||
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
||||||
}
|
}
|
||||||
.chosen-container-active.chosen-with-drop .chosen-single {
|
.chosen-container-active.chosen-with-drop .chosen-single {
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
-moz-border-radius-bottomright: 0;
|
-moz-border-radius-bottomright: 0;
|
||||||
border-bottom-right-radius: 0;
|
border-bottom-right-radius: 0;
|
||||||
-moz-border-radius-bottomleft: 0;
|
-moz-border-radius-bottomleft: 0;
|
||||||
border-bottom-left-radius: 0;
|
border-bottom-left-radius: 0;
|
||||||
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
|
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
|
||||||
background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
||||||
background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
||||||
background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
|
||||||
background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
|
background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
|
||||||
box-shadow: 0 1px 0 #fff inset;
|
box-shadow: 0 1px 0 #fff inset;
|
||||||
}
|
}
|
||||||
.chosen-container-active.chosen-with-drop .chosen-single div {
|
.chosen-container-active.chosen-with-drop .chosen-single div {
|
||||||
border-left: none;
|
border-left: none;
|
||||||
background: transparent;
|
background: transparent;
|
||||||
}
|
}
|
||||||
.chosen-container-active.chosen-with-drop .chosen-single div b {
|
.chosen-container-active.chosen-with-drop .chosen-single div b {
|
||||||
background-position: -18px 2px;
|
background-position: -18px 2px;
|
||||||
}
|
}
|
||||||
.chosen-container-active .chosen-choices {
|
.chosen-container-active .chosen-choices {
|
||||||
border: 1px solid #5897fb;
|
border: 1px solid #5897fb;
|
||||||
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
||||||
}
|
}
|
||||||
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
|
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
|
||||||
color: #222 !important;
|
color: #111 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Disabled Support */
|
/* @group Disabled Support */
|
||||||
.chosen-disabled {
|
.chosen-disabled {
|
||||||
opacity: 0.5 !important;
|
opacity: 0.5 !important;
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
.chosen-disabled .chosen-single {
|
.chosen-disabled .chosen-single {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
|
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Right to Left */
|
/* @group Right to Left */
|
||||||
.chosen-rtl {
|
.chosen-rtl {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-single {
|
.chosen-rtl .chosen-single {
|
||||||
overflow: visible;
|
overflow: visible;
|
||||||
padding: 0 8px 0 0;
|
padding: 0 8px 0 0;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-single span {
|
.chosen-rtl .chosen-single span {
|
||||||
margin-right: 0;
|
margin-right: 0;
|
||||||
margin-left: 26px;
|
margin-left: 26px;
|
||||||
direction: rtl;
|
direction: rtl;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-single-with-deselect span {
|
.chosen-rtl .chosen-single-with-deselect span {
|
||||||
margin-left: 38px;
|
margin-left: 38px;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-single div {
|
.chosen-rtl .chosen-single div {
|
||||||
right: auto;
|
right: auto;
|
||||||
left: 3px;
|
left: 3px;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-single abbr {
|
.chosen-rtl .chosen-single abbr {
|
||||||
right: auto;
|
right: auto;
|
||||||
left: 26px;
|
left: 26px;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-choices li {
|
.chosen-rtl .chosen-choices li {
|
||||||
float: right;
|
float: right;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
|
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
|
||||||
direction: rtl;
|
direction: rtl;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-choices li.search-choice {
|
.chosen-rtl .chosen-choices li.search-choice {
|
||||||
margin: 3px 5px 3px 0;
|
margin: 3px 5px 3px 0;
|
||||||
padding: 3px 5px 3px 19px;
|
padding: 3px 5px 3px 19px;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
|
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
|
||||||
right: auto;
|
right: auto;
|
||||||
left: 4px;
|
left: 4px;
|
||||||
}
|
}
|
||||||
.chosen-rtl.chosen-container-single-nosearch .chosen-search,
|
.chosen-rtl.chosen-container-single-nosearch .chosen-search,
|
||||||
.chosen-rtl .chosen-drop {
|
.chosen-rtl .chosen-drop {
|
||||||
left: 9999px;
|
left: 9999px;
|
||||||
}
|
}
|
||||||
.chosen-rtl.chosen-container-single .chosen-results {
|
.chosen-rtl.chosen-container-single .chosen-results {
|
||||||
margin: 0 0 4px 4px;
|
margin: 0 0 4px 4px;
|
||||||
padding: 0 4px 0 0;
|
padding: 0 4px 0 0;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-results li.group-option {
|
.chosen-rtl .chosen-results li.group-option {
|
||||||
padding-right: 15px;
|
padding-right: 15px;
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
}
|
}
|
||||||
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
|
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
|
||||||
border-right: none;
|
border-right: none;
|
||||||
}
|
}
|
||||||
.chosen-rtl .chosen-search input[type="text"] {
|
.chosen-rtl .chosen-search input[type="text"] {
|
||||||
padding: 4px 5px 4px 20px;
|
padding: 4px 5px 4px 20px;
|
||||||
background: white url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') no-repeat -30px -20px;
|
background: white url('chosen-sprite.png') no-repeat -30px -20px;
|
||||||
background: url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite.png') no-repeat -30px -20px;
|
background: url('chosen-sprite.png') no-repeat -30px -20px;
|
||||||
direction: rtl;
|
direction: rtl;
|
||||||
}
|
}
|
||||||
.chosen-rtl.chosen-container-single .chosen-single div b {
|
.chosen-rtl.chosen-container-single .chosen-single div b {
|
||||||
background-position: 6px 2px;
|
background-position: 6px 2px;
|
||||||
}
|
}
|
||||||
.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
|
.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
|
||||||
background-position: -12px 2px;
|
background-position: -12px 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @end */
|
/* @end */
|
||||||
/* @group Retina compatibility */
|
/* @group Retina compatibility */
|
||||||
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi), only screen and (min-resolution: 1.5dppx) {
|
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
|
||||||
.chosen-rtl .chosen-search input[type="text"],
|
.chosen-rtl .chosen-search input[type="text"],
|
||||||
.chosen-container-single .chosen-single abbr,
|
.chosen-container-single .chosen-single abbr,
|
||||||
.chosen-container-single .chosen-single div b,
|
.chosen-container-single .chosen-single div b,
|
||||||
.chosen-container-single .chosen-search input[type="text"],
|
.chosen-container-single .chosen-search input[type="text"],
|
||||||
.chosen-container-multi .chosen-choices .search-choice .search-choice-close,
|
.chosen-container-multi .chosen-choices .search-choice .search-choice-close,
|
||||||
.chosen-container .chosen-results-scroll-down span,
|
.chosen-container .chosen-results-scroll-down span,
|
||||||
.chosen-container .chosen-results-scroll-up span {
|
.chosen-container .chosen-results-scroll-up span {
|
||||||
background-image: url('../../../../../../../Downloads/chosen_v1.6.2/chosen-sprite@2x.png') !important;
|
background-image: url('chosen-sprite@2x.png') !important;
|
||||||
background-size: 52px 37px !important;
|
background-size: 52px 37px !important;
|
||||||
background-repeat: no-repeat !important;
|
background-repeat: no-repeat !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* @end */
|
/* @end */
|
||||||
|
|
|
@ -981,6 +981,22 @@ button.dim:active:before {
|
||||||
padding: 3px 20px 3px 5px;
|
padding: 3px 20px 3px 5px;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chosen-container .chosen-results li.highlighted {
|
||||||
|
background-color: #1ab394;
|
||||||
|
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #1ab394), color-stop(90%, #1ab394));
|
||||||
|
/*background-image: -webkit-linear-gradient(#1ab394 20%, #2a62bc 100%);*/
|
||||||
|
/*background-image: -moz-linear-gradient(#1ab394 20%, #2a62bc 100%);*/
|
||||||
|
/*background-image: -o-linear-gradient(#1ab394 20%, #2a62bc 100%);*/
|
||||||
|
/*background-image: linear-gradient(#1ab394 20%, #2a62bc 100%);*/
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chosen-container-active .chosen-choices {
|
||||||
|
border: 1px solid #1ab394;
|
||||||
|
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
/* PAGINATIN */
|
/* PAGINATIN */
|
||||||
.pagination > .active > a,
|
.pagination > .active > a,
|
||||||
.pagination > .active > span,
|
.pagination > .active > span,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<link href="{% static "css/font-awesome.css" %}" rel="stylesheet">
|
<link href="{% static "css/font-awesome.css" %}" rel="stylesheet">
|
||||||
{#<link href="{% static "css/plugins/iCheck/custom.css" %}" rel="stylesheet">#}
|
{#<link href="{% static "css/plugins/iCheck/custom.css" %}" rel="stylesheet">#}
|
||||||
{#<link href="{% static "css/animate.css" %}" rel="stylesheet">#}
|
{#<link href="{% static "css/animate.css" %}" rel="stylesheet">#}
|
||||||
<link href="{% static "css/style.css" %}" rel="stylesheet">
|
|
||||||
{#<link href="{% static "css/colorbox.css" %}" rel="stylesheet">#}
|
{#<link href="{% static "css/colorbox.css" %}" rel="stylesheet">#}
|
||||||
<link href="{% static "css/plugins/vaildator/jquery.validator.css" %}" rel="stylesheet">
|
<link href="{% static "css/plugins/vaildator/jquery.validator.css" %}" rel="stylesheet">
|
||||||
{#<link href="{% static "css/magnific/magnific-popup.css" %}" rel="stylesheet">#}
|
{#<link href="{% static "css/magnific/magnific-popup.css" %}" rel="stylesheet">#}
|
||||||
|
@ -15,7 +15,6 @@
|
||||||
<!-- scripts -->
|
<!-- scripts -->
|
||||||
<script src="{% static "js/jquery-2.1.1.js" %}"></script>
|
<script src="{% static "js/jquery-2.1.1.js" %}"></script>
|
||||||
<script src="{% static "js/bootstrap.min.js" %}"></script>
|
<script src="{% static "js/bootstrap.min.js" %}"></script>
|
||||||
<script src="{% static "js/base.js" %}"></script>
|
|
||||||
|
|
||||||
<!-- validator js -->
|
<!-- validator js -->
|
||||||
{#<script src="{% static "js/validator/jquery.validator.js" %}"></script>#}
|
{#<script src="{% static "js/validator/jquery.validator.js" %}"></script>#}
|
||||||
|
|
|
@ -11,6 +11,8 @@
|
||||||
<link rel="shortcut icon" href={% static "img/facio.ico" %} type="image/x-icon">
|
<link rel="shortcut icon" href={% static "img/facio.ico" %} type="image/x-icon">
|
||||||
{% include '_head_css_js.html' %}
|
{% include '_head_css_js.html' %}
|
||||||
{% block custom_head_css_js %} {% endblock %}
|
{% block custom_head_css_js %} {% endblock %}
|
||||||
|
<link href="{% static "css/style.css" %}" rel="stylesheet">
|
||||||
|
<script src="{% static "js/base.js" %}"></script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
@ -25,5 +27,5 @@
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
{% include '_foot_js.html' %}
|
{% include '_foot_js.html' %}
|
||||||
{% block custom_footer_js %} {% endblock %}
|
{% block custom_foot_js %} {% endblock %}
|
||||||
</html>
|
</html>
|
|
@ -0,0 +1,20 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.10 on 2016-08-17 15:03
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('users', '0007_auto_20160817_0032'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='user',
|
||||||
|
name='avatar',
|
||||||
|
field=models.ImageField(upload_to='avatar', verbose_name='\u5934\u50cf'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -60,7 +60,7 @@ class User(AbstractUser):
|
||||||
username = models.CharField(max_length=20, unique=True, verbose_name='用户名', help_text='* required')
|
username = models.CharField(max_length=20, unique=True, verbose_name='用户名', help_text='* required')
|
||||||
name = models.CharField(max_length=20, verbose_name='姓名', help_text='* required')
|
name = models.CharField(max_length=20, verbose_name='姓名', help_text='* required')
|
||||||
email = models.EmailField(max_length=30, unique=True, verbose_name='邮件', help_text='* required')
|
email = models.EmailField(max_length=30, unique=True, verbose_name='邮件', help_text='* required')
|
||||||
groups = models.ManyToManyField(UserGroup, verbose_name='用户组')
|
groups = models.ManyToManyField(UserGroup, verbose_name='用户组', help_text='* required')
|
||||||
avatar = models.ImageField(upload_to="avatar", verbose_name='头像')
|
avatar = models.ImageField(upload_to="avatar", verbose_name='头像')
|
||||||
wechat = models.CharField(max_length=30, blank=True, verbose_name='微信')
|
wechat = models.CharField(max_length=30, blank=True, verbose_name='微信')
|
||||||
phone = models.CharField(max_length=20, blank=True, verbose_name='手机号')
|
phone = models.CharField(max_length=20, blank=True, verbose_name='手机号')
|
||||||
|
|
|
@ -49,7 +49,6 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="hr-line-dashed"></div>
|
<div class="hr-line-dashed"></div>
|
||||||
<h3>信息</h3>
|
<h3>信息</h3>
|
||||||
{{ form.avatar|bootstrap_horizontal }}
|
|
||||||
{{ form.phone|bootstrap_horizontal }}
|
{{ form.phone|bootstrap_horizontal }}
|
||||||
{{ form.wechat|bootstrap_horizontal }}
|
{{ form.wechat|bootstrap_horizontal }}
|
||||||
{{ form.comment|bootstrap_horizontal }}
|
{{ form.comment|bootstrap_horizontal }}
|
||||||
|
@ -67,7 +66,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block custom_footer_js %}
|
{% block custom_foot_js %}
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
{#$(document).ready(function() {#}
|
{#$(document).ready(function() {#}
|
||||||
{# var config = {#}
|
{# var config = {#}
|
||||||
|
|
|
@ -3,6 +3,10 @@
|
||||||
{% load users_tags %}
|
{% load users_tags %}
|
||||||
{% load static %}
|
{% load static %}
|
||||||
|
|
||||||
|
{% block custom_head_css_js %}
|
||||||
|
<link href="{% static "css/plugins/chosen/chosen.css" %}" rel="stylesheet">
|
||||||
|
<script src="{% static "js/plugins/chosen/chosen.jquery.min.js" %}"></script>
|
||||||
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="wrapper wrapper-content animated fadeInRight">
|
<div class="wrapper wrapper-content animated fadeInRight">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@ -177,28 +181,38 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="ibox float-e-margins">
|
<div class="ibox float-e-margins">
|
||||||
<div class="ibox-title bg-primary" style="background: #23c6c8">
|
<div class="ibox-title bg-primary" style="background: #1ab394">
|
||||||
<span style="color: white">用户组</span>
|
<span style="color: white">用户组</span>
|
||||||
<div class="ibox-tools">
|
<div class="ibox-tools">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="ibox-content info-panel">
|
<div class="ibox-content primary-panel">
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<form>
|
||||||
<td>
|
<tr>
|
||||||
|
<td colspan="2" class="no-borders">
|
||||||
</td>
|
<select data-placeholder="选择用户组" class="chosen-select" style="width: 100%" multiple="" tabindex="4">
|
||||||
|
{% for group in groups %}
|
||||||
|
<option value="{{ group.id }}">{{ group.name }}</option>
|
||||||
|
{% endfor %}
|
||||||
|
</select>
|
||||||
|
</td>
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" class="no-borders">
|
||||||
|
<button type="button" class="btn btn-primary btn-small">添加到用户组</button>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
{% for group in user.groups.all %}
|
||||||
<tr>
|
<tr>
|
||||||
<td width="20%">姓名:</td>
|
<td width="40%"><b>{{ group.name }}</b></td>
|
||||||
<td>{{ user.name }}</td>
|
<td></td>
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>描述:</td>
|
|
||||||
<td>{{ user.comment }}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
@ -212,9 +226,19 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block custom_footer_js %}
|
{% block custom_foot_js %}
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
|
var config = {
|
||||||
|
'.chosen-select' : {},
|
||||||
|
'.chosen-select-deselect' : {allow_single_deselect:true},
|
||||||
|
'.chosen-select-no-single' : {disable_search_threshold:10},
|
||||||
|
'.chosen-select-no-results': {no_results_text:'Oops, nothing found!'},
|
||||||
|
'.chosen-select-width' : {width:"95%"}
|
||||||
|
};
|
||||||
|
for (var selector in config) {
|
||||||
|
$(selector).chosen(config[selector]);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
{% endblock %}
|
{% endblock %}
|
|
@ -1,12 +1,12 @@
|
||||||
# ~*~ coding: utf-8 ~*~
|
# ~*~ coding: utf-8 ~*~
|
||||||
|
|
||||||
|
import os
|
||||||
import urllib
|
import urllib
|
||||||
import hashlib
|
import hashlib
|
||||||
|
|
||||||
from django import template
|
from django import template
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.conf.urls.static import static
|
|
||||||
|
|
||||||
|
|
||||||
register = template.Library()
|
register = template.Library()
|
||||||
|
@ -26,13 +26,16 @@ def is_expired(datetime):
|
||||||
|
|
||||||
|
|
||||||
@register.filter
|
@register.filter
|
||||||
def user_avatar_url(user, size=64):
|
def user_avatar_url(user):
|
||||||
if user.avatar:
|
if user.avatar:
|
||||||
return user.avatar.url
|
return user.avatar.url
|
||||||
gravatar_url = "https://www.gravatar.com/avatar/" \
|
else:
|
||||||
+ hashlib.md5(user.email.lower()).hexdigest() + "?"
|
default_dir = os.path.join(settings.MEDIA_ROOT, 'avatar', 'default')
|
||||||
gravatar_url += urllib.urlencode({'d': 'identicon', 's': str(size)})
|
if os.path.isdir(default_dir):
|
||||||
return gravatar_url
|
default_avatar_list = os.listdir(default_dir)
|
||||||
|
default_avatar = default_avatar_list[len(user.username) % len(default_avatar_list)]
|
||||||
|
return os.path.join(settings.MEDIA_URL, 'avatar', 'default', default_avatar)
|
||||||
|
return 'https://www.gravatar.com/avatar/c6812ab450230979465d7bf288eadce2a?s=120&d=identicon'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -87,5 +87,6 @@ class UserDetailView(DetailView):
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
context = super(UserDetailView, self).get_context_data(**kwargs)
|
context = super(UserDetailView, self).get_context_data(**kwargs)
|
||||||
context.update({'path1': '用户管理', 'path2': '用户详情', 'title': '用户详情'})
|
groups = [group for group in UserGroup.objects.iterator() if group not in self.object.groups.iterator()]
|
||||||
|
context.update({'path1': '用户管理', 'path2': '用户详情', 'title': '用户详情', 'groups': groups})
|
||||||
return context
|
return context
|
||||||
|
|
Loading…
Reference in New Issue