Merge branch 'develop' of github.com:ungleich/dynamicweb into develop
This commit is contained in:
		
				commit
				
					
						88ee543083
					
				
			
		
					 4 changed files with 113 additions and 77 deletions
				
			
		|  | @ -84,18 +84,18 @@ INSTALLED_APPS = ( | |||
|     'djangocms_file', | ||||
|     'djangocms_picture', | ||||
|     'djangocms_video', | ||||
|     'djangocms_flash', | ||||
|     'djangocms_googlemap', | ||||
|     'djangocms_inherit', | ||||
|     'djangocms_link', | ||||
|     'djangocms_teaser', | ||||
|     # 'djangocms_flash', | ||||
|     # 'djangocms_googlemap', | ||||
|     # 'djangocms_inherit', | ||||
|     # 'djangocms_link', | ||||
|     # 'djangocms_teaser', | ||||
|     'djangocms_page_meta', | ||||
|     'djangocms_text_ckeditor', | ||||
|     'djangocms_admin_style', | ||||
|     'cmsplugin_filer_file', | ||||
|     'cmsplugin_filer_folder', | ||||
|     'cmsplugin_filer_link', | ||||
|      'cmsplugin_filer_teaser', | ||||
|     # 'cmsplugin_filer_teaser', | ||||
|     'cmsplugin_filer_video', | ||||
|     # | ||||
|     # blog | ||||
|  | @ -103,10 +103,9 @@ INSTALLED_APPS = ( | |||
|     'reversion', | ||||
|     # ungleich | ||||
|     'ungleich', | ||||
| #    'ungleich_page', | ||||
|     'ungleich_page', | ||||
|     'hosting', | ||||
|     'digitalglarus', | ||||
| 
 | ||||
| ) | ||||
| 
 | ||||
| MIDDLEWARE_CLASSES = ( | ||||
|  | @ -176,7 +175,7 @@ CMS_TEMPLATES = ( | |||
| DATABASES = { | ||||
|     'default': { | ||||
|         'ENGINE': 'django.db.backends.postgresql_psycopg2', | ||||
|         'NAME': 'app_new', | ||||
|         'NAME': 'app', | ||||
|     } | ||||
| } | ||||
| 
 | ||||
|  | @ -280,12 +279,12 @@ CACHES = { | |||
|     } | ||||
| } | ||||
| 
 | ||||
| #if LOGIN_URL is None: | ||||
| #    LOGIN_URL = APP_ROOT_ENDPOINT + 'login/' | ||||
| #if LOGOUT_URL is None: | ||||
| #    LOGOUT_URL = APP_ROOT_ENDPOINT + 'logout/' | ||||
| #if LOGIN_REDIRECT_URL is None: | ||||
| #    LOGIN_REDIRECT_URL = APP_ROOT_ENDPOINT | ||||
| if LOGIN_URL is None: | ||||
|     LOGIN_URL = APP_ROOT_ENDPOINT + 'login/' | ||||
| if LOGOUT_URL is None: | ||||
|     LOGOUT_URL = APP_ROOT_ENDPOINT + 'logout/' | ||||
| if LOGIN_REDIRECT_URL is None: | ||||
|     LOGIN_REDIRECT_URL = APP_ROOT_ENDPOINT | ||||
| 
 | ||||
| # Static files (CSS, JavaScript, Images) | ||||
| # https://docs.djangoproject.com/en/1.7/howto/static-files/ | ||||
|  | @ -302,7 +301,7 @@ META_SITE_PROTOCOL = 'http' | |||
| META_USE_SITES = True | ||||
| MIGRATION_MODULES = { | ||||
|     'cms': 'cms.migrations', | ||||
|     #'filer': 'filer.migrations_django', | ||||
|     # 'filer': 'filer.migrations_django', | ||||
|     # 'menus': 'menus.migrations_django', | ||||
|     'djangocms_flash': 'djangocms_flash.migrations_django', | ||||
|     'djangocms_googlemap': 'djangocms_googlemap.migrations_django', | ||||
|  | @ -337,7 +336,6 @@ STATICFILES_FINDERS = ( | |||
| THUMBNAIL_PROCESSORS = ( | ||||
|     'easy_thumbnails.processors.colorspace', | ||||
|     'easy_thumbnails.processors.autocrop', | ||||
|     #'easy_thumbnails.processors.scale_and_crop', | ||||
|     'filer.thumbnail_processors.scale_and_crop_with_subject_location', | ||||
|     'easy_thumbnails.processors.filters', | ||||
| ) | ||||
|  | @ -443,12 +441,6 @@ PARLER_LANGUAGES = {1: ({'code': 'en-us'}, {'code': 'de'},)} | |||
| AUTH_USER_MODEL = 'membership.CustomUser' | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ALLOWED_HOSTS = [ | ||||
|     "*" | ||||
|     ] | ||||
| 
 | ||||
| 
 | ||||
| # PAYMENT | ||||
| 
 | ||||
| STRIPE_DESCRIPTION_ON_PAYMENT = "Payment for ungleich GmbH services" | ||||
|  |  | |||
|  | @ -1,64 +1,102 @@ | |||
| {% extends "hosting/base_short.html" %} | ||||
| {% load staticfiles bootstrap3 %} | ||||
| {% block content %}  | ||||
| {% block content %} | ||||
| 
 | ||||
| <div> | ||||
| 	<div class="container orders-container"> | ||||
| 		<div class="row"> | ||||
| 			<div class="col-md-8 col-md-offset-2"> | ||||
| 				<table class="table borderless table-hover">  | ||||
| 				<h3><i class="fa fa-credit-card"></i> My Orders</h3>  | ||||
| 				<br/> | ||||
| 				<thead>  | ||||
| 				<tr>  | ||||
| 					<th>#</th> | ||||
| 					<th>Date</th> | ||||
| 					<th>Amount</th> | ||||
| 					<th>Status</th> | ||||
| 					<th></th> | ||||
| 				</tr>  | ||||
| 				</thead>  | ||||
| 				<tbody>  | ||||
| 					{% for order in orders %} | ||||
| 					<tr>  | ||||
| 						<td scope="row">{{order.id}}</td>  | ||||
| 						<td>{{order.created_at}}</td>  | ||||
| 						<td>{{order.vm_plan.price}} CHF</td>  | ||||
| 						<td>{% if order.approved %} | ||||
| 								<span class="text-success strong">Approved</span> | ||||
| 							{% else%}  | ||||
| 								<span class="text-danger strong">Declined</span> | ||||
| 							{% endif%} | ||||
| 						</td>  | ||||
| 						<td> | ||||
| 							<button type="button" class="btn btn-default"><a href="{% url 'hosting:orders' order.id %}">View Detail</a></button> | ||||
| 						</td> | ||||
| 					</tr> | ||||
| 					{% endfor %} | ||||
| 				</tbody>  | ||||
| 				</table> | ||||
|     <div> | ||||
|         <div class="container orders-container"> | ||||
|             <div class="row"> | ||||
|                 <div class="col-md-8 col-md-offset-2"> | ||||
|                     <table class="table borderless table-hover"> | ||||
|                         <h3><i class="fa fa-credit-card"></i> My Orders</h3> | ||||
|                         <br/> | ||||
|                         <thead> | ||||
|                         <tr> | ||||
|                             <th>#</th> | ||||
|                             <th>Date</th> | ||||
|                             <th>Amount</th> | ||||
|                             <th>Status</th> | ||||
|                             <th></th> | ||||
|                         </tr> | ||||
|                         </thead> | ||||
|                         <tbody> | ||||
|                         {% for order in orders %} | ||||
|                             <tr> | ||||
|                                 <td scope="row">{{ order.id }}</td> | ||||
|                                 <td>{{ order.created_at }}</td> | ||||
|                                 <td>{{ order.vm_plan.price }} CHF</td> | ||||
|                                 <td>{% if order.approved %} | ||||
|                                     <span class="text-success strong">Approved</span> | ||||
|                                 {% else %} | ||||
|                                     <span class="text-danger strong">Declined</span> | ||||
|                                 {% endif %} | ||||
|                                 </td> | ||||
|                                 <td> | ||||
|                                     <button type="button" class="btn btn-default"><a | ||||
|                                             href="{% url 'hosting:orders' order.id %}">View Detail</a> | ||||
|                                     </button> | ||||
|                                     <button type="button" class="btn btn-default" data-toggle="modal" | ||||
|                                             data-target="#Modal{{ order.id }}"><a | ||||
|                                             href="#">Cancel order</a> | ||||
|                                     </button> | ||||
|                                 </td> | ||||
|                             </tr> | ||||
|                             <div class="modal fade" id="Modal{{ order.id }}" tabindex="-1" role="dialog" | ||||
|                                  aria-labelledby="exampleModalLabel"> | ||||
|                                 <div class="modal-dialog" role="document"> | ||||
|                                     <div class="modal-content"> | ||||
|                                         <div class="modal-header"> | ||||
|                                             <button type="button" class="close" data-dismiss="modal" | ||||
|                                                     aria-label="Confirm"><span | ||||
|                                                     aria-hidden="true">×</span> | ||||
|                                             </button> | ||||
|                                         </div> | ||||
|                                         <div class="modal-body"> | ||||
|                                             <h4 class="modal-title" id="ModalLabel">Do You want do delete | ||||
|                                                 Your | ||||
|                                                 order?</h4> | ||||
| 
 | ||||
| 			    {% if is_paginated %} | ||||
| 			        <div class="pagination"> | ||||
|                                             <form method="post" | ||||
|                                                   action="{% url 'hosting:delete_order' order.id %}"> | ||||
|                                                 {% csrf_token %} | ||||
|                                                 <div class="modal-footer"> | ||||
|                                                     <button type="button" class="btn btn-default" | ||||
|                                                             data-dismiss="modal"> | ||||
|                                                         Close | ||||
|                                                     </button> | ||||
|                                                     <button type="submit" class="btn btn-primary">Delete | ||||
|                                                     </button> | ||||
|                                                 </div> | ||||
|                                             </form> | ||||
|                                         </div> | ||||
|                                     </div> | ||||
|                                 </div> | ||||
|                             </div> | ||||
|                         {% endfor %} | ||||
| 
 | ||||
|                         </tbody> | ||||
|                     </table> | ||||
| 
 | ||||
|                     {% if is_paginated %} | ||||
|                         <div class="pagination"> | ||||
| 			            <span class="page-links"> | ||||
| 			                {% if page_obj.has_previous %} | ||||
| 			                    <a href="{{request.path}}?page={{ page_obj.previous_page_number }}">previous</a> | ||||
| 			                {% endif %} | ||||
| 			                <span class="page-current"> | ||||
|                                 <a href="{{ request.path }}?page={{ page_obj.previous_page_number }}">previous</a> | ||||
|                             {% endif %} | ||||
|                             <span class="page-current"> | ||||
| 			                    Page {{ page_obj.number }} of {{ page_obj.paginator.num_pages }}. | ||||
| 			                </span> | ||||
| 			                {% if page_obj.has_next %} | ||||
| 			                    <a href="{{request.path}}?page={{ page_obj.next_page_number }}">next</a> | ||||
| 			                {% endif %} | ||||
|                             {% if page_obj.has_next %} | ||||
|                                 <a href="{{ request.path }}?page={{ page_obj.next_page_number }}">next</a> | ||||
|                             {% endif %} | ||||
| 			            </span> | ||||
| 			        </div> | ||||
| 			    {% endif %} | ||||
|                         </div> | ||||
|                     {% endif %} | ||||
| 
 | ||||
| 			</div> | ||||
|                 </div> | ||||
| 
 | ||||
| 	    </div> | ||||
| 	</div> | ||||
|             </div> | ||||
|         </div> | ||||
| 
 | ||||
| </div> | ||||
|     </div> | ||||
| 
 | ||||
| {%endblock%} | ||||
| {% endblock %} | ||||
|  | @ -3,7 +3,7 @@ from django.conf.urls import url | |||
| from .views import DjangoHostingView, RailsHostingView, PaymentVMView, \ | ||||
|     NodeJSHostingView, LoginView, SignupView, IndexView, \ | ||||
|     OrdersHostingListView, OrdersHostingDetailView, VirtualMachinesPlanListView,\ | ||||
|     VirtualMachineDetailView, GenerateVMSSHKeysView | ||||
|     VirtualMachineDetailView, GenerateVMSSHKeysView, OrdersHostingDeleteView | ||||
| 
 | ||||
| urlpatterns = [ | ||||
|     # url(r'pricing/?$', VMPricingView.as_view(), name='pricing'), | ||||
|  | @ -14,6 +14,7 @@ urlpatterns = [ | |||
|     url(r'payment/?$', PaymentVMView.as_view(), name='payment'), | ||||
|     url(r'orders/?$', OrdersHostingListView.as_view(), name='orders'), | ||||
|     url(r'orders/(?P<pk>\d+)/?$', OrdersHostingDetailView.as_view(), name='orders'), | ||||
|     url(r'cancel_order/(?P<pk>\d+)/?$', OrdersHostingDeleteView.as_view(), name='delete_order'), | ||||
|     url(r'my-virtual-machines/?$', VirtualMachinesPlanListView.as_view(), name='virtual_machines'), | ||||
|     url(r'my-virtual-machines/(?P<pk>\d+)/?$', VirtualMachineDetailView.as_view(), | ||||
|         name='virtual_machines'), | ||||
|  |  | |||
|  | @ -3,7 +3,7 @@ from django.shortcuts import get_object_or_404, render | |||
| from django.core.urlresolvers import reverse_lazy, reverse | ||||
| from django.contrib.auth.mixins import LoginRequiredMixin | ||||
| 
 | ||||
| from django.views.generic import View, CreateView, FormView, ListView, DetailView, UpdateView | ||||
| from django.views.generic import View, CreateView, FormView, ListView, DetailView, UpdateView, DeleteView | ||||
| from django.http import HttpResponseRedirect, HttpResponse | ||||
| from django.contrib.auth import authenticate, login | ||||
| from django.conf import settings | ||||
|  | @ -126,7 +126,7 @@ class LoginView(FormView): | |||
| class SignupView(CreateView): | ||||
|     template_name = 'hosting/signup.html' | ||||
|     form_class = HostingUserSignupForm | ||||
|     moodel = CustomUser | ||||
|     model = CustomUser | ||||
| 
 | ||||
|     def get_success_url(self): | ||||
|         next_url = self.request.session.get('next', reverse_lazy('hosting:signup')) | ||||
|  | @ -169,6 +169,7 @@ class GenerateVMSSHKeysView(LoginRequiredMixin, UpdateView): | |||
|     #     return response | ||||
|         # return HttpResponseRedirect(reverse('')) | ||||
| 
 | ||||
| 
 | ||||
| class PaymentVMView(LoginRequiredMixin, FormView): | ||||
|     template_name = 'hosting/payment.html' | ||||
|     login_url = reverse_lazy('hosting:login') | ||||
|  | @ -264,6 +265,10 @@ class OrdersHostingListView(LoginRequiredMixin, ListView): | |||
|         self.queryset = HostingOrder.objects.filter(customer__user=user) | ||||
|         return super(OrdersHostingListView, self).get_queryset() | ||||
| 
 | ||||
| class OrdersHostingDeleteView(LoginRequiredMixin,DeleteView): | ||||
|     login_url=reverse_lazy('hosting:login') | ||||
|     success_url = reverse_lazy('hosting:orders') | ||||
|     model = HostingOrder | ||||
| 
 | ||||
| class VirtualMachinesPlanListView(LoginRequiredMixin, ListView): | ||||
|     template_name = "hosting/virtual_machines.html" | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue