33 < div class ="col-md-12 ">
44 < div class ="display-4 "> Add Problem</ div >
55 < form [formGroup] ="form " (submit) ="onAddProblemSubmit() ">
6- < div class ="form-group ">
6+ < div class ="form-group ">
77 < label for ="name "> Problem Name</ label >
8- < input type ="text "
9- name ="name "
10- formControlName ="name "
11- class ="form-control "
12- placeholder ="Enter Name "
8+ < input type ="text "
9+ name ="name "
10+ formControlName ="name "
11+ class ="form-control "
12+ placeholder ="Enter Name "
1313 autocomplete ="off "
1414 [ngClass] ="{'is-invalid': (form.controls.name.errors && form.controls.name.dirty) , 'is-valid': !form.controls.name.errors} ">
1515 </ div >
16-
16+
1717 < div class ="form-group ">
1818 < label for ="id "> Problem Code</ label >
1919 < input type ="text "
20- name ="code "
21- formControlName ="code "
22- class ="form-control "
23- placeholder ="Enter contest ID "
20+ name ="code "
21+ formControlName ="code "
22+ class ="form-control "
23+ placeholder ="Enter contest ID "
2424 autocomplete ="off "
2525 [ngClass] ="{'is-invalid': (form.controls.code.errors && form.controls.code.dirty) , 'is-valid': !form.controls.code.errors} ">
2626 </ div >
2727 < div class ="row ">
2828 < div class ="col-md-6 ">
2929 < div class ="form-group ">
3030 < label for ="level "> Problem Level</ label >
31- < input type ="text "
32- name ="level "
33- formControlName ="level "
34- class ="form-control "
35- placeholder ="Problem Level "
31+ < input type ="text "
32+ name ="level "
33+ formControlName ="level "
34+ class ="form-control "
35+ placeholder ="Problem Level "
3636 autocomplete ="off "
3737 [ngClass] ="{'is-invalid': (form.controls.level.errors && form.controls.level.dirty) , 'is-valid': !form.controls.level.errors} ">
3838 </ div >
4141 < div class ="form-group ">
4242 < label for ="Author "> Author</ label >
4343 < input type ="text "
44- name ="author "
45- formControlName ="author "
46- class ="form-control "
47- placeholder ="Author Name "
44+ name ="author "
45+ formControlName ="author "
46+ class ="form-control "
47+ placeholder ="Author Name "
4848 autocomplete ="off "
4949 [ngClass] ="{'is-invalid': (form.controls.author.errors && form.controls.author.dirty) , 'is-valid': !form.controls.author.errors} ">
5050 </ div >
5454 < div class ="col-md-6 ">
5555 < div class ="form-group ">
5656 < label for ="Input Format "> Input Format</ label >
57- < textarea
58- name ="input_format "
59- formControlName ="input_format "
60- class ="form-control "
61- placeholder ="Input Format "
57+ < textarea
58+ name ="input_format "
59+ formControlName ="input_format "
60+ class ="form-control "
61+ placeholder ="Input Format "
6262 autocomplete ="off "
6363 [ngClass] ="{'is-invalid': (form.controls.input_format.errors && form.controls.input_format.dirty) , 'is-valid': !form.controls.input_format.errors} ">
6464 </ textarea >
6868 < div class ="form-group ">
6969 < label for ="output_format "> Output format</ label >
7070 < textarea
71- name ="output_format "
72- formControlName ="output_format "
73- class ="form-control "
74- placeholder ="output_format "
71+ name ="output_format "
72+ formControlName ="output_format "
73+ class ="form-control "
74+ placeholder ="output_format "
7575 autocomplete ="off "
7676 [ngClass] ="{'is-invalid': (form.controls.output_format.errors && form.controls.output_format.dirty) , 'is-valid': !form.controls.output_format.errors} ">
7777 </ textarea >
8080 </ div >
8181 < div class ="form-group ">
8282 < label for ="Description "> Description</ label >
83- < textarea
84- name ="description "
85- formControlName ="description "
86- class ="form-control " placeholder ="Enter Description " autocomplete ="off " rows ="10 ">
83+ < textarea
84+ name ="description "
85+ formControlName ="description "
86+ class ="form-control " placeholder ="Enter Description " autocomplete ="off " rows ="10 ">
8787 </ textarea >
8888 </ div >
8989 < div class ="form-group ">
9090 < label for ="Constraint "> Constraint</ label >
91- < textarea
92- name ="constraints "
93- formControlName ="constraints "
94- class ="form-control " placeholder ="Enter Constraints " autocomplete ="off " rows ="10 ">
91+ < textarea
92+ name ="constraints "
93+ formControlName ="constraints "
94+ class ="form-control " placeholder ="Enter Constraints " autocomplete ="off " rows ="10 ">
9595 </ textarea >
9696 </ div >
9797 < div class ="row ">
9898 < div class ="col-md-6 ">
99- < div class ="form-group ">
99+ < div class ="form-group ">
100100 < label for ="timelimit "> Time Limit</ label >
101- < input type ="text "
102- name ="timelimit "
103- formControlName ="timelimit "
104- class ="form-control "
105- placeholder ="Enter Time Limit "
101+ < input type ="text "
102+ name ="timelimit "
103+ formControlName ="timelimit "
104+ class ="form-control "
105+ placeholder ="Enter Time Limit "
106106 autocomplete ="off "
107107 [ngClass] ="{'is-invalid': (form.controls.timelimit.errors && form.controls.timelimit.dirty) , 'is-valid': !form.controls.timelimit.errors} ">
108108 </ div >
109109 </ div >
110110 < div class ="col-md-6 ">
111- < div class ="form-group ">
111+ < div class ="form-group ">
112112 < label for ="sourcelimit "> Source Limit</ label >
113- < input type ="text "
114- name ="sourcelimit "
115- formControlName ="sourcelimit "
116- class ="form-control "
117- placeholder ="Enter Source Limit "
113+ < input type ="text "
114+ name ="sourcelimit "
115+ formControlName ="sourcelimit "
116+ class ="form-control "
117+ placeholder ="Enter Source Limit "
118118 autocomplete ="off "
119119 [ngClass] ="{'is-invalid': (form.controls.sourcelimit.errors && form.controls.sourcelimit.dirty) , 'is-valid': !form.controls.sourcelimit.errors} ">
120120 </ div >
124124 < div class ="col-md-6 ">
125125 < div class ="form-group ">
126126 < label for ="Input TestCase "> Input Testcase</ label >
127- < textarea
128- name ="input_example "
129- formControlName ="input_example "
130- class ="form-control "
131- placeholder ="Input TestCase "
127+ < textarea
128+ name ="input_example "
129+ formControlName ="input_example "
130+ class ="form-control "
131+ placeholder ="Input TestCase "
132132 autocomplete ="off "
133133 [ngClass] ="{'is-invalid': (form.controls.input_example.errors && form.controls.input_example.dirty) , 'is-valid': !form.controls.input_example.errors} ">
134134 </ textarea >
138138 < div class ="form-group ">
139139 < label for ="output_example "> Output Testcase</ label >
140140 < textarea
141- name ="output_example "
142- formControlName ="output_example "
143- class ="form-control "
144- placeholder ="Output Test case "
141+ name ="output_example "
142+ formControlName ="output_example "
143+ class ="form-control "
144+ placeholder ="Output Test case "
145145 autocomplete ="off "
146146 [ngClass] ="{'is-invalid': (form.controls.output_example.errors && form.controls.output_example.dirty) , 'is-valid': !form.controls.output_example.errors} ">
147147 </ textarea >
151151 < div class ="col-md-6 ">
152152 < div class ="form-group ">
153153 < label for ="Input File "> Input File</ label >
154- < textarea
155- name ="Input "
156- formControlName ="Input "
157- class ="form-control "
158- placeholder ="Input TestCase "
159- autocomplete ="off "
160- [ngClass] ="{'is-invalid': (form.controls.Input.errors && form.controls.Input.dirty) , 'is-valid': !form.controls.Input.errors} ">
161- </ textarea >
154+ < input type ="file " class ="form-control-file " placeholder ="Upload file " (change) ="onFileChange1($event) ">
162155 </ div >
163156 </ div >
164157 < div class ="col-md-6 ">
165158 < div class ="form-group ">
166159 < label for ="output File "> Output File</ label >
167- < textarea
168- name ="Output "
169- formControlName ="Output "
170- class ="form-control "
171- placeholder ="Output Test case "
172- autocomplete ="off "
173- [ngClass] ="{'is-invalid': (form.controls.Output.errors && form.controls.Output.dirty) , 'is-valid': !form.controls.Output.errors} ">
174- </ textarea >
160+ < input type ="file " class ="form-control-file " placeholder ="Upload file " (change) ="onFileChange2($event) ">
175161 </ div >
176162 </ div >
177163 </ div >
164+ < div class ="form-group ">
165+ < label for ="Explanation Example "> Image Upload</ label >
166+ < input type ="file " class ="form-control-file " placeholder ="Upload file " (change) ="onFileChange3($event) ">
167+ </ div >
178168 < div class ="form-group ">
179169 < label for ="Explanation Example "> Explanation Example</ label >
180- < textarea
181- name ="explanation_example "
182- formControlName ="explanation_example "
183- class ="form-control " placehzolder ="Explanation Example " autocomplete ="off " rows ="10 ">
170+ < textarea
171+ name ="explanation_example "
172+ formControlName ="explanation_example "
173+ class ="form-control " placehzolder ="Explanation Example " autocomplete ="off " rows ="10 ">
184174 </ textarea >
185175 </ div >
186176
187- < input
188-
177+ < input
178+
189179 type ="submit " class ="btn btn-primary " value ="Add Problem ">
190180 </ form >
191181 </ div >
192182 </ div >
193- </ div >
183+ </ div >
0 commit comments