Changes between Version 3 and Version 4 of GSOCWebSetupImplementation


Ignore:
Timestamp:
04/05/11 17:02:12 (14 years ago)
Author:
anubhav
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GSOCWebSetupImplementation

    v3 v4  
    22== WEB SETUP IMPLEMENTATION (Detail)==
    33
    4 {{{
    5 #!html
     4=== '''MODULES''''''' ===
     5   
     6*        '''Layout.py'''
    67
    7 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b>  </b><b><span
    8 style='font-size:15.0pt;line-height:115%'>MODULES</span>      </b></p>
     8    *    '''Def setting()''':
    99
    10 <p class=MsoListParagraphCxSpFirst style='margin-top:0cm;margin-right:0cm;
    11 margin-bottom:0cm;margin-left:36.15pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    12 style='font-size:13.0pt;line-height:115%;font-family:Symbol;color:#C00000'><img
    13 width=18 height=18 src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Bullet-red.png/120px-Bullet-red.png" alt="*"><span
    14 style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span><span
    15 style='font-size:13.0pt;line-height:115%;color:#C00000'> <b>Layout.py</b></span></p>
    16 
    17 <p class=MsoListParagraphCxSpMiddle style='margin:0cm;margin-bottom:.0001pt'><b><span
    18 style='font-size:13.0pt;line-height:115%;color:#C00000'>&nbsp;</span></b></p>
    19 
    20 <p class=MsoListParagraphCxSpLast style='margin-top:0cm;margin-right:0cm;
    21 margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    22 style='font-family:Wingdings'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    23 </span></span><b>Def setting() :</b></p>
    24 
    25 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    26 
    27 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>These will
    28 be imported into the models so will run before the models and for the first
    29 time only</p>
    30 
    31 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>The settings
    32 layout needs to be stored in here.</p>
    33 
    34 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>The settings
    35 is a dict with keys as the: </p>
    36 
    37 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    38 style='font-size:13.0pt;line-height:115%'>             </span>“categary”.”field_id”</p>
    39 
    40 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>                   
    41 </p>
    42 
    43 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    44 style='color:gray'>Like:- </span></p>
    45 
    46 }}}
     10These will be imported into the models so will run before the models and for the first time only
     11The settings layout needs to be stored in here.
     12The settings is a dict with keys as the:
     13             “categary”.”field_id”
     14                   
     15Like:-
    4716{{{
    4817#!python
     
    5726       
    5827}}}
    59 {{{
    60 #!html
    61 <p class=MsoListParagraph style='margin:0cm;margin-bottom:.0001pt'><span
    62 style='color:#595959'>                                                                                                                                         </span></p>
     28These are really useful for views as this provide the information regarding input type, the value to select from, the field name and the validation requirement. These layouts are mostly for the views. Some of these like port will also contain a validation field for the range of accepted values.
    6329
    64 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    65 style='color:black'>These are really useful for views as this provide the
    66 information regarding input type, the value to select from, the field name and
    67 the validation requirement. These layouts are mostly for the views. Some of
    68 these like port will also contain a validation field for the range of accepted
    69 values.</span></p>
     30     We will have to set the settings in accordance with modules/s3/s3cfg.py.
    7031
    71 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    72 style='color:black'>&nbsp;</span></p>
     32    *   '''Def modules() :'''
    7333
    74 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    75 style='color:black'>     We will have to set the settings in accordance with
    76 modules/s3/s3cfg.py.</span></p>
     34These needs to store the names of the modules:-
    7735
    78 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    79 style='color:black'>&nbsp;</span></p>
    80 
    81 <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;margin-bottom:
    82 0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    83 style='font-family:Wingdings;color:black'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    84 </span></span><b><span style='color:black'>Def modules() :</span></b></p>
    85 
    86 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    87 style='color:black'>&nbsp;</span></b></p>
    88 
    89 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    90 style='color:black'>These needs to store the names of the modules:-</span></p>
    91 
    92 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    93 style='color:#595959'>&nbsp;</span></p>
    94 }}}
    9536{{{
    9637#!python
     
    10243#true meaning "on"
    10344}}}
    104 {{{
    105 #!html
    106 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    107 style='color:black'>Here the “on” indicate that the default value of the module
    108 status is on.</span></p>
    10945
    110 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    111 style='color:black'>&nbsp;</span></p>
     46Here the “on” indicate that the default value of the module status is on.
    11247
    113 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    114 style='color:black'>In the modules the layout is not required, as they are
    115 stored when we run the modified form of 000_config in the models. The input types
    116 of these (name, Description, Access level) are quite fixed so they need not to
    117 be stored separately. Therefore not much help is required for the views to.</span></p>
    118 
    119 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    120 style='color:black'>&nbsp;</span></p>
    121 
    122 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    123 style='color:black'>&nbsp;</span></p>
    124 
    125 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    126 style='color:black'>&nbsp;</span></p>
    127 
    128 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    129 style='font-size:15.0pt;line-height:115%;color:black'>&nbsp;</span></p>
    130 
    131 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    132 style='font-size:15.0pt;line-height:115%;color:black'>&nbsp;</span></b></p>
    133 
    134 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    135 style='font-size:15.0pt;line-height:115%;color:black'>&nbsp;</span></b></p>
    136 
    137 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    138 style='font-size:15.0pt;line-height:115%;color:black'>MODELS</span></b></p>
    139 
    140 <p class=MsoListParagraphCxSpFirst style='text-indent:-18.0pt'><span
    141 style='font-size:15.0pt;line-height:115%;font-family:Symbol;color:#C00000'><img
    142 width=18 height=18 src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Bullet-red.png/120px-Bullet-red.png" alt="*"><span
    143 style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><b><span
    144 style='font-size:13.0pt;line-height:115%;color:#C00000'>1st_run.py                                            
    145 This will run before the modified version of 000_config</span></b></p>
    146 
    147 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><b><span
    148 style='font-size:13.0pt;line-height:115%;color:#C00000'>&nbsp;</span></b></p>
    149 
    150 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><b><span
    151 style='font-size:13.0pt;line-height:115%;color:#C00000'>&nbsp;</span></b></p>
    152 
    153 <p class=MsoListParagraphCxSpMiddle style='margin-left:18.0pt;text-indent:-18.0pt'><span
    154 style='font-family:Wingdings;color:#0D0D0D'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    155 </span></span><b>Session variable : session.path_to_config</b></p>
    156 
    157 <p class=MsoListParagraphCxSpLast style='margin-left:0cm'>This will initialize
    158 a session variable that will help us get the status of the selector. If the
    159 session variable is “none” we can initialize it to “”,    and later in the
    160 controller it can be set to the path of 000_config of that particular eden they
    161 want the to the web-setup to run on.</p>
    162 
    163 <p class=MsoNormal>This session variable will help us to get the path of the
    164 000_config from the controllers.</p>
    165 
    166 <p class=MsoListParagraphCxSpFirst style='margin-left:18.0pt;text-indent:-18.0pt'><span
    167 style='font-family:Wingdings;color:#0D0D0D'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    168 </span></span><b>Parsing 000_config.py</b></p>
    169 
    170 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'>Once we get the
    171 path of 000_config we need to copy that file in the websetup models by the the
    172 name of modified_config.py so that it shall run after this file closes. Now
    173 open modified_config using <b>os.path.join</b> in the “<b>w</b>” mode and
    174 000_config in the “<b>r</b>” mode. We need to read 000_config and</p>
    175 
    176 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'>---------------------------------------------------------------------------------------------------------------------------------------------------------</p>
    177 <p style='color:#595959'>1.Remove the line containing <b>“s3base.s3config(” </b>from
    178 the starting of the file</p>
    179 
    180 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><span
    181 style='color:#595959'>&nbsp;</span></p>
    182 
    183 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><span
    184 style='color:#595959'>2. Insert </span></p>
    185 
    186 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><b><span
    187 style='color:#595959'>“ from gluon.storage import Storage</span></b></p>
    188 
    189 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><b><span
    190 style='color:#595959'>from gluon.contrib.simplejson.ordered_dict import
    191 OrderedDict</span></b></p>
    192 
    193 <p class=MsoListParagraphCxSpMiddle style='margin-left:0cm'><b><span
    194 style='color:#595959'>deployment_settings = Storage( “</span></b><span
    195 style='color:#595959'>   </span></p>
    196 
    197 <p class=MsoListParagraphCxSpLast style='margin-left:0cm'><span
    198 style='color:#595959'>before the first line where they find  “deployment_settings.”
    199 Without a “<b>#</b>”  in the 000_config.py           </span></p>
    200 
    201 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    202 style='color:#595959'>3. And add <b>“ ) ”</b> Immediately before the import of
    203 storage and remove the import of storage from there </span></p>
    204 
    205 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    206 style='color:#595959'>&nbsp;</span></p>
    207 
    208 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    209 style='color:#595959'>4. Add 4 spaces to each line between “<b>Storage(</b>“
    210 and “<b>)</b>” even the commented ones </span></p>
    211 
    212 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    213 style='color:#595959'>&nbsp;</span></p>
    214 
    215 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    216 style='color:#595959'>5<b>.</b> Make the following to the lines except the ones
    217 containing “#” before the use of “<b>deployment_settings.</b>”  </span></p>
    218 
    219 <p class=MsoListParagraphCxSpFirst style='margin-bottom:0cm;margin-bottom:.0001pt;
    220 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#595959'>v<span
    221 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span
    222 style='color:#595959'>Wrap each word containing “<b>deployment_settings.</b>”
    223 with “” </span></p>
    224 
    225 <p class=MsoListParagraphCxSpLast style='margin-bottom:0cm;margin-bottom:.0001pt;
    226 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#595959'>v<span
    227 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span
    228 style='color:#595959'>Add a  <b>“,”(coma)</b> after the line </span></p>
    229 
    230 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    231 style='color:#595959'> </span></p>
    232 
    233 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    234 style='color:#595959'>6. Check if the    </span></p>
    235 
    236 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    237 style='color:#595959'>“&lt;?module_name?&gt; = Storage( \n” </span></b><span
    238 style='color:#595959'>has a “#” in the same line then turn </span></p>
    239 
    240 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    241 style='color:#595959'>module[module_name] ( variable in layout.py in modules
    242 )   off .</span></p>
    243 
    244 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    245 style='color:#595959'> </span></p>
    246 
    247 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    248 style='color:#595959'>7<b>.</b>Remove “#” from there till the line you get <b>“#),”
    249 </b></span></p>
    250 
    251 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>----------------------------------------------------------------------------------------------------------------------------------------------------------</p>
    252 
    253 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>This would
    254 result in the creation of 2 dicts one is deployment_settings and the other one
    255 is for the modules  deployment_settings.modules .Now 6<sup>th</sup> and 7<sup>th</sup>
    256 steps will help us to maintain the dicts for modules that were turned off by
    257 commenting them.</p>
    258 
    259 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    260 
    261 <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;margin-bottom:
    262 0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    263 style='font-family:Wingdings;color:#0D0D0D'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    264 </span></span><b>Handling database conflicts</b></p>
    265 
    266 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    267 style='color:black'>There should be a list that will keep a list of
    268 databse_name and database_types of 2 eden application cannot be same at same
    269 time therefore a list of database types and databse names  needs to be made</span></p>
    270 
    271 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    272 style='color:black'>&nbsp;</span></p>
    273 
    274 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    275 text-indent:-18.0pt'><span style='font-family:Wingdings'>v<span
    276 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>For this we will
    277 first have to generate a list paths .We can search for “<b>Copyright: 2010 (c)
    278 Sahana Software Foundation</b>” in all the LICENSE files of applications.</p>
    279 
    280 <p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
    281 margin-left:18.0pt;margin-bottom:.0001pt'> </p>
    282 
    283 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>Then we will
    284 have to search in the list of paths for specific keywords like <b><span
    285 style='color:gray'>“deployment_setting.database.database”</span></b><span
    286 style='color:gray'> </span>This can be done using regex command in grep</p>
    287 
    288 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    289 style='color:#A6A6A6'>&nbsp;</span></p>
    290 }}}
    291 {{{
    292 
    293 If  path(variable) is in the list of paths containing:
    294      Command_line = “grep ” + “deployment_setting.database.database” + “path”
    295      Line = subprocess.Popen(command_line);
    296 
    297 }}}
    298 {{{
    299 #!html
    300 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    301 
    302 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>Now search
    303 the file for deployment_settings.database.db_type<span style='color:gray'> </span>.These
    304 list will help in validating for the database values. </p>
    305 
    306 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'> </p>
    307 
    308 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    309 
    310 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    311 
    312 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    313 text-indent:-18.0pt'><span style='font-size:15.0pt;line-height:115%;font-family:
    314 Symbol'><img width=18 height=18 src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Bullet-red.png/120px-Bullet-red.png" alt="*"><span
    315 style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><span
    316 style='font-size:13.0pt;line-height:115%;color:#C00000'>MODIFIED_CONFIG.PY                                                      
    317 PARSED VERSION OF  000_CONFIG.PY </span></p>
    318 
    319 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    320 style='color:#0D0D0D'>&nbsp;</span></p>
    321 
    322 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    323 style='color:#0D0D0D'>It will initialize and define the dict for all the
    324 settings and the modules of whose we have mentioned before.</span><span
    325 style='font-size:13.0pt;line-height:115%;color:#C00000'>  </span></p>
    326 
    327 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    328 style='color:#0D0D0D'>&nbsp;</span></p>
     48In the modules the layout is not required, as they are stored when we run the modified form of 000_config in the models. The input types of these (name, Description, Access level) are quite fixed so they need not to be stored separately. Therefore not much help is required for the views to.
    32949
    33050
    331 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    332 style='color:#0D0D0D'>&nbsp;</span></p>
    33351
    334 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    335 style='color:#0D0D0D'>&nbsp;</span></p>
    336 
    337 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    338 style='color:#0D0D0D'>&nbsp;</span></p>
    339 
    340 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    341 style='color:#0D0D0D'>&nbsp;</span></p>
    342 
    343 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    344 style='color:#0D0D0D'>&nbsp;</span></p>
    345 
    346 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    347 style='color:#0D0D0D'>&nbsp;</span></p>
    348 
    349 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    350 style='font-size:15.0pt;line-height:115%;color:#0D0D0D'>CONTROLLERS</span></b></p>
    351 
    352 <p class=MsoListParagraphCxSpFirst style='margin-top:0cm;margin-right:0cm;
    353 margin-bottom:0cm;margin-left:42.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    354 style='font-size:13.0pt;line-height:115%;font-family:Symbol;color:#C00000'><img
    355 width=22 height=22 src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Bullet-red.png/120px-Bullet-red.png" alt="*"><span
    356 style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span><span
    357 style='font-size:15.0pt;line-height:115%;color:#C00000'>DEFAULT.PY </span></p>
    358 
    359 <p class=MsoListParagraphCxSpMiddle style='margin-top:0cm;margin-right:0cm;
    360 margin-bottom:0cm;margin-left:42.0pt;margin-bottom:.0001pt'><span
    361 style='font-size:15.0pt;line-height:115%;color:#C00000'>      </span></p>
    362 
    363 <p class=MsoListParagraphCxSpLast style='margin-top:0cm;margin-right:0cm;
    364 margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    365 style='font-family:Wingdings;color:#0D0D0D'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    366 </span></span><b><span style='color:#0D0D0D'>Def selector():</span></b></p>
    367 
    368 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>If the
    369 session variable of the path is not set then I redirect the user from the index
    370 function to this function of the controller. </p>
    371 
    372 <p class=MsoListParagraphCxSpFirst style='margin-top:0cm;margin-right:0cm;
    373 margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    374 style='font-family:Wingdings'>v<span style='font:7.0pt "Times New Roman"'>&nbsp;
    375 </span></span>I will access the list of paths generated in the models while
    376 solving the database conflicts</p>
    377 
    378 <p class=MsoListParagraphCxSpLast style='margin-top:0cm;margin-right:0cm;
    379 margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    380 style='font-family:Wingdings'>v<span style='font:7.0pt "Times New Roman"'>&nbsp;
    381 </span></span>And then there is a drop down menu to select the path ( the user
    382 will select the name, I will retrieve the path using the request.post_vars in
    383 the form.accepts and then set the path accordingly).We can create forms using  SELECT()
    384 function for the dropdown and FIELDSET() for creating a filed in the form</p>
    385 
    386 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    387 
    388 <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;margin-bottom:
    389 0cm;margin-left:32.15pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    390 style='font-family:"Courier New"'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;
    391 </span></span>This function will also contain a field for <b>creating a new
    392 eden</b></p>
    393 
    394 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>Selector
    395 will also contain an option for creating new eden . This should be need no
    396 network excess, I will execute statement by “exec” for copying the files from
    397 the existing eden to a new eden with a new name.</p>
    398 
    399 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>I will copy
    400 all the files except a few files like database logs, session and some other
    401 which are developed after you run the first time. After the script has run
    402 successfully </p>
    403 
    404 <p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
    405 margin-left:18.0pt;margin-bottom:.0001pt'>&nbsp;</p>
    406 
    407 
    408 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    409 style='color:#0D0D0D'>&nbsp;</span></p>
    410 
    411 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    412 style='color:#0D0D0D'>&nbsp;</span></p>
    413 
    414 <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;margin-bottom:
    415 0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:-18.0pt'><span
    416 style='font-family:Wingdings;color:#0D0D0D'>Ø<span style='font:7.0pt "Times New Roman"'>&nbsp;
    417 </span></span><b><span style='color:#0D0D0D'>Def index():</span></b></p>
    418 
    419 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    420 style='color:#0D0D0D'>If the session variable is set then this part is
    421 executed. The main purpose of this is to create forms according to the needs.
    422 We will have a submit ,back and next button on the every form .</span></p>
    423 
    424 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    425 style='color:#0D0D0D'>&nbsp;</span></p>
    426 
    427 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    428 style='color:#0D0D0D'>There should be a login form that would verify that admin
    429 is making changes in the settings. For this we will have to contact the
    430 database of the selected Eden.</span></p>
    431 
    432 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    433 style='color:#0D0D0D'>&nbsp;</span></p>
    434 
    435 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    436 style='color:#0D0D0D'>The TABLE() function will be extremely useful for setting
    437 the user interface and SELECT() function for defining dropboxes. INPUT() will
    438 help us define check boxes and other input types. All the fields stored in
    439 modules for every setting will be sent to the user using INPUT() (jquery
    440 validation requirement, input type and default value ) and FIELDSET(for field
    441 id  and the keys of the,  setting variable are extremely important here) </span></p>
    442 
    443 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    444 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#0D0D0D'>v<span
    445 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span
    446 style='color:#0D0D0D'>Module Forms:</span></p>
    447 
    448 <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0
    449  style='border-collapse:collapse;border:none'>
    450  <tr>
    451   <td width=297 valign=top style='width:178.0pt;border:solid windowtext 1.0pt;
    452   padding:0cm 5.4pt 0cm 5.4pt'>
    453   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    454   normal'><span style='color:#0D0D0D'>Module name</span></p>
    455   </td>
    456   <td width=297 valign=top style='width:178.05pt;border:solid windowtext 1.0pt;
    457   border-left:none;padding:0cm 5.4pt 0cm 5.4pt'>
    458   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    459   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    460   <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0
    461    style='border-collapse:collapse;border:none'>
    462    <tr>
    463     <td width=278 valign=top style='width:166.5pt;border:solid windowtext 1.0pt;
    464     padding:0cm 5.4pt 0cm 5.4pt'>
    465     <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;
    466     line-height:normal'><span style='color:#0D0D0D'>Checkboxes for access level
    467     </span></p>
    468     </td>
    469    </tr>
    470    <tr>
    471     <td width=278 valign=top style='width:166.5pt;border:solid windowtext 1.0pt;
    472     border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    473     <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;
    474     margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:
    475     -18.0pt;line-height:normal'><span style='font-family:"Courier New";
    476     color:#0D0D0D'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><span
    477     style='color:#0D0D0D'>Admin</span></p>
    478     </td>
    479    </tr>
    480    <tr>
    481     <td width=278 valign=top style='width:166.5pt;border:solid windowtext 1.0pt;
    482     border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    483     <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;
    484     margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:
    485     -18.0pt;line-height:normal'><span style='font-family:"Courier New";
    486     color:#0D0D0D'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><span
    487     style='color:#0D0D0D'>Anonymous </span></p>
    488     </td>
    489    </tr>
    490    <tr>
    491     <td width=278 valign=top style='width:166.5pt;border:solid windowtext 1.0pt;
    492     border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    493     <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;
    494     margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:
    495     -18.0pt;line-height:normal'><span style='font-family:"Courier New";
    496     color:#0D0D0D'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><span
    497     style='color:#0D0D0D'>Only Division users</span></p>
    498     </td>
    499    </tr>
    500    <tr>
    501     <td width=278 valign=top style='width:166.5pt;border:solid windowtext 1.0pt;
    502     border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    503     <p class=MsoListParagraph style='margin-top:0cm;margin-right:0cm;
    504     margin-bottom:0cm;margin-left:18.0pt;margin-bottom:.0001pt;text-indent:
    505     -18.0pt;line-height:normal'><span style='font-family:"Courier New";
    506     color:#0D0D0D'>o<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp; </span></span><span
    507     style='color:#0D0D0D'>None </span></p>
    508     </td>
    509    </tr>
    510   </table>
    511   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    512   normal'><span style='color:#0D0D0D'> </span></p>
    513   </td>
    514   <td width=297 valign=top style='width:178.05pt;border:solid windowtext 1.0pt;
    515   border-left:none;padding:0cm 5.4pt 0cm 5.4pt'>
    516   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    517   normal'><span style='color:#0D0D0D'>                        ?help</span></p>
    518   </td>
    519  </tr>
    520  <tr>
    521   <td width=297 valign=top style='width:178.0pt;border:solid windowtext 1.0pt;
    522   border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    523   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    524   normal'><span style='color:#0D0D0D'>Module nice name</span></p>
    525   </td>
    526   <td width=297 valign=top style='width:178.05pt;border-top:none;border-left:
    527   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    528   padding:0cm 5.4pt 0cm 5.4pt'>
    529   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    530   normal'><span style='color:#0D0D0D'>Textbox </span></p>
    531   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    532   normal'><span style='color:#0D0D0D'>(with correct width)</span></p>
    533   </td>
    534   <td width=297 valign=top style='width:178.05pt;border-top:none;border-left:
    535   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    536   padding:0cm 5.4pt 0cm 5.4pt'>
    537   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    538   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    539   </td>
    540  </tr>
    541  <tr>
    542   <td width=297 valign=top style='width:178.0pt;border:solid windowtext 1.0pt;
    543   border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    544   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    545   normal'><span style='color:#0D0D0D'>Module Description </span></p>
    546   </td>
    547   <td width=297 valign=top style='width:178.05pt;border-top:none;border-left:
    548   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    549   padding:0cm 5.4pt 0cm 5.4pt'>
    550   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    551   normal'><span style='color:#0D0D0D'>Textbox</span></p>
    552   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    553   normal'><span style='color:#0D0D0D'>(with correct width)</span></p>
    554   </td>
    555   <td width=297 valign=top style='width:178.05pt;border-top:none;border-left:
    556   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    557   padding:0cm 5.4pt 0cm 5.4pt'>
    558   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    559   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    560   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    561   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    562   </td>
    563  </tr>
    564  <tr>
    565   <td width=297 valign=top style='width:178.0pt;border:solid windowtext 1.0pt;
    566   border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    567   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    568   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    569   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    570   normal'><span style='color:#0D0D0D'>BACK(after the last module)</span></p>
    571   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    572   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    573   </td>
    574   <td width=297 valign=top style='width:178.05pt;border-top:none;border-left:
    575   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    576   padding:0cm 5.4pt 0cm 5.4pt'>
    577   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    578   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    579   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    580   normal'><span style='color:#0D0D0D'>NEXT(after the last  module)</span></p>
    581   </td>
    582   <td width=297 valign=top style='width:178.05pt;border-top:none;border-left:
    583   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    584   padding:0cm 5.4pt 0cm 5.4pt'>
    585   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    586   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    587   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    588   normal'><span style='color:#0D0D0D'>SAVE AND QUIT(after the last module )</span></p>
    589   </td>
    590  </tr>
    591 </table>
    592 
    593 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    594 style='color:#0D0D0D'>&nbsp;</span></p>
    595 
    596 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    597 style='color:#0D0D0D'> </span></p>
    598 
    599 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    600 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#0D0D0D'>v<span
    601 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span
    602 style='color:#0D0D0D'>There will be similar forms for the settings; however I
    603 would like to have separate forms for different categories of settings</span></p>
    604 
    605 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    606 style='color:#0D0D0D'> </span></p>
    607 
    608 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    609 style='color:#0D0D0D'>Like thsese:-</span></p>
    610 
    611 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    612 style='color:#0D0D0D'>&nbsp;</span></p>
    613 
    614 <table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0
    615  style='border-collapse:collapse;border:none'>
    616  <tr>
    617   <td width=328 valign=top style='width:196.8pt;border:solid windowtext 1.0pt;
    618   padding:0cm 5.4pt 0cm 5.4pt'>
    619   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    620   normal'><span style='color:#0D0D0D'>SETTINGS CATEGORY</span></p>
    621   </td>
    622   <td width=260 valign=top style='width:155.9pt;border:solid windowtext 1.0pt;
    623   border-left:none;padding:0cm 5.4pt 0cm 5.4pt'>
    624   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    625   normal'><span style='color:#0D0D0D'>(before the first setting only)</span></p>
    626   </td>
    627   <td width=302 valign=top style='width:181.4pt;border:solid windowtext 1.0pt;
    628   border-left:none;padding:0cm 5.4pt 0cm 5.4pt'>
    629   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    630   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    631   </td>
    632  </tr>
    633  <tr>
    634   <td width=328 valign=top style='width:196.8pt;border:solid windowtext 1.0pt;
    635   border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    636   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    637   normal'><span style='color:#0D0D0D'>Setting name</span></p>
    638   </td>
    639   <td width=260 valign=top style='width:155.9pt;border-top:none;border-left:
    640   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    641   padding:0cm 5.4pt 0cm 5.4pt'>
    642   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    643   normal'><span style='color:#0D0D0D'>FIELD according to the Input type
    644   required</span></p>
    645   </td>
    646   <td width=302 valign=top style='width:181.4pt;border-top:none;border-left:
    647   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    648   padding:0cm 5.4pt 0cm 5.4pt'>
    649   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    650   normal'><span style='color:#0D0D0D'>                             ?help</span></p>
    651   </td>
    652  </tr>
    653  <tr>
    654   <td width=328 valign=top style='width:196.8pt;border:solid windowtext 1.0pt;
    655   border-top:none;padding:0cm 5.4pt 0cm 5.4pt'>
    656   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    657   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    658   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    659   normal'><span style='color:#0D0D0D'>BACK(after the last one only)</span></p>
    660   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    661   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    662   </td>
    663   <td width=260 valign=top style='width:155.9pt;border-top:none;border-left:
    664   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    665   padding:0cm 5.4pt 0cm 5.4pt'>
    666   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    667   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    668   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    669   normal'><span style='color:#0D0D0D'>NEXT(after the last one only)</span></p>
    670   </td>
    671   <td width=302 valign=top style='width:181.4pt;border-top:none;border-left:
    672   none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
    673   padding:0cm 5.4pt 0cm 5.4pt'>
    674   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    675   normal'><span style='color:#0D0D0D'>&nbsp;</span></p>
    676   <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt;line-height:
    677   normal'><span style='color:#0D0D0D'>SAVE AND QUIT(after the last on only)</span></p>
    678   </td>
    679  </tr>
    680 </table>
    681 
    682 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    683 style='color:#0D0D0D'>&nbsp;</span></p>
    684 
    685 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    686 text-indent:-18.0pt'><span style='font-family:Wingdings'>v<span
    687 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span>for adding some text
    688 on the  main page</p>
    689 
    690 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    691 style='color:#0D0D0D'>&nbsp;</span></p>
    692 
    693 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    694 style='color:#0D0D0D'>We will just set a text field in the form.  Where he can
    695 type anything which he wants to be displayed at the main landing page of eden.
    696 I will set a global variable, that later I will write to the file
    697 000_config.Then a division would be created in the index page of eden for
    698 displaying simple text. </span></p>
    699 
    700 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    701 style='color:#0D0D0D'>&nbsp;</span></p>
    702 
    703 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>In the
    704 form.accepts you will need to set the module values according to the
    705 request.post_vars.</p>
    706 
    707 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    708 
    709 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    710 
    711 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    712 text-indent:-18.0pt'><span style='font-family:Wingdings'>Ø<span
    713 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><b>Def write_out():</b></p>
    714 
    715 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>&nbsp;</p>
    716 
    717 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>This writes
    718 data to 000_config</p>
    719 
    720 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>For this
    721 they would need to open the config using os.path.join and write data to the
    722 config  in the correct format. </p>
    723 
    724 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>Like modules
    725 needs to be done in this format:-</p>
    726 }}}
    727 {{{
    728 “deployment_settings.modules = Storge(\n” +
    729  
    730 #For for all keys
    731 “    “ + <?module.key?> "= Storage(\n” +
    732    
    733 #For all keys in module.keys
    734 “    “  + “    ” + <?keys of module.keys?> + “=” + <?values of their respective fields?> + “,\n” +
    735  
    736 "    " + “),\n”              #after module.key
    737  
    738 + “)”                   #for the main
    739 }}}
    740 {{{
    741 #!html
    742 
    743 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>Writing
    744 settings will be much more easier, as they are not stored in dict, somewhat
    745 like:-</p>
    746 
    747 }}}
    748 {{{
    749 For all keys of settings
    750 <?Keys of the settings ?> + “=” + <?values of the respective keys?> “\n”
    751 }}}
    752 {{{
    753 #!html
    754 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>I would
    755 write default values if any request.post_var returns an invalid value according
    756 to the validation.</p>
    757 
    758 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    759 style='color:#0D0D0D'>&nbsp;</span></p>
    760 
    761 
    762 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    763 style='font-size:15.0pt;line-height:115%;color:#0D0D0D'>&nbsp;</span></b></p>
    764 
    765 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    766 style='font-size:15.0pt;line-height:115%;color:#0D0D0D'>VIEWS</span></b></p>
    767 
    768 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
    769 style='font-size:15.0pt;line-height:115%;color:#0D0D0D'>&nbsp;</span></b></p>
    770 
    771 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    772 style='color:#0D0D0D'>Though we have not talked about this part directly,
    773 however in the last section of index(): function we have talked about the forms
    774 that I would like to create. Most part of this code can be reused from the
    775 previous application.</span></p>
    776 
    777 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    778 style='color:#0D0D0D'>&nbsp;</span></p>
    779 
    780 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    781 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#0D0D0D'>v<span
    782 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><b><span
    783 style='color:#0D0D0D'>CREATING A LICENCE PAGE:</span></b></p>
    784 
    785 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    786 style='color:#0D0D0D'>This will be created only if  “FINISHED_EDITING_CONFIG_FILE”
    787 is false in the modified_config.py</span></p>
    788 
    789 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
    790 style='color:#0D0D0D'>&nbsp;</span></p>
    791 
    792 <p class=MsoListParagraph style='margin-bottom:0cm;margin-bottom:.0001pt;
    793 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#0D0D0D'>v<span
    794 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><b><span
    795 style='color:#0D0D0D'>SENDING POST METHOD TO GET THE ARGUMENTS TO CONTROLLERS</span></b></p>
    796 
    797 <p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
    798 margin-left:18.0pt;margin-bottom:.0001pt'><span style='color:#0D0D0D'>&nbsp;</span></p>
    799 
    800 <p class=MsoListParagraphCxSpFirst style='margin-bottom:0cm;margin-bottom:.0001pt;
    801 text-indent:-18.0pt'><span style='font-family:Wingdings;color:#0D0D0D'>v<span
    802 style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><b><span
    803 style='color:#0D0D0D'>THESE WILL CONTAIN A STATIC FOLDER CONTAONG THE CSS AND
    804 THE  </span>extjs </b></p>
    805 
    806 <p class=MsoListParagraphCxSpLast><b>&nbsp;</b></p>
    807 
    808 <p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'>This part of
    809 the code is almost reusable.</p>
    810 }}}