11from django .shortcuts import render , redirect , get_object_or_404 as goo404
22from .models import CodeShare
3- from django .contrib import messages
43import random
54from django .utils .crypto import get_random_string
65
76
8-
9-
107def home (request ):
118 """
129 Homepage and creation of code snippet
@@ -21,6 +18,7 @@ def home(request):
2118
2219 :param code_snippet: code content from the text box
2320 :param file_name: if file name is specified, it is not None
21+ :param language: type of programming language
2422
2523 :return redirect to view_by_hash method with unique ID has param
2624
@@ -31,20 +29,16 @@ def home(request):
3129
3230 if request .method == 'POST' :
3331 code_share = request .POST .get ('code_snippet' )
34- file_name = request .POST .get ('file_name' )
32+ file_name = request .POST .get ('file_name' )
33+ language = request .POST .get ('language' )
34+
3535 chars = 'abcdefghijklmnopqrstuvwxyz0123456789'
3636 hash_value = get_random_string (8 , chars )
3737
38- file_exist = CodeShare .objects .filter (file_name = file_name ).exists ()
39-
40- if file_exist is True and file_name != '' :
41- messages .error (
42- request , 'An error occured' )
43- return render (request , 'app_code_share/homepage.html' , {})
44-
4538 CodeShare .objects .create (code = code_share ,
4639 hash_value = hash_value ,
47- file_name = file_name )
40+ file_name = file_name ,
41+ language = language )
4842 return redirect ('code_share:view_by_hash' , hash_id = hash_value )
4943
5044
@@ -63,6 +57,7 @@ def view_by_hash(request, hash_id):
6357 handles updation in the content
6458
6559 :param code_snippet: updated code snippet
60+ :param language: type of programming language
6661
6762 :returns redirects to this view again to render the new results
6863
@@ -74,8 +69,10 @@ def view_by_hash(request, hash_id):
7469
7570 if request .method == 'POST' :
7671 code_share = request .POST .get ('code_snippet' )
72+ language = request .POST .get ('language' )
7773 code_obj = goo404 (CodeShare , hash_value = hash_id )
7874 code_obj .code = code_share
75+ code_obj .language = language
7976 code_obj .save ()
8077
8178 return redirect ('code_share:view_by_hash' , hash_id = hash_id )
0 commit comments