Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
J
jumpserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ops
jumpserver
Commits
30fd51c2
Commit
30fd51c2
authored
8 years ago
by
ibuler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Asset group detail
parent
dc01833a
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
465 additions
and
168 deletions
+465
-168
models.py
apps/assets/models.py
+46
-18
asset_group_detail.html
apps/assets/templates/assets/asset_group_detail.html
+200
-0
asset_group_list.html
apps/assets/templates/assets/asset_group_list.html
+1
-1
delete_confirm.html
apps/assets/templates/assets/delete_confirm.html
+16
-0
views.py
apps/assets/views.py
+32
-3
django.po
apps/locale/zh/LC_MESSAGES/django.po
+168
-126
jumpserver.css
apps/static/css/jumpserver.css
+1
-0
_list_base.html
apps/templates/_list_base.html
+0
-1
_pagination.html
apps/templates/_pagination.html
+0
-5
user_detail.html
apps/users/templates/users/user_detail.html
+1
-14
No files found.
apps/assets/models.py
View file @
30fd51c2
...
@@ -2,19 +2,10 @@
...
@@ -2,19 +2,10 @@
from
__future__
import
unicode_literals
,
absolute_import
from
__future__
import
unicode_literals
,
absolute_import
from
django.db
import
models
from
django.db
import
models
import
logging
from
django.utils.translation
import
ugettext_lazy
as
_
from
django.utils.translation
import
ugettext_lazy
as
_
logger
=
logging
.
getLogger
(
__name__
)
class
AssetGroup
(
models
.
Model
):
name
=
models
.
CharField
(
max_length
=
64
,
unique
=
True
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
'Name'
))
created_by
=
models
.
CharField
(
max_length
=
32
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
'Created by'
))
comment
=
models
.
TextField
(
blank
=
True
,
verbose_name
=
_
(
'Comment'
))
def
__unicode__
(
self
):
return
self
.
name
class
Meta
:
db_table
=
'asset_group'
class
IDC
(
models
.
Model
):
class
IDC
(
models
.
Model
):
...
@@ -24,7 +15,7 @@ class IDC(models.Model):
...
@@ -24,7 +15,7 @@ class IDC(models.Model):
phone
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Phone'
))
phone
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Phone'
))
address
=
models
.
CharField
(
max_length
=
128
,
blank
=
True
,
verbose_name
=
_
(
"Address"
))
address
=
models
.
CharField
(
max_length
=
128
,
blank
=
True
,
verbose_name
=
_
(
"Address"
))
network
=
models
.
TextField
(
blank
=
True
,
verbose_name
=
_
(
'Network'
))
network
=
models
.
TextField
(
blank
=
True
,
verbose_name
=
_
(
'Network'
))
date_created
=
models
.
DateField
(
auto_now
=
True
,
null
=
True
,
verbose_name
=
_
(
'Date added'
))
date_created
=
models
.
Date
Time
Field
(
auto_now
=
True
,
null
=
True
,
verbose_name
=
_
(
'Date added'
))
operator
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Operator'
))
operator
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Operator'
))
created_by
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Created by'
))
created_by
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Created by'
))
comment
=
models
.
TextField
(
blank
=
True
,
verbose_name
=
_
(
'Comment'
))
comment
=
models
.
TextField
(
blank
=
True
,
verbose_name
=
_
(
'Comment'
))
...
@@ -47,7 +38,7 @@ class AssetExtend(models.Model):
...
@@ -47,7 +38,7 @@ class AssetExtend(models.Model):
return
self
.
name
return
self
.
name
class
Meta
:
class
Meta
:
db_table
=
'assetextend'
db_table
=
'asset
_
extend'
class
AdminUser
(
models
.
Model
):
class
AdminUser
(
models
.
Model
):
...
@@ -65,10 +56,10 @@ class AdminUser(models.Model):
...
@@ -65,10 +56,10 @@ class AdminUser(models.Model):
return
self
.
name
return
self
.
name
class
Meta
:
class
Meta
:
db_table
=
'adminuser'
db_table
=
'admin
_
user'
class
SysUser
(
models
.
Model
):
class
Sys
tem
User
(
models
.
Model
):
PROTOCOL_CHOICES
=
(
PROTOCOL_CHOICES
=
(
(
'ssh'
,
'ssh'
),
(
'ssh'
,
'ssh'
),
(
'telnet'
,
'telnet'
),
(
'telnet'
,
'telnet'
),
...
@@ -94,7 +85,44 @@ class SysUser(models.Model):
...
@@ -94,7 +85,44 @@ class SysUser(models.Model):
return
self
.
name
return
self
.
name
class
Meta
:
class
Meta
:
db_table
=
'sysuser'
db_table
=
'system_user'
class
AssetGroup
(
models
.
Model
):
name
=
models
.
CharField
(
max_length
=
64
,
unique
=
True
,
verbose_name
=
_
(
'Name'
))
system_users
=
models
.
ManyToManyField
(
SystemUser
,
related_name
=
'asset_groups'
,
blank
=
True
)
created_by
=
models
.
CharField
(
max_length
=
32
,
blank
=
True
,
verbose_name
=
_
(
'Created by'
))
date_created
=
models
.
DateTimeField
(
auto_now
=
True
,
null
=
True
,
verbose_name
=
_
(
'Date added'
))
comment
=
models
.
TextField
(
blank
=
True
,
verbose_name
=
_
(
'Comment'
))
def
__unicode__
(
self
):
return
self
.
name
class
Meta
:
db_table
=
'asset_group'
@classmethod
def
initial
(
cls
):
asset_group
=
cls
(
name
=
_
(
'Default'
),
commont
=
_
(
'Default asset group'
))
asset_group
.
save
()
@classmethod
def
generate_fake
(
cls
,
count
=
100
):
from
random
import
seed
import
forgery_py
from
django.db
import
IntegrityError
seed
()
for
i
in
range
(
count
):
group
=
cls
(
name
=
forgery_py
.
name
.
full_name
(),
comment
=
forgery_py
.
lorem_ipsum
.
sentence
(),
created_by
=
'Fake'
)
try
:
group
.
save
()
logger
.
debug
(
'Generate fake asset group:
%
s'
%
group
.
name
)
except
IntegrityError
:
print
(
'Error continue'
)
continue
class
Asset
(
models
.
Model
):
class
Asset
(
models
.
Model
):
...
@@ -106,8 +134,8 @@ class Asset(models.Model):
...
@@ -106,8 +134,8 @@ class Asset(models.Model):
groups
=
models
.
ManyToManyField
(
AssetGroup
,
related_name
=
'assets'
,
verbose_name
=
_
(
'Asset groups'
))
groups
=
models
.
ManyToManyField
(
AssetGroup
,
related_name
=
'assets'
,
verbose_name
=
_
(
'Asset groups'
))
username
=
models
.
CharField
(
max_length
=
16
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
'Admin user'
))
username
=
models
.
CharField
(
max_length
=
16
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
'Admin user'
))
password
=
models
.
CharField
(
max_length
=
256
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
"Admin password"
))
password
=
models
.
CharField
(
max_length
=
256
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
"Admin password"
))
admin_user
=
models
.
ForeignKey
(
AdminUser
,
null
=
True
,
blank
=
True
,
on_delete
=
models
.
SET_NULL
,
verbose_name
=
_
(
"Admin user"
))
admin_user
=
models
.
ForeignKey
(
AdminUser
,
null
=
True
,
on_delete
=
models
.
SET_NULL
,
verbose_name
=
_
(
"Admin user"
))
sys
_user
=
models
.
ManyToManyField
(
SysUser
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
"System User"
))
sys
tem_user
=
models
.
ManyToManyField
(
SystemUser
,
blank
=
True
,
verbose_name
=
_
(
"System User"
))
idc
=
models
.
ForeignKey
(
IDC
,
null
=
True
,
blank
=
True
,
on_delete
=
models
.
SET_NULL
,
verbose_name
=
_
(
'IDC'
))
idc
=
models
.
ForeignKey
(
IDC
,
null
=
True
,
blank
=
True
,
on_delete
=
models
.
SET_NULL
,
verbose_name
=
_
(
'IDC'
))
mac_addr
=
models
.
CharField
(
max_length
=
20
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
"Mac address"
))
mac_addr
=
models
.
CharField
(
max_length
=
20
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
"Mac address"
))
brand
=
models
.
CharField
(
max_length
=
64
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
'Brand'
))
brand
=
models
.
CharField
(
max_length
=
64
,
null
=
True
,
blank
=
True
,
verbose_name
=
_
(
'Brand'
))
...
...
This diff is collapsed.
Click to expand it.
apps/assets/templates/assets/asset_group_detail.html
0 → 100644
View file @
30fd51c2
{% extends 'base.html' %}
{% load common_tags %}
{% load users_tags %}
{% load static %}
{% load i18n %}
{% block custom_head_css_js %}
<link
href=
"{% static "
css
/
plugins
/
select2
/
select2
.
min
.
css
"
%}"
rel=
"stylesheet"
>
<script
src=
"{% static "
js
/
plugins
/
select2
/
select2
.
full
.
min
.
js
"
%}"
></script>
{% endblock %}
{% block content %}
<div
class=
"wrapper wrapper-content animated fadeInRight"
>
<div
class=
"row"
>
<div
class=
"col-sm-12"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"panel-options"
>
<ul
class=
"nav nav-tabs"
>
<li
class=
"active"
><a
href=
""
class=
"text-center"
><i
class=
"fa fa-laptop"
></i>
{% trans 'Detail' %}
</a>
</li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Asset group perm' %}
</a></li>
</ul>
</div>
<div
class=
"tab-content"
>
<div
class=
"col-sm-7"
style=
"padding-left: 0;"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<span
class=
"label"
><b>
{{ asset_group.name }}
</b></span>
<div
class=
"ibox-tools"
>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
</a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"#"
>
<i
class=
"fa fa-wrench"
></i>
</a>
<ul
class=
"dropdown-menu dropdown-user"
>
<li><a
href=
"#"
></a>
</li>
<li><a
href=
"#"
></a>
</li>
</ul>
<a
class=
"close-link"
>
<i
class=
"fa fa-times"
></i>
</a>
</div>
</div>
<div
class=
"ibox-content"
>
<table
class=
"table"
>
<tbody>
<tr
class=
"no-borders-tr"
>
<td>
{% trans 'Name' %}:
</td>
<td><b>
{{ asset_group.name }}
</b></td>
</tr>
<tr>
<td>
{% trans 'Date created' %}:
</td>
<td><b>
{{ asset_group.date_created }}
</b></td>
</tr>
<tr>
<td>
{% trans 'Created by' %}:
</td>
<td><b>
{{ asset_group.created_by }}
</b></td>
</tr>
<tr>
<td>
{% trans 'Comment' %}:
</td>
<td><b>
{{ asset_group.comment }}
</b></td>
</tr>
</tbody>
</table>
</div>
</div>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<span
class=
"label"
><b>
{{ asset_group.name }}
</b></span>
<div
class=
"ibox-tools"
>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
</a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"#"
>
<i
class=
"fa fa-wrench"
></i>
</a>
<ul
class=
"dropdown-menu dropdown-user"
>
<li><a
href=
"#"
></a>
</li>
<li><a
href=
"#"
></a>
</li>
</ul>
<a
class=
"close-link"
>
<i
class=
"fa fa-times"
></i>
</a>
</div>
</div>
<div
class=
"ibox-content"
>
<table
class=
"table"
>
<tbody>
<tr
class=
"no-borders-tr"
>
<td>
{% trans 'Name' %}:
</td>
<td><b>
{{ asset_group.name }}
</b></td>
</tr>
<tr>
<td>
{% trans 'Date created' %}:
</td>
<td><b>
{{ asset_group.date_created }}
</b></td>
</tr>
<tr>
<td>
{% trans 'Created by' %}:
</td>
<td><b>
{{ asset_group.created_by }}
</b></td>
</tr>
<tr>
<td>
{% trans 'Comment' %}:
</td>
<td><b>
{{ asset_group.comment }}
</b></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div
class=
"col-sm-5"
style=
"padding-left: 0;padding-right: 0"
>
<div
class=
"panel panel-primary"
>
<div
class=
"panel-heading"
>
<i
class=
"fa fa-info-circle"
></i>
{% trans 'Associate asset user(system/admin)' %}
</div>
<div
class=
"panel-body"
>
<table
class=
"table"
>
<tbody>
<tr
class=
"no-borders-tr"
>
<td
width=
"50%"
>
{% trans 'repush system user' %}:
</td>
<td>
<span
style=
"float: right"
>
<button
class=
"btn btn-danger btn-xs"
type=
"button"
><i
class=
"fa fa-refresh"
></i></button>
</span>
</td>
</tr>
<form>
<tr>
<td
colspan=
"2"
>
<select
class=
"select2 form-control"
>
<option
value=
"1"
>
{% trans 'System user' %}
</option>
<option
value=
"2"
>
{% trans 'Admin user' %}
</option>
</select>
</td>
</tr>
<tr
class=
"no-borders-tr"
>
<td
colspan=
"2"
>
<select
data-placeholder=
"{% trans 'Select asset user' %}"
class=
"select2"
style=
"width: 100%"
multiple=
""
tabindex=
"4"
>
{% for group in groups %}
<option
value=
"{{ group.id }}"
>
{{ group.name }}
</option>
{% endfor %}
</select>
</td>
</tr>
<tr
class=
"no-borders-tr"
>
<td
colspan=
"2"
>
<button
type=
"button"
class=
"btn btn-primary btn-sm"
>
{% trans 'Associate' %}
</button>
</td>
</tr>
</form>
{% for group in user.groups.all %}
<tr>
<td
><b>
{{ group.name }}
</b></td>
<td>
<button
class=
"btn btn-danger btn-xs"
type=
"button"
style=
"float: right;"
><i
class=
"fa fa-minus"
></i></button>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block custom_foot_js %}
<script>
function
switch_user_status
(
obj
)
{
var
status
=
$
(
obj
).
prop
(
'checked'
);
$
.
ajax
({
url
:
"{% url 'users:user-active-api' pk=user.id %}"
,
type
:
"PUT"
,
data
:
{
'is_active'
:
status
},
success
:
function
(
data
,
status
)
{
console
.
log
(
data
)
},
error
:
function
()
{
console
.
log
(
'error'
)
}
})
}
$
(
document
).
ready
(
function
()
{
$
(
'.select2'
).
select2
();
})
</script>
{% endblock %}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
apps/assets/templates/assets/asset_group_list.html
View file @
30fd51c2
...
@@ -27,7 +27,7 @@
...
@@ -27,7 +27,7 @@
</a>
</a>
</td>
</td>
<td
class=
"text-center"
>
{{ asset_group.assets.count }}
</td>
<td
class=
"text-center"
>
{{ asset_group.assets.count }}
</td>
<td
class=
"text-center"
>
{{ asset_group.comment }}
</td>
<td
class=
"text-center"
>
{{ asset_group.comment
|truncatewords:8
}}
</td>
<td
class=
"text-center"
>
<td
class=
"text-center"
>
<a
href=
"{% url 'assets:asset-group-update' pk=asset_group.id %}"
class=
"btn btn-xs btn-info"
>
{% trans 'Update' %}
</a>
<a
href=
"{% url 'assets:asset-group-update' pk=asset_group.id %}"
class=
"btn btn-xs btn-info"
>
{% trans 'Update' %}
</a>
<a
href=
"{% url 'assets:asset-group-delete' pk=asset_group.id %}"
class=
"btn btn-xs btn-danger del"
>
{% trans 'Delete' %}
</a>
<a
href=
"{% url 'assets:asset-group-delete' pk=asset_group.id %}"
class=
"btn btn-xs btn-danger del"
>
{% trans 'Delete' %}
</a>
...
...
This diff is collapsed.
Click to expand it.
apps/assets/templates/assets/delete_confirm.html
0 → 100644
View file @
30fd51c2
{% load i18n %}
<!DOCTYPE html>
<html
lang=
"en"
>
<head>
<meta
charset=
"UTF-8"
>
<title>
{% trans 'Confirm delete' %}
</title>
</head>
<body>
<form
action=
""
method=
"post"
>
{% csrf_token %}
<p>
Are you sure you want to delete "{{ object.name }}"?
</p>
<input
type=
"submit"
value=
"Confirm"
/>
</form>
</body>
</html>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
apps/assets/views.py
View file @
30fd51c2
...
@@ -6,6 +6,8 @@ from django.shortcuts import get_object_or_404
...
@@ -6,6 +6,8 @@ from django.shortcuts import get_object_or_404
from
django.views.generic
import
TemplateView
,
ListView
from
django.views.generic
import
TemplateView
,
ListView
from
django.urls
import
reverse_lazy
from
django.urls
import
reverse_lazy
from
django.views.generic.edit
import
CreateView
,
DeleteView
,
FormView
,
UpdateView
from
django.views.generic.edit
import
CreateView
,
DeleteView
,
FormView
,
UpdateView
from
django.conf
import
settings
from
django.db.models
import
Q
from
django.views.generic
import
TemplateView
,
ListView
from
django.views.generic
import
TemplateView
,
ListView
from
django.views.generic.edit
import
CreateView
,
DeleteView
,
FormView
,
UpdateView
from
django.views.generic.edit
import
CreateView
,
DeleteView
,
FormView
,
UpdateView
from
django.urls
import
reverse_lazy
from
django.urls
import
reverse_lazy
...
@@ -70,20 +72,45 @@ class AssetGroupCreateView(CreateView):
...
@@ -70,20 +72,45 @@ class AssetGroupCreateView(CreateView):
class
AssetGroupListView
(
ListView
):
class
AssetGroupListView
(
ListView
):
model
=
AssetGroup
model
=
AssetGroup
paginate_by
=
settings
.
CONFIG
.
DISPLAY_PER_PAGE
context_object_name
=
'asset_group_list'
context_object_name
=
'asset_group_list'
template_name
=
'assets/asset_group_list.html'
template_name
=
'assets/asset_group_list.html'
def
get_context_data
(
self
,
**
kwargs
):
def
get_context_data
(
self
,
**
kwargs
):
context
=
{
context
=
{
'app'
:
_
(
'Assets'
),
'app'
:
_
(
'Assets'
),
'action'
:
_
(
'Asset group list'
)
'action'
:
_
(
'Asset group list'
),
'keyword'
:
self
.
request
.
GET
.
get
(
'keyword'
,
''
)
}
}
kwargs
.
update
(
context
)
kwargs
.
update
(
context
)
return
super
(
AssetGroupListView
,
self
)
.
get_context_data
(
**
kwargs
)
return
super
(
AssetGroupListView
,
self
)
.
get_context_data
(
**
kwargs
)
def
get_queryset
(
self
):
self
.
queryset
=
super
(
AssetGroupListView
,
self
)
.
get_queryset
()
self
.
keyword
=
keyword
=
self
.
request
.
GET
.
get
(
'keyword'
,
''
)
self
.
sort
=
sort
=
self
.
request
.
GET
.
get
(
'sort'
,
'-date_created'
)
if
keyword
:
self
.
queryset
=
self
.
queryset
.
filter
(
Q
(
name__icontains
=
keyword
)
|
Q
(
comment__icontains
=
keyword
))
if
sort
:
self
.
queryset
=
self
.
queryset
.
order_by
(
sort
)
return
self
.
queryset
class
AssetGroupDetailView
(
DetailView
):
class
AssetGroupDetailView
(
DetailView
):
pass
template_name
=
'assets/asset_group_detail.html'
model
=
AssetGroup
context_object_name
=
'asset_group'
def
get_context_data
(
self
,
**
kwargs
):
context
=
{
'app'
:
_
(
'Assets'
),
'action'
:
_
(
'Asset group detail'
)
}
kwargs
.
update
(
context
)
return
super
(
AssetGroupDetailView
,
self
)
.
get_context_data
(
**
kwargs
)
class
AssetGroupUpdateView
(
UpdateView
):
class
AssetGroupUpdateView
(
UpdateView
):
...
@@ -103,4 +130,6 @@ class AssetGroupUpdateView(UpdateView):
...
@@ -103,4 +130,6 @@ class AssetGroupUpdateView(UpdateView):
class
AssetGroupDeleteView
(
DeleteView
):
class
AssetGroupDeleteView
(
DeleteView
):
pass
template_name
=
'assets/delete_confirm.html'
model
=
AssetGroup
success_url
=
reverse_lazy
(
'assets:asset-group-list'
)
This diff is collapsed.
Click to expand it.
apps/locale/zh/LC_MESSAGES/django.po
View file @
30fd51c2
...
@@ -8,7 +8,7 @@ msgid ""
...
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
msgstr ""
"Project-Id-Version: Jumpserver 0.3.3\n"
"Project-Id-Version: Jumpserver 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-09-06 1
5:08
+0800\n"
"POT-Creation-Date: 2016-09-06 1
9:12
+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: ibuler <ibuler@qq.com>\n"
"Last-Translator: ibuler <ibuler@qq.com>\n"
"Language-Team: Jumpserver team<ibuler@qq.com>\n"
"Language-Team: Jumpserver team<ibuler@qq.com>\n"
...
@@ -21,7 +21,7 @@ msgstr ""
...
@@ -21,7 +21,7 @@ msgstr ""
msgid "Select asset groups"
msgid "Select asset groups"
msgstr "添加到资产组"
msgstr "添加到资产组"
#: assets/forms.py:25 assets/models.py:1
44
templates/_nav.html:21
#: assets/forms.py:25 assets/models.py:1
71
templates/_nav.html:21
msgid "Asset"
msgid "Asset"
msgstr "资产"
msgstr "资产"
...
@@ -29,67 +29,79 @@ msgstr "资产"
...
@@ -29,67 +29,79 @@ msgstr "资产"
msgid "Select assets"
msgid "Select assets"
msgstr "选择资产"
msgstr "选择资产"
#: assets/models.py:
9 assets/models.py:21 assets/models.py:54
#: assets/models.py:
12 assets/models.py:48 assets/models.py:81
#: assets/models.py:
76 assets/templates/assets/asset_group_list.html:12
#: assets/models.py:
103 assets/templates/assets/asset_group_detail.html:63
#:
users/models.py:60 users/models.py:107
#:
assets/templates/assets/asset_group_list.html:12 users/models.py:60
#: users/templates/users/user_detail.html:69
#: users/
models.py:107 users/
templates/users/user_detail.html:69
#: users/templates/users/user_list.html:12
#: users/templates/users/user_list.html:12
msgid "Name"
msgid "Name"
msgstr "名称"
msgstr "名称"
#: assets/models.py:1
0 assets/models.py:29 assets/models.py:42
#: assets/models.py:1
3 assets/models.py:56 assets/models.py:69
#: assets/models.py:
61 assets/models.py:90 assets/models.py:125
#: assets/models.py:
88 assets/models.py:117 assets/models.py:152
#: assets/models.py:1
45
users/models.py:122
#: assets/models.py:1
72
users/models.py:122
#: users/templates/users/user_detail.html:101
#: users/templates/users/user_detail.html:101
msgid "Created by"
msgid "Created by"
msgstr "创建者"
msgstr "创建者"
#: assets/models.py:11 assets/models.py:30 assets/models.py:44
#: assets/models.py:14 assets/models.py:54 assets/models.py:154
#: assets/models.py:62 assets/models.py:91 assets/models.py:128
msgid "Date added"
#: assets/models.py:147 assets/templates/assets/asset_group_list.html:14
msgstr "加入日期"
#: users/models.py:61 users/models.py:118
#: users/templates/users/user_detail.html:113
#: assets/models.py:15 assets/models.py:57 assets/models.py:71
#: assets/models.py:89 assets/models.py:118 assets/models.py:155
#: assets/models.py:174 assets/templates/assets/asset_group_detail.html:75
#: assets/templates/assets/asset_group_list.html:14 users/models.py:61
#: users/models.py:118 users/templates/users/user_detail.html:113
msgid "Comment"
msgid "Comment"
msgstr "备注"
msgstr "备注"
#: assets/models.py:22
#: assets/models.py:25
#, fuzzy
#| msgid "As default"
msgid "Default"
msgstr "默认使用"
#: assets/models.py:25
#, fuzzy
#| msgid "Create asset group"
msgid "Default asset group"
msgstr "创建资产组"
#: assets/models.py:49
msgid "Bandwidth"
msgid "Bandwidth"
msgstr "带宽"
msgstr "带宽"
#: assets/models.py:
23
#: assets/models.py:
50
msgid "Contact"
msgid "Contact"
msgstr "联系人"
msgstr "联系人"
#: assets/models.py:
24
users/models.py:113
#: assets/models.py:
51
users/models.py:113
#: users/templates/users/user_detail.html:82
#: users/templates/users/user_detail.html:82
msgid "Phone"
msgid "Phone"
msgstr "手机"
msgstr "手机"
#: assets/models.py:
25
#: assets/models.py:
52
msgid "Address"
msgid "Address"
msgstr "地址"
msgstr "地址"
#: assets/models.py:
26
#: assets/models.py:
53
msgid "Network"
msgid "Network"
msgstr "网络"
msgstr "网络"
#: assets/models.py:27 assets/models.py:127
#: assets/models.py:55
msgid "Date added"
msgstr "加入日期"
#: assets/models.py:28
msgid "Operator"
msgid "Operator"
msgstr "运营商"
msgstr "运营商"
#: assets/models.py:
40 assets/models.py:142
#: assets/models.py:
67 assets/models.py:169
msgid "KEY"
msgid "KEY"
msgstr "KEY"
msgstr "KEY"
#: assets/models.py:
41 assets/models.py:143
#: assets/models.py:
68 assets/models.py:170
msgid "VALUE"
msgid "VALUE"
msgstr "VALUE"
msgstr "VALUE"
#: assets/models.py:
55 assets/models.py:77
users/forms.py:13
#: assets/models.py:
82 assets/models.py:104
users/forms.py:13
#: users/models.py:106 users/templates/users/login.html:53
#: users/models.py:106 users/templates/users/login.html:53
#: users/templates/users/user_detail.html:73
#: users/templates/users/user_detail.html:73
#: users/templates/users/user_list.html:13
#: users/templates/users/user_list.html:13
...
@@ -97,7 +109,7 @@ msgstr "VALUE"
...
@@ -97,7 +109,7 @@ msgstr "VALUE"
msgid "Username"
msgid "Username"
msgstr "用户名"
msgstr "用户名"
#: assets/models.py:
56 assets/models.py:78
users/forms.py:15
#: assets/models.py:
83 assets/models.py:105
users/forms.py:15
#: users/templates/users/login.html:56
#: users/templates/users/login.html:56
#: users/templates/users/reset_password.html:52
#: users/templates/users/reset_password.html:52
#: users/templates/users/user_create.html:8
#: users/templates/users/user_create.html:8
...
@@ -107,149 +119,151 @@ msgstr "用户名"
...
@@ -107,149 +119,151 @@ msgstr "用户名"
msgid "Password"
msgid "Password"
msgstr "密码"
msgstr "密码"
#: assets/models.py:
57 assets/models.py:80
#: assets/models.py:
84 assets/models.py:107
msgid "SSH private key"
msgid "SSH private key"
msgstr "ssh密钥"
msgstr "ssh密钥"
#: assets/models.py:
58 assets/models.py:82
#: assets/models.py:
85 assets/models.py:109
msgid "As default"
msgid "As default"
msgstr "默认使用"
msgstr "默认使用"
#: assets/models.py:
59 assets/models.py:84
#: assets/models.py:
86 assets/models.py:111
msgid "Auto update pass/key"
msgid "Auto update pass/key"
msgstr "自动更新密码/密钥"
msgstr "自动更新密码/密钥"
#: assets/models.py:
79
#: assets/models.py:
106
msgid "Protocol"
msgid "Protocol"
msgstr "协议"
msgstr "协议"
#: assets/models.py:
81
#: assets/models.py:
108
msgid "SSH public key"
msgid "SSH public key"
msgstr "ssh公钥"
msgstr "ssh公钥"
#: assets/models.py:
83
#: assets/models.py:
110
msgid "Auto push"
msgid "Auto push"
msgstr "自动推送"
msgstr "自动推送"
#: assets/models.py:
85
#: assets/models.py:
112
msgid "Sudo"
msgid "Sudo"
msgstr "Sudo"
msgstr "Sudo"
#: assets/models.py:
86
#: assets/models.py:
113
msgid "Shell"
msgid "Shell"
msgstr "Shell"
msgstr "Shell"
#: assets/models.py:
87
templates/_header_bar.html:41 templates/_nav.html:4
#: assets/models.py:
114
templates/_header_bar.html:41 templates/_nav.html:4
msgid "Home"
msgid "Home"
msgstr "仪表盘"
msgstr "仪表盘"
#: assets/models.py:
88
#: assets/models.py:
115
msgid "Uid"
msgid "Uid"
msgstr "Uid"
msgstr "Uid"
#: assets/models.py:1
01
#: assets/models.py:1
28
msgid "IP"
msgid "IP"
msgstr "IP"
msgstr "IP"
#: assets/models.py:1
02
#: assets/models.py:1
29
msgid "Other IP"
msgid "Other IP"
msgstr "其它IP"
msgstr "其它IP"
#: assets/models.py:1
03
#: assets/models.py:1
30
msgid "Remote card IP"
msgid "Remote card IP"
msgstr "远控卡IP"
msgstr "远控卡IP"
#: assets/models.py:1
04
#: assets/models.py:1
31
msgid "Hostname"
msgid "Hostname"
msgstr "用户名"
msgstr "用户名"
#: assets/models.py:1
05
#: assets/models.py:1
32
msgid "Port"
msgid "Port"
msgstr "端口"
msgstr "端口"
#: assets/models.py:1
06
#: assets/models.py:1
33
msgid "Asset groups"
msgid "Asset groups"
msgstr "用户组"
msgstr "用户组"
#: assets/models.py:1
07 assets/models.py:109
templates/_nav.html:24
#: assets/models.py:1
34 assets/models.py:136
templates/_nav.html:24
msgid "Admin user"
msgid "Admin user"
msgstr "管理用户"
msgstr "管理用户"
#: assets/models.py:1
08
#: assets/models.py:1
35
msgid "Admin password"
msgid "Admin password"
msgstr "管理员密码"
msgstr "管理员密码"
#: assets/models.py:1
10
#: assets/models.py:1
37
msgid "System User"
msgid "System User"
msgstr "系统用户"
msgstr "系统用户"
#: assets/models.py:1
11
templates/_nav.html:23
#: assets/models.py:1
38
templates/_nav.html:23
msgid "IDC"
msgid "IDC"
msgstr "机房"
msgstr "机房"
#: assets/models.py:1
12
#: assets/models.py:1
39
msgid "Mac address"
msgid "Mac address"
msgstr "Mac地址"
msgstr "Mac地址"
#: assets/models.py:1
13
#: assets/models.py:1
40
msgid "Brand"
msgid "Brand"
msgstr "品牌"
msgstr "品牌"
#: assets/models.py:1
14
#: assets/models.py:1
41
msgid "CPU"
msgid "CPU"
msgstr "CPU"
msgstr "CPU"
#: assets/models.py:1
15
#: assets/models.py:1
42
msgid "Memory"
msgid "Memory"
msgstr "内存"
msgstr "内存"
#: assets/models.py:1
16
#: assets/models.py:1
43
msgid "Disk"
msgid "Disk"
msgstr "硬盘"
msgstr "硬盘"
#: assets/models.py:1
17
#: assets/models.py:1
44
msgid "OS"
msgid "OS"
msgstr "操作系统"
msgstr "操作系统"
#: assets/models.py:1
18
#: assets/models.py:1
45
msgid "Cabinet number"
msgid "Cabinet number"
msgstr "机柜编号"
msgstr "机柜编号"
#: assets/models.py:1
19
#: assets/models.py:1
46
msgid "Cabinet position"
msgid "Cabinet position"
msgstr "机柜层号"
msgstr "机柜层号"
#: assets/models.py:1
20
#: assets/models.py:1
47
msgid "Asset number"
msgid "Asset number"
msgstr "资产编号"
msgstr "资产编号"
#: assets/models.py:1
21
#: assets/models.py:1
48
msgid "Asset status"
msgid "Asset status"
msgstr "资产状态"
msgstr "资产状态"
#: assets/models.py:1
22
#: assets/models.py:1
49
msgid "Asset type"
msgid "Asset type"
msgstr "系统类型"
msgstr "系统类型"
#: assets/models.py:1
23
#: assets/models.py:1
50
msgid "Asset environment"
msgid "Asset environment"
msgstr "资产环境"
msgstr "资产环境"
#: assets/models.py:1
24
#: assets/models.py:1
51
msgid "Serial number"
msgid "Serial number"
msgstr "序列号"
msgstr "序列号"
#: assets/models.py:1
26
#: assets/models.py:1
53
msgid "Is active"
msgid "Is active"
msgstr "是否激活"
msgstr "是否激活"
#: assets/templates/assets/asset_group_create.html:16
#: assets/templates/assets/asset_group_create.html:16
#: assets/templates/assets/asset_group_list.html:5 assets/views.py:6
0
#: assets/templates/assets/asset_group_list.html:5 assets/views.py:6
2
#: assets/views.py:
98
#: assets/views.py:
117
msgid "Create asset group"
msgid "Create asset group"
msgstr "创建资产组"
msgstr "创建资产组"
#: assets/templates/assets/asset_group_create.html:50
#: assets/templates/assets/asset_group_create.html:50
#: assets/templates/assets/asset_group_detail.html:124
#: assets/templates/assets/asset_group_detail.html:132
#: users/templates/users/_user.html:70
#: users/templates/users/_user.html:70
#: users/templates/users/user_detail.html:162
#: users/templates/users/user_detail.html:162
#: users/templates/users/user_detail.html:170
#: users/templates/users/user_detail.html:170
...
@@ -264,6 +278,65 @@ msgstr "重置"
...
@@ -264,6 +278,65 @@ msgstr "重置"
msgid "Submit"
msgid "Submit"
msgstr "提交"
msgstr "提交"
#: assets/templates/assets/asset_group_detail.html:18
msgid "Detail"
msgstr ""
#: assets/templates/assets/asset_group_detail.html:20
#, fuzzy
#| msgid "Asset group list"
msgid "Asset group assets"
msgstr "资产组列表"
#: assets/templates/assets/asset_group_detail.html:28
#: templates/_header_bar.html:8 users/templates/users/user_detail.html:29
msgid "Search"
msgstr "搜索"
#: assets/templates/assets/asset_group_detail.html:67
#, fuzzy
#| msgid "Date added"
msgid "Date create"
msgstr "加入日期"
#: assets/templates/assets/asset_group_detail.html:71
#, fuzzy
#| msgid "Created by"
msgid "Create by"
msgstr "创建者"
#: assets/templates/assets/asset_group_detail.html:86
#: users/templates/users/user_detail.html:124
msgid "Quick modify"
msgstr "快速修改"
#: assets/templates/assets/asset_group_detail.html:121
#: users/templates/users/reset_password.html:45
#: users/templates/users/user_detail.html:159 users/utils.py:98
msgid "Reset password"
msgstr "重置密码"
#: assets/templates/assets/asset_group_detail.html:129
#: users/templates/users/user_detail.html:167
msgid "Reset ssh key"
msgstr "重置密钥"
#: assets/templates/assets/asset_group_detail.html:143 templates/_nav.html:13
#: users/models.py:109 users/templates/users/user_detail.html:181
#: users/templates/users/user_list.html:15
msgid "User group"
msgstr "用户组"
#: assets/templates/assets/asset_group_detail.html:151 users/forms.py:34
#: users/forms.py:54 users/templates/users/user_detail.html:189
msgid "Join user groups"
msgstr "添加到用户组"
#: assets/templates/assets/asset_group_detail.html:160
#: users/templates/users/user_detail.html:198
msgid "Join"
msgstr "加入"
#: assets/templates/assets/asset_group_list.html:13
#: assets/templates/assets/asset_group_list.html:13
#: users/templates/users/user_list.html:16
#: users/templates/users/user_list.html:16
msgid "Asset num"
msgid "Asset num"
...
@@ -303,19 +376,20 @@ msgstr "批量导出"
...
@@ -303,19 +376,20 @@ msgstr "批量导出"
msgid "Create asset"
msgid "Create asset"
msgstr "创建资产"
msgstr "创建资产"
#: assets/views.py:59 assets/views.py:78 assets/views.py:97
#: assets/templates/assets/delete_confirm.html:6
#: users/templates/users/user_delete_confirm.html:6
msgid "Confirm delete"
msgstr "确认删除"
#: assets/views.py:61 assets/views.py:81 assets/views.py:116
#: templates/_nav.html:18
#: templates/_nav.html:18
msgid "Assets"
msgid "Assets"
msgstr "资产管理"
msgstr "资产管理"
#: assets/views.py:
79
#: assets/views.py:
82
msgid "Asset group list"
msgid "Asset group list"
msgstr "资产组列表"
msgstr "资产组列表"
#: templates/_header_bar.html:8 users/templates/users/user_detail.html:29
msgid "Search"
msgstr "搜索"
#: templates/_header_bar.html:14
#: templates/_header_bar.html:14
msgid "Welcome to use Jumpserver system"
msgid "Welcome to use Jumpserver system"
msgstr "欢迎使用Jumpserver开源跳板机系统"
msgstr "欢迎使用Jumpserver开源跳板机系统"
...
@@ -333,8 +407,8 @@ msgstr "注销登录"
...
@@ -333,8 +407,8 @@ msgstr "注销登录"
msgid "Login"
msgid "Login"
msgstr "登录"
msgstr "登录"
#: templates/_nav.html:9 users/views.py:
50 users/views.py:63 users/views.py:103
#: templates/_nav.html:9 users/views.py:
92 users/views.py:105
#: users/views.py:1
20 users/views.py:145 users/views.py:158
#: users/views.py:1
45 users/views.py:162 users/views.py:187 users/views.py:200
msgid "Users"
msgid "Users"
msgstr "用户管理"
msgstr "用户管理"
...
@@ -342,12 +416,6 @@ msgstr "用户管理"
...
@@ -342,12 +416,6 @@ msgstr "用户管理"
msgid "User"
msgid "User"
msgstr "用户"
msgstr "用户"
#: templates/_nav.html:13 users/models.py:109
#: users/templates/users/user_detail.html:181
#: users/templates/users/user_list.html:15
msgid "User group"
msgstr "用户组"
#: templates/_nav.html:22
#: templates/_nav.html:22
msgid "Asset group"
msgid "Asset group"
msgstr "资产组"
msgstr "资产组"
...
@@ -408,11 +476,6 @@ msgstr ""
...
@@ -408,11 +476,6 @@ msgstr ""
msgid "Captcha"
msgid "Captcha"
msgstr "验证码"
msgstr "验证码"
#: users/forms.py:34 users/forms.py:54
#: users/templates/users/user_detail.html:189
msgid "Join user groups"
msgstr "添加到用户组"
#: users/models.py:102 users/models.py:225
#: users/models.py:102 users/models.py:225
msgid "Administrator"
msgid "Administrator"
msgstr "管理员"
msgstr "管理员"
...
@@ -459,7 +522,7 @@ msgid "System"
...
@@ -459,7 +522,7 @@ msgid "System"
msgstr "系统"
msgstr "系统"
#: users/templates/users/_user.html:17 users/templates/users/user_list.html:5
#: users/templates/users/_user.html:17 users/templates/users/user_list.html:5
#: users/views.py:
63
#: users/views.py:
105
msgid "Create user"
msgid "Create user"
msgstr "创建用户"
msgstr "创建用户"
...
@@ -484,11 +547,6 @@ msgstr "输入您的邮箱, 将会发一封重置短信邮件到您的邮箱中"
...
@@ -484,11 +547,6 @@ msgstr "输入您的邮箱, 将会发一封重置短信邮件到您的邮箱中"
msgid "Captcha invalid"
msgid "Captcha invalid"
msgstr "验证码错误"
msgstr "验证码错误"
#: users/templates/users/reset_password.html:45
#: users/templates/users/user_detail.html:159 users/utils.py:98
msgid "Reset password"
msgstr "重置密码"
#: users/templates/users/reset_password.html:55
#: users/templates/users/reset_password.html:55
msgid "Password again"
msgid "Password again"
msgstr "再次输入密码"
msgstr "再次输入密码"
...
@@ -501,11 +559,7 @@ msgstr "设置"
...
@@ -501,11 +559,7 @@ msgstr "设置"
msgid "Reset link will be generated and sent to the user. "
msgid "Reset link will be generated and sent to the user. "
msgstr "生成重置密码连接,通过邮件发送给用户"
msgstr "生成重置密码连接,通过邮件发送给用户"
#: users/templates/users/user_delete_confirm.html:6
#: users/templates/users/user_detail.html:18 users/views.py:162
msgid "Confirm delete"
msgstr "确认删除"
#: users/templates/users/user_detail.html:18 users/views.py:120
msgid "User detail"
msgid "User detail"
msgstr "用户详情"
msgstr "用户详情"
...
@@ -525,19 +579,7 @@ msgstr "创建日期"
...
@@ -525,19 +579,7 @@ msgstr "创建日期"
msgid "Last login"
msgid "Last login"
msgstr "最后登录"
msgstr "最后登录"
#: users/templates/users/user_detail.html:124
#: users/templates/users/user_group_create.html:16 users/views.py:200
msgid "Quick modify"
msgstr "快速修改"
#: users/templates/users/user_detail.html:167
msgid "Reset ssh key"
msgstr "重置密钥"
#: users/templates/users/user_detail.html:198
msgid "Join"
msgstr "加入"
#: users/templates/users/user_group_create.html:16 users/views.py:158
msgid "Create user group"
msgid "Create user group"
msgstr "创建用户组"
msgstr "创建用户组"
...
@@ -546,18 +588,10 @@ msgstr "创建用户组"
...
@@ -546,18 +588,10 @@ msgstr "创建用户组"
msgid "Active"
msgid "Active"
msgstr "激活"
msgstr "激活"
#: users/templates/users/user_update.html:3 users/views.py:1
03
#: users/templates/users/user_update.html:3 users/views.py:1
45
msgid "Update user"
msgid "Update user"
msgstr "编辑用户"
msgstr "编辑用户"
#: users/urls.py:23
msgid "Logout success"
msgstr "退出登录成功"
#: users/urls.py:24
msgid "Logout success, return login page"
msgstr "退出登录成功,返回到登录页面"
#: users/utils.py:47
#: users/utils.py:47
msgid "Begin to generate ssh private key ..."
msgid "Begin to generate ssh private key ..."
msgstr "开始生成ssh密钥"
msgstr "开始生成ssh密钥"
...
@@ -659,45 +693,53 @@ msgstr ""
...
@@ -659,45 +693,53 @@ msgstr ""
" </br>\n"
" </br>\n"
" "
" "
#: users/views.py:50
#: users/views.py:62
msgid "Logout success"
msgstr "退出登录成功"
#: users/views.py:63
msgid "Logout success, return login page"
msgstr "退出登录成功,返回到登录页面"
#: users/views.py:92
msgid "User list"
msgid "User list"
msgstr "用户列表"
msgstr "用户列表"
#: users/views.py:
59
#: users/views.py:
101
#, python-format
#, python-format
msgid "Create user <a href=\"%s\">%s</a> success."
msgid "Create user <a href=\"%s\">%s</a> success."
msgstr "创建用户 <a href=\"%s\">%s</a> 成功"
msgstr "创建用户 <a href=\"%s\">%s</a> 成功"
#: users/views.py:1
45
#: users/views.py:1
87
msgid "User group list"
msgid "User group list"
msgstr "用户组列表"
msgstr "用户组列表"
#: users/views.py:
190
#: users/views.py:
232
msgid "Email address invalid, input again"
msgid "Email address invalid, input again"
msgstr "邮箱地址错误,重新输入"
msgstr "邮箱地址错误,重新输入"
#: users/views.py:2
01
#: users/views.py:2
43
msgid "Send reset password message"
msgid "Send reset password message"
msgstr "发送重置密码邮件"
msgstr "发送重置密码邮件"
#: users/views.py:2
02
#: users/views.py:2
44
msgid "Send reset password mail success, login your mail box and follow it "
msgid "Send reset password mail success, login your mail box and follow it "
msgstr ""
msgstr ""
"发送重置邮件成功, 请登录邮箱查看, 按照提示操作 (如果没收到,请等待3-5分钟)"
"发送重置邮件成功, 请登录邮箱查看, 按照提示操作 (如果没收到,请等待3-5分钟)"
#: users/views.py:2
14
#: users/views.py:2
56
msgid "Reset password success"
msgid "Reset password success"
msgstr "重置密码成功"
msgstr "重置密码成功"
#: users/views.py:2
15
#: users/views.py:2
57
msgid "Reset password success, return to login page"
msgid "Reset password success, return to login page"
msgstr "重置密码成功,返回到登录页面"
msgstr "重置密码成功,返回到登录页面"
#: users/views.py:2
31 users/views.py:244
#: users/views.py:2
73 users/views.py:286
msgid "Token invalid or expired"
msgid "Token invalid or expired"
msgstr "Token错误或失效"
msgstr "Token错误或失效"
#: users/views.py:2
40
#: users/views.py:2
82
msgid "Password not same"
msgid "Password not same"
msgstr "密码不一致"
msgstr "密码不一致"
...
...
This diff is collapsed.
Click to expand it.
apps/static/css/jumpserver.css
View file @
30fd51c2
...
@@ -38,6 +38,7 @@ th a {
...
@@ -38,6 +38,7 @@ th a {
color
:
white
;
color
:
white
;
}
}
.select2-selection--single
,
.select2-selection--multiple
{
.select2-selection--multiple
{
border
:
1px
solid
#e5e6e7
!important
;
border
:
1px
solid
#e5e6e7
!important
;
cursor
:
text
!important
;
cursor
:
text
!important
;
...
...
This diff is collapsed.
Click to expand it.
apps/templates/_list_base.html
View file @
30fd51c2
...
@@ -22,7 +22,6 @@
...
@@ -22,7 +22,6 @@
<div
class=
"ibox-content"
>
<div
class=
"ibox-content"
>
<div
class=
""
>
<div
class=
""
>
{# left button add #}
{% block content_left_head %} {% endblock %}
{% block content_left_head %} {% endblock %}
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<div
class=
"input-group"
>
<div
class=
"input-group"
>
...
...
This diff is collapsed.
Click to expand it.
apps/templates/_pagination.html
View file @
30fd51c2
...
@@ -34,11 +34,6 @@
...
@@ -34,11 +34,6 @@
</div>
</div>
{% endif %}
{% endif %}
<script>
<script>
{
#
function
sleep
(
n
)
{
//n表示的毫秒数#}
{
#
var
start
=
new
Date
().
getTime
();
#
}
{
#
while
(
true
)
if
(
new
Date
().
getTime
()
-
start
>
n
)
break
;
#
}
{
#
}
#
}
$
(
document
).
ready
(
function
()
{
$
(
document
).
ready
(
function
()
{
$
(
'.page'
).
click
(
function
()
{
$
(
'.page'
).
click
(
function
()
{
var
searchStr
=
location
.
search
;
var
searchStr
=
location
.
search
;
...
...
This diff is collapsed.
Click to expand it.
apps/users/templates/users/user_detail.html
View file @
30fd51c2
...
@@ -19,19 +19,6 @@
...
@@ -19,19 +19,6 @@
</li>
</li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'User assets' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'User assets' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'User log' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'User log' %}
</a></li>
<div
class=
""
style=
"float: right"
>
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<div
class=
"input-group"
>
<input
type=
"text"
class=
"form-control input-sm"
id=
"keyword"
name=
"keyword"
value=
"{{ keyword }}"
placeholder=
"Search"
>
<div
class=
"input-group-btn"
>
<button
id=
'search_btn'
type=
"submit"
class=
"btn btn-sm btn-primary"
>
{% trans 'Search' %}
</button>
</div>
</div>
</form>
</div>
</ul>
</ul>
</div>
</div>
<div
class=
"tab-content"
>
<div
class=
"tab-content"
>
...
@@ -118,7 +105,7 @@
...
@@ -118,7 +105,7 @@
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"col-sm-5"
style=
"padding-left: 0
px;
"
>
<div
class=
"col-sm-5"
style=
"padding-left: 0
;padding-right: 0
"
>
<div
class=
"panel panel-primary"
>
<div
class=
"panel panel-primary"
>
<div
class=
"panel-heading"
>
<div
class=
"panel-heading"
>
<i
class=
"fa fa-info-circle"
></i>
{% trans 'Quick modify' %}
<i
class=
"fa fa-info-circle"
></i>
{% trans 'Quick modify' %}
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment