[3733] | 1 | <?php |
---|
| 2 | |
---|
| 3 | include("./always.php"); |
---|
| 4 | include("DAViCalSession.php"); |
---|
| 5 | $session->LoginRequired('Admin'); |
---|
| 6 | |
---|
| 7 | include("interactive-page.php"); |
---|
| 8 | |
---|
| 9 | $page_elements = array(); |
---|
| 10 | $page_elements[] = <<<EOBODY |
---|
| 11 | <h1>Upgrade Database</h1> |
---|
| 12 | <p>Currently this page does nothing. Suggestions or patches to make it do something |
---|
| 13 | useful will be gratefully received. |
---|
| 14 | <br> |
---|
| 15 | </p> |
---|
| 16 | <h2>Upgrading DAViCal Versions</h2> |
---|
| 17 | <p>The <a href="http://wiki.davical.org/w/Update-davical-database">update-davical-database</a> should be run |
---|
| 18 | manually after upgrading the software to a new version of DAViCal.</p> |
---|
| 19 | |
---|
| 20 | <p>In due course this program will implement the functionality which is currently contained in that |
---|
| 21 | script, but until then I'm afraid you do need to run it. |
---|
| 22 | EOBODY; |
---|
| 23 | |
---|
| 24 | |
---|
| 25 | |
---|
| 26 | include("classEditor.php"); |
---|
| 27 | include("AwlUpgrader.php"); |
---|
| 28 | |
---|
| 29 | $editor = new Editor(translate('Upgrade Database')); |
---|
| 30 | $editor->AddField('dbhost', "''"); |
---|
| 31 | $editor->AddField('dbport', "''"); |
---|
| 32 | $editor->AddField('dbname', "'davical'"); |
---|
| 33 | $editor->AddField('dbuser', "'davical_dba'"); |
---|
| 34 | $editor->AddField('dbpass', "''"); |
---|
| 35 | $editor->AddField('app_user', "'davical_app'"); |
---|
| 36 | $editor->AddField('apply_patches', "'t'"); |
---|
| 37 | $editor->AddField('owner', "davical_dba"); |
---|
| 38 | |
---|
| 39 | $prompt_dbname = translate('Database Name'); |
---|
| 40 | $prompt_dbuser = translate('Database Username'); |
---|
| 41 | $prompt_dbpass = translate('Database Password'); |
---|
| 42 | $prompt_dbport = translate('Database Port'); |
---|
| 43 | $prompt_dbhost = translate('Database Host'); |
---|
| 44 | |
---|
| 45 | $prompt_app_user = translate('Application DB User'); |
---|
| 46 | $prompt_do_patch = translate('Apply DB Patches'); |
---|
| 47 | $prompt_owner = translate('Database Owner'); |
---|
| 48 | |
---|
| 49 | $template = <<<EOTEMPLATE |
---|
| 50 | ##form## |
---|
| 51 | <table> |
---|
| 52 | <tr> <th class="h2" colspan="2">Connection Parameters</th> </tr> |
---|
| 53 | <tr> <th class="right">$prompt_dbhost:</th> <td class="left">##dbhost.input.20##</td> </tr> |
---|
| 54 | <tr> <th class="right">$prompt_dbport:</th> <td class="left">##dbport.input.5##</td> </tr> |
---|
| 55 | <tr> <th class="right">$prompt_dbname:</th> <td class="left">##dbname.input.20##</td> </tr> |
---|
| 56 | <tr> <th class="right">$prompt_dbuser:</th> <td class="left">##dbuser.input.20##</td> </tr> |
---|
| 57 | <tr> <th class="right">$prompt_dbpass:</th> <td class="left">##dbpass.password.20##</td> </tr> |
---|
| 58 | <tr> <th class="h2" colspan="2">Operation Parameters</th> </tr> |
---|
| 59 | <tr> <th class="right">$prompt_app_user:</th> <td class="left">##app_user.input.20##</td> </tr> |
---|
| 60 | <tr> <th class="right">$prompt_do_patch:</th> <td class="left">##apply_patches.checkbox##</td> </tr> |
---|
| 61 | <tr> <th class="right">$prompt_owner:</th> <td class="left">##owner.input.20##</td> </tr> |
---|
| 62 | <tr> <th class="right"></th> <td class="left" colspan="2">##submit##</td> </tr> |
---|
| 63 | </table> |
---|
| 64 | </form> |
---|
| 65 | |
---|
| 66 | EOTEMPLATE; |
---|
| 67 | |
---|
| 68 | |
---|
| 69 | $editor->SetTemplate( $template ); |
---|
| 70 | $page_elements[] = $editor; |
---|
| 71 | |
---|
| 72 | $c->stylesheets[] = 'css/edit.css'; |
---|
| 73 | |
---|
| 74 | include("page-header.php"); |
---|
| 75 | |
---|
| 76 | /** |
---|
| 77 | * Page elements could be an array of viewers, browsers or something else |
---|
| 78 | * that supports the Render() method... or a non-object which we assume is |
---|
| 79 | * just a string of text that we echo. |
---|
| 80 | */ |
---|
| 81 | $heading_level = null; |
---|
| 82 | foreach( $page_elements AS $k => $page_element ) { |
---|
| 83 | if ( is_object($page_element) ) { |
---|
| 84 | echo $page_element->Render($heading_level); |
---|
| 85 | $heading_level = 'h2'; |
---|
| 86 | } |
---|
| 87 | else { |
---|
| 88 | echo $page_element; |
---|
| 89 | } |
---|
| 90 | } |
---|
| 91 | |
---|
| 92 | if (function_exists("post_render_function")) { |
---|
| 93 | post_render_function(); |
---|
| 94 | } |
---|
| 95 | |
---|
| 96 | include("page-footer.php"); |
---|