Guest User

Untitled

a guest
Jan 16th, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.52 KB | None | 0 0
  1. import os
  2. BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  3. SECRET_KEY = 'key_hash'
  4. DEBUG = True
  5. ALLOWED_HOSTS = []
  6. INSTALLED_APPS = [
  7. 'django.contrib.admin',
  8. 'django.contrib.auth',
  9. 'django.contrib.contenttypes',
  10. 'django.contrib.sessions',
  11. 'django.contrib.messages',
  12. 'django.contrib.staticfiles',
  13. 'Aamir.apps.AamirConfig',
  14. ]
  15. MIDDLEWARE = [
  16. 'django.middleware.security.SecurityMiddleware',
  17. 'django.contrib.sessions.middleware.SessionMiddleware',
  18. 'django.middleware.common.CommonMiddleware',
  19. 'django.middleware.csrf.CsrfViewMiddleware',
  20. 'django.contrib.auth.middleware.AuthenticationMiddleware',
  21. 'django.contrib.messages.middleware.MessageMiddleware',
  22. 'django.middleware.clickjacking.XFrameOptionsMiddleware',
  23. ]
  24. ROOT_URLCONF = 'first.urls'
  25. TEMPLATES = [
  26. {
  27. 'BACKEND': 'django.template.backends.django.DjangoTemplates',
  28. 'DIRS': [os.path.join(BASE_DIR, 'templates')]
  29. ,
  30. 'APP_DIRS': True,
  31. 'OPTIONS': {
  32. 'context_processors': [
  33. 'django.template.context_processors.debug',
  34. 'django.template.context_processors.request',
  35. 'django.contrib.auth.context_processors.auth',
  36. 'django.contrib.messages.context_processors.messages',
  37. ],
  38. },
  39. },
  40. ]
  41. WSGI_APPLICATION = 'first.wsgi.application'
  42. DATABASES = {
  43. 'default': {
  44. 'NAME': 'dbname',
  45. 'ENGINE': 'django.db.backends.mysql',
  46. 'USER': 'arshad',
  47. 'PASSWORD': 'arshad',
  48. 'HOST': 'localhost',
  49. 'PORT': '3306',
  50. 'OPTIONS': {
  51. 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
  52. 'charset': 'utf8mb4',
  53. }
  54. }
  55. }
  56. AUTH_PASSWORD_VALIDATORS = [
  57. {
  58. 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
  59. },
  60. {
  61. 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
  62. },
  63. {
  64. 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
  65. },
  66. {
  67. 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
  68. },
  69. ]
  70. LANGUAGE_CODE = 'en-us'
  71. TIME_ZONE = 'UTC'
  72. USE_I18N = True
  73. USE_L10N = True
  74. USE_TZ = True
  75. STATIC_URL = '/static/'
  76. MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
  77. MEDIA_URL = '/media/'
  78.  
  79. from django.contrib import admin
  80. from django.urls import path,include
  81. import Aamir.views as views
  82.  
  83. urlpatterns = [
  84. path('', include('Aamir.urls')),
  85. path('admin/', admin.site.urls),
  86.  
  87. ]
  88.  
  89. from django.contrib import admin
  90. from django.urls import path
  91. import Aamir.views as views
  92. urlpatterns = [
  93. path('', views.HomePageView.as_view(), name='home'),
  94. path('index/', views.HomePageView.as_view(), name='home'),
  95. path('summerizer/', views.SummerizerView.as_view(), name='summerizer'),
  96. ]
  97.  
  98. from django.shortcuts import render
  99. from django.http import HttpResponse, HttpResponseRedirect
  100. from django.views.generic import TemplateView
  101. from .forms import FileUploadForm
  102. #from django.core.files.storage import FileSystemStorage
  103. class HomePageView(TemplateView):
  104. template_name = 'Aamir/index.html'
  105.  
  106. class SummerizerView(TemplateView):
  107. template_name = 'Aamir/summrizer.html'
  108. def post(self, request, *args, **kwargs):
  109. context = self.get_context_data()
  110. if context["form"].is_valid():
  111. print('yes done')
  112. context["form"].save(commit=True);
  113. # save your model
  114. # redirect
  115. return super(TemplateView, self).render_to_response(context)
  116.  
  117. def get_context_data(self, **kwargs):
  118. context = super(SummerizerView, self).get_context_data(**kwargs)
  119. form = FileUploadForm(self.request.FILES)
  120. context["form"] = form
  121. return context
  122.  
  123. from django.db import models
  124. class FileUpload(models.Model):
  125. upload_file = models.FileField(upload_to='media/%Y/%m/%d/')
  126.  
  127. from django import forms
  128. from .models import FileUpload
  129. class FileUploadForm(forms.ModelForm):
  130. class Meta:
  131. model = FileUpload
  132. fields = ('upload_file',)
  133. widgets = {
  134. 'upload_file': forms.FileInput(attrs={'class': 'form-control', 'accept': 'text/plan', 'id':'fupload',
  135. 'name':'fupload', 'placeholder': 'Brows Files'
  136. }, ),
  137. }
  138. error_messages = {
  139. 'upload_file': {
  140. 'required': "No filed selected!",
  141. },
  142. }
  143.  
  144. def save(self, commit=True):
  145. instance = super(FileUpload, self).save(commit=False)
  146. if commit:
  147. # save
  148. instance.save(update_fields=['name'])
  149. return instance
  150.  
  151. from django.apps import AppConfig
  152. class AamirConfig(AppConfig):
  153. name = 'Aamir'
  154.  
  155. {% extends "Aamir/include/base.html"%}
  156. {% block page_title %}Summerizer{% endblock %}
  157. {% block content %}
  158. <style>
  159. legend {
  160. display: block;
  161. -webkit-padding-start: 2px;
  162. -webkit-padding-end: 2px;
  163. border-width: initial;
  164. width: initial;
  165. font-size: initial;
  166. margin-bottom: 15px;
  167. border-style: none;
  168. border-color: initial;
  169. border-image: initial;
  170. }
  171. fieldset {
  172. display: block;
  173. -webkit-margin-start: 2px;
  174. -webkit-margin-end: 2px;
  175. -webkit-padding-before: 0.35em;
  176. -webkit-padding-start: 0.75em;
  177. -webkit-padding-end: 0.75em;
  178. -webkit-padding-after: 0.625em;
  179. min-width: -webkit-min-content;
  180. border-width: 1px;
  181. border-style: solid;
  182. border-color: lightgrey;
  183. border-image: initial;
  184. }
  185. </style>
  186. {% load staticfiles%}
  187. <div class="section-container" style="padding-top: 20px;">
  188. <div class="container">
  189. <div class="row">
  190. <div class="col-xs-12 col-md-8 col-md-offset-2">
  191. <h1 class="text-center">Summerizer</h1>
  192. </div>
  193. <br>
  194. <br>
  195. </div>
  196. <div class="row">
  197. <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
  198. <fieldset>
  199. <legend style="color:lightgrey;font-weight:bold;">Upload File</legend>
  200. <div class="hidden-sm hidden-xs">
  201. {% if form.non_field_errors %}
  202. <div class="alert alert-danger" role="alert">{{ form.non_field_errors }}</div>
  203. {% endif %}
  204. <form action="" method="post" enctype="multipart/form-data" class="form-horizontal">
  205. {% csrf_token %}
  206. <div class="form-group">
  207. <!--label class="control-label col-sm-2" for="email">Upload File:</label-->
  208. <div class="col-sm-10">
  209. <!--input type="file" accept="text/plain" class="form-control" id="fupload" placeholder="Brows for file" name="fupload"-->
  210. {{ form.upload_file }}
  211. {% for field in form %}
  212. <span style="color:#b92c28">{{ field.errors }}</span>
  213. {% endfor %}
  214. </div>
  215. <div class="col-lg-2 col-md-2 col-sm-12 col-xs-12">
  216. <button type="submit" class="btn btn-primary btn-block" id="btnupload" name="submit">
  217. Upload
  218. </button>
  219. </div>
  220. </div>
  221. </form>
  222. </div>
  223. <div class="hidden-lg hidden-md">
  224. <form action="" method="post" enctype="multipart/form-data">
  225. <div class="form-group">
  226. <label class="control-label col-sm-2" for="email">Upload File:</label>
  227. {{ form }}
  228. </div>
  229. </form>
  230. </div>
  231. </fieldset>
  232. </div>
  233. </div>
  234. <div class="row">
  235. <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
  236. <br>
  237. <fieldset>
  238. <legend style="color:lightgrey;font-weight:bold;">Summery</legend>
  239. <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12" style="padding-left: 0px">
  240. <div class="panel panel-default" style="border: 1px solid lightgrey">
  241. <div class="panel-heading" style="background: lightgrey;border:1px solid lightgrey">
  242. <p class="text-center" style="font-weight: bold;margin:0.5em;">Summery</p>
  243. </div>
  244. <div class="panel-body" style="padding:10px">
  245. <div class="text-area-result" style="max-height:400px;min-height: 400px;overflow-y: scroll;padding: 0;width: 100%">
  246. <p id="result-text">
  247.  
  248. </p>
  249. </div>
  250. </div>
  251. </div>
  252. </div>
  253. <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12" style="padding-right: 0px">
  254. <br class="hidden-lg hidden-md">
  255. <div class="panel panel-default" style="border: 1px solid lightgrey">
  256. <div class="panel-heading" style="background: lightgrey;border:1px solid lightgrey">
  257. <p class="text-center" style="font-weight: bold;margin:0.5em;">File Content</p>
  258. </div>
  259. <div class="panel-body" style="padding:10px">
  260. <div class="text-area-result" style="max-height:400px;min-height: 400px;overflow-y: scroll;margin: 0;padding: 0;width: 100%">
  261.  
  262. </div>
  263. </div>
  264. </div>
  265. </div>
  266. </fieldset>
  267. </div>
  268. </div>
  269. </div>
  270. </div>
  271. <div class="section-container">
  272. <div class="container text-center">
  273. <div class="row section-container-spacer">
  274. <div class="col-xs-12 col-md-12">
  275.  
  276. <h3>Do you like it ?</h3>
  277. <p>
  278. <a href="https://facebook.com/" class="social-round-icon fa-icon" title="">
  279. <i class="fa fa-facebook" aria-hidden="true"></i>
  280. </a>
  281. <a href="https://twitter.com/" class="social-round-icon fa-icon" title="">
  282. <i class="fa fa-twitter" aria-hidden="true"></i>
  283. </a>
  284. <a href="https://www.linkedin.com/" class="social-round-icon fa-icon" title="">
  285. <i class="fa fa-linkedin" aria-hidden="true"></i>
  286. </a>
  287. </p>
  288. </div>
  289. </div>
  290.  
  291. </div>
  292. </div>
  293. {% endblock %}
Add Comment
Please, Sign In to add comment