legal_add.php 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. <?php // $Id: user_list.php 22041 2009-07-13 18:29:45Z juliomontoya $
  2. /* For licensing terms, see /dokeos_license.txt */
  3. $language_file = array('admin','registration');
  4. $cidReset = true;
  5. require '../inc/global.inc.php';
  6. $this_section = SECTION_PLATFORM_ADMIN;
  7. api_protect_admin_script();
  8. require_once api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php';
  9. require_once api_get_path(LIBRARY_PATH).'security.lib.php';
  10. require_once api_get_path(LIBRARY_PATH).'legal.lib.php';
  11. //var_dump($_POST);
  12. // Create the form
  13. $form = new FormValidator('addlegal');
  14. //var_dump($_POST);// var_dump($_GET);
  15. $defaults=array();
  16. if( $form->validate()) {
  17. $check = Security::check_token('post');
  18. if ($check) {
  19. $values = $form->getSubmitValues();
  20. $lang = $values['language'];
  21. //language id
  22. $lang = api_get_language_id($lang);
  23. $type = $values['type'];
  24. $content = $values['content'];
  25. $changes = $values['changes'];
  26. $navigator_info = api_get_navigator();
  27. if ($navigator_info['name']=='Internet Explorer' && $navigator_info['version']=='6') {
  28. if (isset($values['preview'])) {
  29. $submit ='preview';
  30. } elseif (isset($values['save'])) {
  31. $submit ='save';
  32. } elseif (isset($values['back'])) {
  33. $submit ='back';
  34. }
  35. }else {
  36. $submit = $values['send'];
  37. }
  38. $default[content]=$content;
  39. if (isset($values['language'])){
  40. if($submit=='back') {
  41. header('Location: legal_add.php');
  42. exit;
  43. } elseif($submit=='save') {
  44. $insert_result = LegalManager::add($lang,$content,$type,$changes);
  45. if ($insert_result )
  46. $message = get_lang('TermAndConditionSaved');
  47. else
  48. $message = get_lang('TermAndConditionNotSaved');
  49. Security::clear_token();
  50. $tok = Security::get_token();
  51. header('Location: legal_list.php?action=show_message&message='.urlencode($message).'&sec_token='.$tok);
  52. exit();
  53. } elseif($submit=='preview') {
  54. $defaults['type']=$type;
  55. $defaults['content']=$content;
  56. $defaults['changes']=$changes;
  57. $term_preview = $defaults;
  58. $term_preview['type'] = intval($_POST['type']);
  59. } else {
  60. $my_lang = $_POST['language'];
  61. if (isset($_POST['language'])){
  62. $all_langs = api_get_languages();
  63. if (in_array($my_lang, $all_langs['folder'])){
  64. $language = api_get_language_id($my_lang);
  65. $term_preview = LegalManager::get_last_condition($language);
  66. $defaults = $term_preview;
  67. if ($term_preview==false) {
  68. // there are not terms and conditions
  69. $term_preview['type']=-1;
  70. $defaults['type']=0;
  71. }
  72. }
  73. }
  74. }
  75. }
  76. }
  77. } else {
  78. /*
  79. if (!isset($_POST['language'])) {
  80. $language = api_get_setting('platformLanguage');
  81. $language = api_get_language_id($language);
  82. $term_preview = LegalManager::get_last_condition($language);
  83. $defaults['type']=$term_preview['type'];
  84. if ($term_preview==false) {
  85. // there are not terms and conditions
  86. $term_preview['type']=-1;
  87. $defaults['type']=0;
  88. }
  89. $defaults['content']=$term_preview['content'];
  90. $defaults['changes']=$term_preview['changes'];
  91. }*/
  92. }
  93. $form->setDefaults($default);
  94. //var_dump($term_preview);
  95. if(isset($_POST['send'])) {
  96. Security::clear_token();
  97. }
  98. $token = Security::get_token();
  99. $form->addElement('hidden','sec_token');
  100. $form->setConstants(array('sec_token' => $token));
  101. $text = '<div class="row">
  102. <div class="label"></div>
  103. <div class="formw">
  104. '.get_lang('DisplayTermsConditions').'
  105. </div>
  106. </div>';
  107. $form->addElement('html',$text);
  108. //$form->addElement('select_language', 'language', get_lang('Language'),null,array('id'=>'language','onchange'=>'sendlang();'));
  109. if (isset($_POST['language'])) {
  110. //$form->addElement('html_editor', 'content', null, null, array('ToolbarSet' => 'Basic', 'Width' => '100%', 'Height' => '250'));
  111. $form->addElement('static', $_POST['language']);
  112. $form->addElement('hidden', 'language',$_POST['language']);
  113. $form->add_html_editor('content', get_lang('Content'), true, false, array('ToolbarSet' => 'terms_and_conditions', 'Width' => '100%', 'Height' => '250'));
  114. //$form->addElement('textarea', 'content', get_lang('Content'),array('cols'=>'120','rows'=>'10'));
  115. $form->addElement('radio', 'type', '', get_lang('HTMLText') ,'0');
  116. $form->addElement('radio', 'type', '', get_lang('PageLink') ,'1');
  117. $form->addElement('textarea', 'changes', get_lang('ExplainChanges'),array('width'=>'20'));
  118. $preview = LegalManager::show_last_condition($term_preview);
  119. if ($term_preview['type']!=-1) {
  120. $term_preview = '<div class="row">
  121. <div class="label">'.get_lang('Preview').'</div>
  122. <div class="formw">
  123. '.$preview.'
  124. </div>
  125. </div>';
  126. $form->addElement('html',$term_preview);
  127. }
  128. // Submit & preview button
  129. $navigator_info = api_get_navigator();
  130. //ie6 fix
  131. if ($navigator_info['name']=='Internet Explorer' && $navigator_info['version']=='6') {
  132. $buttons = '<div class="row" align="center">
  133. <div class="formw">
  134. <input type="submit" name="back" value="'.get_lang('Back').'"/>
  135. <input type="submit" name="preview" value="'.get_lang('Preview').'"/>
  136. <input type="submit" name="save" value="'.get_lang('Save').'"/>
  137. </div>
  138. </div>';
  139. $form->addElement('html',$buttons);
  140. } else {
  141. $buttons = '<div class="row" align="center">
  142. <div class="formw">
  143. <button type="submit" class="back" name="send" value="back">'.get_lang('Back').'</button>
  144. <button type="submit" class="search" name="send" value="preview">'.get_lang('Preview').'</button>
  145. <button type="submit" class="save" name="send" value="save">'.get_lang('Save').'</button>
  146. </div>
  147. </div>';
  148. $form->addElement('html',$buttons);
  149. }
  150. /* $buttons = '<div class="row">
  151. <div class="formw">
  152. <button type="submit" class="back" name="send" value="back">'.get_lang('Back').'</button>
  153. <button type="submit" class="search" name="send" value="preview">'.get_lang('Preview').'</button>
  154. <button type="submit" class="save" name="send" value="save">'.get_lang('Save').'</button>
  155. </div>
  156. </div>'; */
  157. } else {
  158. $form->addElement('select_language', 'language', get_lang('Language'),null,array());
  159. $buttons = '<div class="row">
  160. <div class="formw">
  161. <button type="submit" class="save" name="send" value="load">'.get_lang('Load').'</button>
  162. </div>
  163. </div>';
  164. $form->addElement('html',$buttons);
  165. }
  166. //var_dump($defaults);
  167. $tool_name = get_lang('AddTermsAndConditions');
  168. $interbreadcrumb[] = array ("url" => 'index.php', "name" => get_lang('PlatformAdmin'));
  169. Display :: display_header($tool_name);
  170. echo '<script>
  171. function sendlang(){
  172. //document.addlegal.send.value=\'load\';
  173. // alert(document.addlegal.send.value);
  174. document.addlegal.sec_token.value=\''.$token.'\';
  175. document.addlegal.submit();
  176. }
  177. </script>';
  178. // action menu
  179. echo '<div class="actions" style="height:22px;">';
  180. echo '<div style="float:right;">
  181. <a href="'.api_get_path(WEB_CODE_PATH).'admin/legal_list.php">'.Display::return_icon('search.gif',get_lang('EditTermsAndConditions'),'').get_lang('AllVersions').'</a>&nbsp;&nbsp;
  182. </div><br />';
  183. echo '</div>';
  184. if (isset ($_GET['action'])) {
  185. switch ($_GET['action']) {
  186. case 'show_message' :
  187. Display :: display_normal_message(stripslashes($_GET['message']));
  188. break;
  189. }
  190. }
  191. //var_dump($defaults);
  192. $form->setDefaults($defaults);
  193. $form->display();
  194. ?>