26 from django.conf.urls
import patterns, url, include
27 from django.utils.translation
import ungettext, ugettext_lazy
as _
29 from wi.forms.storage_image
import ConvertImageForm, EditDiskForm
30 from wi.utils.decorators
import user_permission
31 from wi.utils.views
import direct_to_template, form_generic_id, generic_multiple_id
34 resources_patterns = patterns(
'wi.views.user.storage_image',
36 url(
r'^disks/$',
user_permission(direct_to_template), {
'template_name':
'resources/disks.html'}, name=
'res_disks'),
37 url(
r'^ajax/disk_table/$',
'res_ajax_get_disk_table', name=
'res_ajax_get_disk_table'),
38 url(
r'^ajax/upload_disk_http/$',
'res_ajax_upload_disk_http', name=
'res_ajax_upload_disk_http'),
39 url(
r'^ajax/add_disk/$',
'res_ajax_add_disk', name=
'res_ajax_add_disk'),
40 url(
r'^ajax/edit_disk/(?P<id1>\d+)/$',
user_permission(form_generic_id),
41 {
'template_name':
'generic/form.html',
42 'success_msg': (
lambda desc, data: _(
'You have successfully edited selected disk.') % {
'desc': desc}),
43 'ask_msg': (
lambda desc: _(
'Edit disk data:') % {
'desc': desc}),
44 'confirmation': _(
'Save'),
45 'request_url_post':
'user/storage_image/edit/',
46 'request_url_get':
'user/storage_image/get_by_id/',
47 'request_url_both': {
'disk_controllers':
'user/storage_image/get_disk_controllers/'},
48 'id_key':
'storage_image_id',
49 'form_class': EditDiskForm},
50 name=
'res_ajax_edit_disk'),
52 {
'template_name':
'generic/simple.html',
53 'success_msg': (
lambda desc, count: ungettext(
'You have successfully deleted disk volume <b>%(desc)s</b>.',
'You have successfully deleted %(count)s disk volumes <b>%(desc)s</b>.', count) % {
'desc': desc,
'count': count}),
54 'ask_msg': (
lambda desc, count: ungettext(
'Do you really want to delete disk volume <b>%(desc)s</b>?',
55 'Do you really want to delete %(count)s disk volumes <b>%(desc)s</b>?', count) % {
'desc': desc,
'count': count}),
56 'request_url':
'user/storage_image/delete/',
57 'id_key':
'storage_image_ids'
59 name=
'res_ajax_delete_disk'),
61 url(
r'^ajax/change_to_image/(?P<id1>\d+)/$',
user_permission(form_generic_id),
62 {
'template_name':
'generic/form.html',
63 'success_msg': (
lambda desc, data: _(
'You have successfully changed disk <b>%(desc)s</b> to a VM image.') % {
'desc': desc}),
64 'ask_msg': (
lambda desc: _(
'Do you want to change disk <b>%(desc)s</b> to a VM image?') % {
'desc': desc}),
65 'request_url_post':
'user/storage_image/convert_to_system_image/',
66 'request_url_both': {
'disk_controllers':
'user/system_image/get_disk_controllers/',
67 'video_devices':
'user/system_image/get_video_devices/',
68 'network_devices':
'user/system_image/get_network_devices/', },
69 'confirmation': _(
'Change'),
70 'id_key':
'storage_image_id',
71 'form_class': ConvertImageForm, },
72 name=
'img_ajax_change_to_image'),
75 urlpatterns = patterns(
'',
76 url(
r'^resources/', include(resources_patterns)),