26 from django.conf.urls
import patterns, url, include
27 from django.utils.translation
import ungettext, ugettext_lazy
as _
29 from wi.forms.system_image
import EditImageForm, AssignGroupForm
30 from wi.utils.decorators
import user_permission
31 from wi.utils.views
import direct_to_template, simple_generic_id, form_generic_id, generic_multiple_id
34 images_patterns = patterns(
'wi.views.user.system_image',
35 url(
r'^$',
user_permission(direct_to_template), {
'template_name':
'images/base.html'}, name=
'img_images'),
36 url(
r'^images_private/$',
user_permission(direct_to_template), {
'template_name':
'images/images_private.html'},
37 name=
'img_images_private'),
38 url(
r'^images_group/$',
user_permission(direct_to_template), {
'template_name':
'images/images_group.html'},
39 name=
'img_images_group'),
40 url(
r'^images_public/$',
user_permission(direct_to_template), {
'template_name':
'images/images_public.html'},
41 name=
'img_images_public'),
44 {
'template_name':
'generic/simple.html',
45 'success_msg': (
lambda desc, count: ungettext(
'You have successfully deleted image <b>%(desc)s</b>.',
'You have successfully deleted %(count)s images <b>%(desc)s</b>.', count) % {
'desc': desc,
'count': count}),
46 'ask_msg': (
lambda desc, count: ungettext(
'Do you really want to delete image <b>%(desc)s</b>?',
47 'Do you really want to delete %(count)s images <b>%(desc)s</b>?', count) % {
'desc': desc,
'count': count}),
48 'request_url':
'user/system_image/delete/',
49 'id_key':
'system_image_ids'
51 name=
'img_ajax_delete'),
53 url(
r'^ajax/get_all_table/(?P<img_type>\w+)/$',
'img_ajax_get_all_table', name=
'img_ajax_get_all_table'),
54 url(
r'^ajax/get_private_table/$',
'img_ajax_get_private_table', name=
'img_ajax_get_private_table'),
55 url(
r'^ajax/get_group_table/$',
'img_ajax_get_group_table', name=
'img_ajax_get_group_table'),
56 url(
r'^ajax/get_public_table/$',
'img_ajax_get_public_table', name=
'img_ajax_get_public_table'),
58 url(
r'^ajax/assign_group/(?P<id1>\d+)/$',
user_permission(form_generic_id),
59 {
'template_name':
'generic/form.html',
60 'success_msg': (
lambda desc, data: _(
'You have successfully assigned image <b>%(desc)s</b> to group.') % {
'desc': desc}),
61 'ask_msg': (
lambda desc: _(
'Enter a name of group for image <b>%(desc)s</b>.') % {
'desc': desc}),
62 'confirmation': _(
'Assign to group'),
63 'form_class': AssignGroupForm,
64 'request_url_post':
'user/system_image/set_group/',
65 'request_url_both': {
'groups':
'user/group/list_groups/'},
66 'id_key':
'system_image_id', },
67 name=
'img_ajax_assign_group'),
68 url(
r'^ajax/revoke_group/(?P<id1>\d+)/$',
user_permission(simple_generic_id),
69 {
'template_name':
'generic/simple.html',
70 'success_msg': (
lambda desc: _(
'You have successfully revoked group\'s assigment.') % {
'desc': desc}),
71 'ask_msg': (
lambda desc: _(
'Do you want to make image <b>%(desc)s</b> private?') % {
'desc': desc}),
72 'request_url':
'user/system_image/set_private/',
73 'id_key':
'system_image_id', },
74 name=
'img_ajax_revoke_group'),
76 url(
r'^ajax/add_image_http/$',
'img_ajax_add_image_http', name=
'img_ajax_add_image_http'),
77 url(
r'^ajax/edit_image/(?P<id1>\d+)/$',
user_permission(form_generic_id),
78 {
'template_name':
'generic/form.html',
79 'success_msg': (
lambda desc, data: _(
'You have successfully edited this image.') % {
'desc': desc}),
80 'ask_msg': (
lambda desc: _(
'Edit image data:') % {
'desc': desc}),
81 'confirmation': _(
'Save'),
82 'request_url_get':
'user/system_image/get_by_id/',
83 'request_url_post':
'user/system_image/edit/',
84 'request_url_both': {
'disk_controllers':
'user/system_image/get_disk_controllers/',
85 'video_devices':
'user/system_image/get_video_devices/',
86 'network_devices':
'user/system_image/get_network_devices/', },
87 'id_key':
'system_image_id',
88 'form_class': EditImageForm,
90 name=
'img_ajax_edit_image'),
92 url(
r'^ajax/change_to_storage/(?P<id1>\d+)/$',
user_permission(simple_generic_id),
93 {
'template_name':
'generic/simple.html',
94 'success_msg': (
lambda desc: _(
'You have successfully changed image <b>%(desc)s</b> to a storage disk.') % {
'desc': desc}),
95 'ask_msg': (
lambda desc: _(
'Do you want to change image <b>%(desc)s</b> to a storage disk?') % {
'desc': desc}),
96 'request_url':
'user/system_image/convert_to_storage_image/',
97 'id_key':
'system_image_id', },
98 name=
'img_ajax_change_to_storage'),
103 urlpatterns = patterns(
'',
104 url(
r'^images/', include(images_patterns)),