767 lines
25 KiB
Python
767 lines
25 KiB
Python
from django.shortcuts import render, redirect, get_object_or_404
|
|
from django.contrib import messages
|
|
from django.contrib.auth.decorators import login_required
|
|
from core.decorators import admin_role_required, both_role_required
|
|
from home.models import *
|
|
from home.forms import *
|
|
from about.models import *
|
|
from about.forms import *
|
|
from contact.models import *
|
|
from contact.forms import *
|
|
from settings.models import *
|
|
from settings.forms import *
|
|
from menus.models import *
|
|
from menus.forms import *
|
|
from service.models import *
|
|
from service.forms import *
|
|
from project.models import *
|
|
from project.forms import *
|
|
from product.models import *
|
|
from product.forms import *
|
|
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Home Page #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@both_role_required
|
|
def adminHome(request):
|
|
services = serviceSection.objects.all()
|
|
products = productSection.objects.all()
|
|
projects = projectSection.objects.all()
|
|
clients = clientSection.objects.all()
|
|
contacts = Contact.objects.all().order_by('-created_at')
|
|
|
|
context = {
|
|
'title' : 'Dashboard',
|
|
'services': services,
|
|
'products': products,
|
|
'projects': projects,
|
|
'clients': clients,
|
|
'contacts' : contacts,
|
|
}
|
|
return render(request, 'dashboard/main/index.html', context)
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Project #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectList(request):
|
|
projects = projectSection.objects.all()
|
|
context = {
|
|
'title' : 'Projects',
|
|
'projects' : projects,
|
|
}
|
|
return render(request, 'dashboard/main/project/projects.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectCreate(request):
|
|
if request.method == 'POST':
|
|
form = projectSectionForm(request.POST, request.FILES)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Project created successfully!')
|
|
return redirect('adminProjectList')
|
|
else:
|
|
form = projectSectionForm()
|
|
context = {
|
|
'title' : 'Create Project',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/project/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectEdit(request, slug):
|
|
project = get_object_or_404(projectSection, slug=slug)
|
|
if request.method == 'POST':
|
|
form = projectSectionForm(request.POST, request.FILES, instance=project)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Project updated successfully!')
|
|
return redirect('adminProjectList')
|
|
else:
|
|
form = projectSectionForm(instance=project)
|
|
context = {
|
|
'title' : 'Edit Project',
|
|
'project' : project,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/project/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectDelete(request, id):
|
|
project = get_object_or_404(projectSection, id=id)
|
|
project.delete()
|
|
messages.warning(request, 'Project deleted!')
|
|
return redirect('adminProjectList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Project Categories #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectCategoryList(request):
|
|
categories = projectCategory.objects.all()
|
|
context = {
|
|
'title' : 'Project Categories',
|
|
'categories' : categories,
|
|
}
|
|
return render(request, 'dashboard/main/project/partial/category/categories.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectCategoryCreate(request):
|
|
if request.method == 'POST':
|
|
form = projectCategoryForm(request.POST, request.FILES)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Category created successfully!')
|
|
return redirect('adminProjectCategoryList')
|
|
else:
|
|
form = projectCategoryForm()
|
|
context = {
|
|
'title' : 'Create Project Category',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/project/partial/category/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectCategoryEdit(request, slug):
|
|
category = get_object_or_404(projectCategory, slug=slug)
|
|
if request.method == 'POST':
|
|
form = projectCategoryForm(request.POST, request.FILES, instance=category)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Category updated successfully!')
|
|
return redirect('adminProjectCategoryList')
|
|
else:
|
|
form = projectCategoryForm(instance=category)
|
|
context = {
|
|
'title' : 'Edit Project Category',
|
|
'category' : category,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/project/partial/category/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProjectCategoryDelete(request, id):
|
|
category = get_object_or_404(projectCategory, id=id)
|
|
category.delete()
|
|
messages.warning(request, 'Category deleted!')
|
|
return redirect('adminProjectCategoryList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Service #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminServiceList(request):
|
|
services = serviceSection.objects.all()
|
|
context = {
|
|
'title' : 'Services',
|
|
'services' : services,
|
|
}
|
|
return render(request, 'dashboard/main/service/services.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminServiceCreate(request):
|
|
if request.method == 'POST':
|
|
form = serviceForm(request.POST, request.FILES)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Service created successfully!')
|
|
return redirect('adminServiceList')
|
|
else:
|
|
form = serviceForm()
|
|
context = {
|
|
'title' : 'Create Service',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/service/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminServiceEdit(request, slug):
|
|
service = get_object_or_404(serviceSection, slug=slug)
|
|
if request.method == 'POST':
|
|
form = serviceForm(request.POST, request.FILES, instance=service)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Service updated successfully!')
|
|
return redirect('adminServiceList')
|
|
else:
|
|
form = serviceForm(instance=service)
|
|
context = {
|
|
'title' : 'Edit Service',
|
|
'service' : service,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/service/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminServiceDelete(request, id):
|
|
service = get_object_or_404(serviceSection, id=id)
|
|
service.delete()
|
|
messages.warning(request, 'Service deleted!')
|
|
return redirect('adminServiceList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Product #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProductList(request):
|
|
products = productSection.objects.all()
|
|
context = {
|
|
'title' : 'Products',
|
|
'products' : products,
|
|
}
|
|
return render(request, 'dashboard/main/product/products.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProductCreate(request):
|
|
if request.method == 'POST':
|
|
form = productForm(request.POST, request.FILES)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Product created successfully!')
|
|
return redirect('adminProductList')
|
|
else:
|
|
form = productForm()
|
|
context = {
|
|
'title' : 'Create Product',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/product/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProductEdit(request, slug):
|
|
product = get_object_or_404(productSection, slug=slug)
|
|
if request.method == 'POST':
|
|
form = productForm(request.POST, request.FILES, instance=product)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Product updated successfully!')
|
|
return redirect('adminProductList')
|
|
else:
|
|
form = productForm(instance=product)
|
|
context = {
|
|
'title' : 'Edit Product',
|
|
'product' : product,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/product/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminProductDelete(request, id):
|
|
product = get_object_or_404(productSection, id=id)
|
|
product.delete()
|
|
messages.warning(request, 'Product deleted!')
|
|
return redirect('adminProductList')
|
|
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Slider Element #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminSliderElementList(request):
|
|
sliders = sliderSection.objects.all()
|
|
context = {
|
|
'title' : 'Sliders',
|
|
'sliders' : sliders,
|
|
}
|
|
return render(request, 'dashboard/main/elements/slider/sliders.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminSliderElementCreate(request):
|
|
if request.method == 'POST':
|
|
form = sliderForm(request.POST, request.FILES)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Slider created successfully!')
|
|
return redirect('adminSliderElementList')
|
|
else:
|
|
form = sliderForm()
|
|
context = {
|
|
'title' : 'Create Slider',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/elements/slider/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminSliderElementEdit(request, id):
|
|
slider = get_object_or_404(sliderSection, id=id)
|
|
if request.method == 'POST':
|
|
form = sliderForm(request.POST, request.FILES, instance=slider)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Slider updated successfully!')
|
|
return redirect('adminSliderElementList')
|
|
else:
|
|
form = sliderForm(instance=slider)
|
|
|
|
context = {
|
|
'title' : 'Edit Slider',
|
|
'form' : form,
|
|
'slider' : slider,
|
|
}
|
|
return render(request, 'dashboard/main/elements/slider/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminSliderElementDelete(request, id):
|
|
slider = get_object_or_404(sliderSection, id=id)
|
|
slider.delete()
|
|
messages.warning(request, 'Slider deleted!')
|
|
return redirect('adminSliderElementList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Client Element #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminClientElementList(request):
|
|
clients = clientSection.objects.all()
|
|
context = {
|
|
'title' : 'Clients',
|
|
'clients' : clients,
|
|
}
|
|
return render(request, 'dashboard/main/elements/client/clients.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminClientElementCreate(request):
|
|
if request.method == 'POST':
|
|
form = clientSectionForm(request.POST, request.FILES)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Client created successfully!')
|
|
return redirect('adminClientElementList')
|
|
else:
|
|
form = clientSectionForm()
|
|
context = {
|
|
'title' : 'Create Client',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/elements/client/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminClientElementEdit(request, id):
|
|
client = get_object_or_404(clientSection, id=id)
|
|
if request.method == 'POST':
|
|
form = clientSectionForm(request.POST, request.FILES, instance=client)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Client updated successfully!')
|
|
return redirect('adminClientElementList')
|
|
else:
|
|
form = clientSectionForm(instance=client)
|
|
|
|
context = {
|
|
'title' : 'Edit Client',
|
|
'form' : form,
|
|
'client' : client,
|
|
}
|
|
return render(request, 'dashboard/main/elements/client/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def adminClientElementDelete(request, id):
|
|
client = get_object_or_404(clientSection, id=id)
|
|
client.delete()
|
|
messages.warning(request, 'Client deleted!')
|
|
return redirect('adminClientElementList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Contacts #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminContactList(request):
|
|
contacts = Contact.objects.all()
|
|
context = {
|
|
'title' : 'Contacts',
|
|
'contacts' : contacts,
|
|
}
|
|
return render(request, 'dashboard/main/form_data/contacts.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminContactDelete(request, id):
|
|
contact = get_object_or_404(Contact, id=id)
|
|
contact.delete()
|
|
messages.warning(request, 'Contact deleted!')
|
|
return redirect('AdminContactList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Website Settings #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminWebsiteSettings(request):
|
|
setting = websiteSetting.objects.first()
|
|
if request.method == 'POST':
|
|
form = websiteSettingForm(request.POST, request.FILES, instance=setting)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Settings updated successfully!')
|
|
return redirect('AdminWebsiteSettings')
|
|
else:
|
|
form = websiteSettingForm(instance=setting)
|
|
context = {
|
|
'title' : 'Website Settings',
|
|
'setting' : setting,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/setting/website.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminHeaderFooterSettings(request):
|
|
hf = headerFooterSetting.objects.first()
|
|
if request.method == 'POST':
|
|
form = headerFooterSettingForm(request.POST, request.FILES, instance=hf)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Header footer updated successfully!')
|
|
return redirect('AdminHeaderFooterSettings')
|
|
else:
|
|
form = headerFooterSettingForm(instance=hf)
|
|
context = {
|
|
'title' : 'Header Footer Settings',
|
|
'hf' : hf,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/setting/hf.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminSEOSettings(request):
|
|
seo = SeoSetting.objects.first()
|
|
if request.method == 'POST':
|
|
form = SeoSettingForm(request.POST, request.FILES, instance=seo)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'SEO settings updated successfully!')
|
|
return redirect('AdminSEOSettings')
|
|
else:
|
|
form = SeoSettingForm(instance=seo)
|
|
context = {
|
|
'title' : 'SEO Settings',
|
|
'seo' : seo,
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/setting/seo.html', context)
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Primary Menus #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminPrimaryMenuList(request):
|
|
menus = primaryMenu.objects.all()
|
|
context = {
|
|
'title' : 'Menus',
|
|
'menus' : menus,
|
|
}
|
|
return render(request, 'dashboard/main/menu/primary/menus.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminPrimaryMenuCreate(request):
|
|
if request.method == 'POST':
|
|
form = primaryMenuForm(request.POST)
|
|
if form.is_valid():
|
|
order = form.cleaned_data['order']
|
|
if primaryMenu.objects.filter(order=order).exists():
|
|
form.add_error('order', 'A menu with this order already exists. Use a different order.')
|
|
else:
|
|
form.save()
|
|
messages.success(request, 'Menu created successfully!')
|
|
return redirect('AdminPrimaryMenuList')
|
|
else:
|
|
form = primaryMenuForm()
|
|
|
|
context = {
|
|
'title': 'Create Menu',
|
|
'form': form,
|
|
}
|
|
return render(request, 'dashboard/main/menu/primary/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminPrimaryMenuEdit(request, id):
|
|
menu = get_object_or_404(primaryMenu, id=id)
|
|
if request.method == 'POST':
|
|
form = primaryMenuForm(request.POST, instance=menu)
|
|
if form.is_valid():
|
|
order = form.cleaned_data['order']
|
|
if primaryMenu.objects.filter(order=order).exclude(id=id).exists():
|
|
form.add_error('order', 'A menu with this order already exists. Use a different order.')
|
|
else:
|
|
form.save()
|
|
messages.success(request, 'Menu updated successfully!')
|
|
return redirect('AdminPrimaryMenuList')
|
|
else:
|
|
form = primaryMenuForm(instance=menu)
|
|
|
|
context = {
|
|
'title': 'Edit Menu',
|
|
'form': form,
|
|
'menu': menu,
|
|
}
|
|
return render(request, 'dashboard/main/menu/primary/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminPrimaryMenuDelete(request, id):
|
|
menu = get_object_or_404(primaryMenu, id=id)
|
|
menu.delete()
|
|
messages.warning(request, 'Menu deleted!')
|
|
return redirect('AdminPrimaryMenuList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Sub Menus #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminSubMenuList(request):
|
|
submenus = subMenu.objects.all()
|
|
context = {
|
|
'title' : 'Sub Menus',
|
|
'submenus' : submenus,
|
|
}
|
|
return render(request, 'dashboard/main/menu/sub/menus.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminSubMenuCreate(request):
|
|
if request.method == 'POST':
|
|
form = subMenuForm(request.POST)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Submenu created successfully!')
|
|
return redirect('AdminSubMenuList')
|
|
else:
|
|
form = subMenuForm()
|
|
|
|
context = {
|
|
'title': 'Create Submenu',
|
|
'form': form,
|
|
}
|
|
return render(request, 'dashboard/main/menu/sub/create.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminSubMenuEdit(request, id):
|
|
submenu = get_object_or_404(subMenu, id=id)
|
|
if request.method == 'POST':
|
|
form = subMenuForm(request.POST, instance=submenu)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Submenu updated successfully!')
|
|
return redirect('AdminSubMenuList')
|
|
else:
|
|
form = subMenuForm(instance=submenu)
|
|
|
|
context = {
|
|
'title': 'Edit Submenu',
|
|
'form': form,
|
|
'submenu': submenu,
|
|
}
|
|
return render(request, 'dashboard/main/menu/sub/edit.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminSubMenuDelete(request, id):
|
|
submenu = get_object_or_404(subMenu, id=id)
|
|
submenu.delete()
|
|
messages.warning(request, 'Submenu deleted!')
|
|
return redirect('AdminSubMenuList')
|
|
|
|
# # # # # # # # # # # # # # # # # #
|
|
# Admin Page Edit #
|
|
# # # # # # # # # # # # # # # # # #
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminHomePage(request):
|
|
homeabout = aboutSection.objects.first()
|
|
homeSEO = homePageSEO.objects.first()
|
|
|
|
if request.method == 'POST':
|
|
if 'subtitle' in request.POST:
|
|
form = aboutSectionForm(request.POST, request.FILES, instance = homeabout)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Home page updated successfully!')
|
|
return redirect('AdminHomePage')
|
|
elif 'meta_title' in request.POST:
|
|
SeoForm = homePageSEOForm(request.POST, request.FILES, instance = homeSEO)
|
|
if SeoForm.is_valid():
|
|
SeoForm.save()
|
|
messages.success(request, 'Home page seo updated successfully!')
|
|
return redirect('AdminHomePage')
|
|
else:
|
|
return redirect('AdminHomePage')
|
|
else:
|
|
form = aboutSectionForm(instance = homeabout)
|
|
SeoForm = homePageSEOForm(instance = homeSEO)
|
|
|
|
context ={
|
|
'title' : 'Home Page',
|
|
'form' : form,
|
|
'SeoForm' : SeoForm,
|
|
'homeabout' : homeabout,
|
|
}
|
|
return render(request, 'dashboard/main/pages/home.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminAboutPage(request):
|
|
aboutSection = aboutPage.objects.first()
|
|
aboutSEO = aboutPageSEO.objects.first()
|
|
if request.method == 'POST':
|
|
if 'subtitle' in request.POST:
|
|
form = aboutPageForm(request.POST, request.FILES, instance=aboutSection)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'About page updated successfully!')
|
|
return redirect('AdminAboutPage')
|
|
elif 'meta_title' in request.POST:
|
|
SeoForm = aboutPageSEOForm(request.POST, request.FILES, instance = aboutSEO)
|
|
if SeoForm.is_valid():
|
|
SeoForm.save()
|
|
messages.success(request, 'About page seo updated successfully!')
|
|
return redirect('AdminAboutPage')
|
|
else:
|
|
return redirect('AdminAboutPage')
|
|
else:
|
|
form = aboutPageForm(instance=aboutSection)
|
|
SeoForm = aboutPageSEOForm(instance=aboutSEO)
|
|
|
|
context = {
|
|
'title' : 'About Page',
|
|
'form' : form,
|
|
'SeoForm' : SeoForm,
|
|
}
|
|
return render(request, 'dashboard/main/pages/about.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminServicePage(request):
|
|
serviceSEO = servicePageSEO.objects.first()
|
|
if request.method == 'POST':
|
|
SeoForm = servicePageSEOForm(request.POST, instance = serviceSEO)
|
|
if SeoForm.is_valid():
|
|
SeoForm.save()
|
|
messages.success(request, 'Service page seo updated successfully!')
|
|
return redirect('AdminServicePage')
|
|
else:
|
|
SeoForm = servicePageSEOForm(instance = serviceSEO)
|
|
|
|
context = {
|
|
'title' : 'Service Page',
|
|
'SeoForm' : SeoForm,
|
|
}
|
|
return render(request, 'dashboard/main/pages/service.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminProductPage(request):
|
|
productSEO = productPageSEO.objects.first()
|
|
if request.method == 'POST':
|
|
SeoForm = productPageSEOForm(request.POST, instance = productSEO)
|
|
if SeoForm.is_valid():
|
|
SeoForm.save()
|
|
messages.success(request, 'Product page seo updated successfully!')
|
|
return redirect('AdminProductPage')
|
|
else:
|
|
SeoForm = productPageSEOForm(instance = productSEO)
|
|
|
|
context = {
|
|
'title' : 'Product Page',
|
|
'SeoForm' : SeoForm,
|
|
}
|
|
return render(request, 'dashboard/main/pages/product.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminProjectPage(request):
|
|
projectSEO = projectPageSEO.objects.first()
|
|
if request.method == 'POST':
|
|
SeoForm = projectPageSEOForm(request.POST, instance = projectSEO)
|
|
if SeoForm.is_valid():
|
|
SeoForm.save()
|
|
messages.success(request, 'Project page seo updated successfully!')
|
|
return redirect('AdminProjectPage')
|
|
|
|
else:
|
|
SeoForm = projectPageSEOForm(instance = projectSEO)
|
|
|
|
context = {
|
|
'title' : 'Project Page',
|
|
'SeoForm' : SeoForm,
|
|
}
|
|
return render(request, 'dashboard/main/pages/project.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminContactPage(request):
|
|
contactSEO = contactPageSEO.objects.first()
|
|
if request.method == 'POST':
|
|
SeoForm = contactPageSEOForm(request.POST, instance = contactSEO)
|
|
if SeoForm.is_valid():
|
|
SeoForm.save()
|
|
messages.success(request, 'Contact page seo updated successfully!')
|
|
return redirect('AdminContactPage')
|
|
|
|
else:
|
|
SeoForm = contactPageSEOForm(instance = contactSEO)
|
|
|
|
context = {
|
|
'title' : 'Contact Page',
|
|
'SeoForm' : SeoForm,
|
|
}
|
|
return render(request, 'dashboard/main/pages/contact.html', context)
|
|
|
|
@login_required(login_url='logIn')
|
|
@admin_role_required
|
|
def AdminPolicyPage(request):
|
|
policy = Policy.objects.first()
|
|
if request.method == 'POST':
|
|
form = policyForm(request.POST, instance=policy)
|
|
if form.is_valid():
|
|
form.save()
|
|
messages.success(request, 'Privacy policy updated successfully')
|
|
return redirect('AdminPolicyPage')
|
|
else:
|
|
form = policyForm(instance=policy)
|
|
|
|
context = {
|
|
'title' : 'Policy Page',
|
|
'form' : form,
|
|
}
|
|
return render(request, 'dashboard/main/pages/policy.html', context)
|
|
|
|
# Error Page
|
|
def error_404(request, exception):
|
|
return render(request, 'error/404.html', status=404)
|
|
|
|
def error_500(request):
|
|
return render(request, 'error/500.html', status=500)
|