PageRenderTime 27ms CodeModel.GetById 21ms RepoModel.GetById 0ms app.codeStats 0ms

/admin/modules/language/edit.php

http://viet-group.googlecode.com/
PHP | 160 lines | 140 code | 12 blank | 8 comment | 16 complexity | 526334a7d8919783903b311d1220f318 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. <?php
  2. /**
  3. * @Project NUKEVIET 3.0
  4. * @Author VINADES.,JSC (contact@vinades.vn)
  5. * @Copyright (C) 2010 VINADES.,JSC. All rights reserved
  6. * @Createdate 2-9-2010 14:43
  7. */
  8. if ( ! defined( 'NV_IS_FILE_LANG' ) ) die( 'Stop!!!' );
  9. $select_options = array();
  10. if ( $nv_Request->isset_request( 'idfile,savedata', 'post' ) and $nv_Request->get_string( 'savedata', 'post' ) == md5( session_id() ) )
  11. {
  12. $numberfile = 0;
  13. $idfile = $nv_Request->get_int( 'idfile', 'post', 0 );
  14. $dirlang = filter_text_input( 'dirlang', 'post', '' );
  15. $lang_translator = $nv_Request->get_array( 'pozauthor', 'post', array() );
  16. $lang_translator_save = array();
  17. $langtype = isset( $lang_translator['langtype'] ) ? strip_tags( $lang_translator['langtype'] ) : "lang_module";
  18. $lang_translator_save['author'] = isset( $lang_translator['author'] ) ? nv_htmlspecialchars( strip_tags( $lang_translator['author'] ) ) : "VINADES.,JSC (contact@vinades.vn)";
  19. $lang_translator_save['createdate'] = isset( $lang_translator['createdate'] ) ? nv_htmlspecialchars( strip_tags( $lang_translator['createdate'] ) ) : date( "d/m/Y, H:i" );
  20. $lang_translator_save['copyright'] = isset( $lang_translator['copyright'] ) ? nv_htmlspecialchars( strip_tags( $lang_translator['copyright'] ) ) : "@Copyright (C) 2010 VINADES.,JSC. All rights reserved";
  21. $lang_translator_save['info'] = isset( $lang_translator['info'] ) ? nv_htmlspecialchars( strip_tags( $lang_translator['info'] ) ) : "";
  22. $lang_translator_save['langtype'] = $langtype;
  23. //$author = base64_encode( serialize( $lang_translator_save ) );
  24. $author = var_export( $lang_translator_save, true );
  25. $db->sql_query( "UPDATE `" . NV_LANGUAGE_GLOBALTABLE . "_file` SET `author_" . $dirlang . "`='" . $author . "' WHERE `idfile`=" . $idfile . "" );
  26. list( $module ) = $db->sql_fetchrow( $db->sql_query( "SELECT `module` FROM `" . NV_LANGUAGE_GLOBALTABLE . "_file` WHERE `idfile` ='" . $idfile . "'" ) );
  27. nv_insert_logs( NV_LANG_DATA, $module_name, $lang_module['nv_admin_edit'] . ' -> ' . $language_array[$dirlang]['name'] , $module." : idfile = " .$idfile , $admin_info['userid'] );
  28. $pozlang = $nv_Request->get_array( 'pozlang', 'post', array() );
  29. if ( ! empty( $pozlang ) )
  30. {
  31. foreach ( $pozlang as $id => $lang_value )
  32. {
  33. $id = intval( $id );
  34. $lang_value = trim( strip_tags( $lang_value, NV_ALLOWED_HTML_LANG ) );
  35. $db->sql_query( "UPDATE `" . NV_LANGUAGE_GLOBALTABLE . "` SET `lang_" . $dirlang . "`='" . mysql_real_escape_string( $lang_value ) . "' WHERE `id`='" . $id . "'" );
  36. }
  37. }
  38. $pozlangkey = $nv_Request->get_array( 'pozlangkey', 'post', array() );
  39. $pozlangval = $nv_Request->get_array( 'pozlangval', 'post', array() );
  40. for ( $i = 0; $i < sizeof( $pozlangkey ); ++ $i )
  41. {
  42. $lang_key = strip_tags( $pozlangkey[$i] );
  43. $lang_value = strip_tags( $pozlangval[$i], NV_ALLOWED_HTML_LANG );
  44. if ( $lang_key != "" and $lang_value != "" )
  45. {
  46. $lang_value = nv_nl2br( $lang_value );
  47. $lang_value = str_replace( '<br />', '<br />', $lang_value );
  48. $sql = "INSERT INTO `" . NV_LANGUAGE_GLOBALTABLE . "` (`id`, `idfile`, `lang_key`, `lang_" . $dirlang . "`) VALUES (NULL, '" . $idfile . "', '" . mysql_real_escape_string( $lang_key ) . "', '" . mysql_real_escape_string( $lang_value ) . "')";
  49. $db->sql_query_insert_id( $sql );
  50. }
  51. }
  52. Header( "Location: " . NV_BASE_ADMINURL . "index.php?" . NV_NAME_VARIABLE . "=" . $module_name . "&" . NV_OP_VARIABLE . "=interface&dirlang=" . $dirlang . "" );
  53. die();
  54. }
  55. $dirlang = filter_text_input( 'dirlang', 'get', '' );
  56. $page_title = $lang_module['nv_admin_edit'] . ' -> ' . $language_array[$dirlang]['name'];
  57. if ( $nv_Request->isset_request( 'idfile,checksess', 'get' ) and $nv_Request->get_string( 'checksess', 'get' ) == md5( $nv_Request->get_int( 'idfile', 'get' ) . session_id() ) )
  58. {
  59. $idfile = $nv_Request->get_int( 'idfile', 'get' );
  60. list( $idfile, $module, $admin_file, $langtype, $author_lang ) = $db->sql_fetchrow( $db->sql_query( "SELECT `idfile`, `module`, `admin_file`, `langtype`, `author_" . $dirlang . "` FROM `" . NV_LANGUAGE_GLOBALTABLE . "_file` WHERE `idfile` ='" . $idfile . "'" ) );
  61. if ( ! empty( $dirlang ) and ! empty( $module ) )
  62. {
  63. if ( empty( $author_lang ) )
  64. {
  65. $array_translator = array();
  66. $array_translator['author'] = "";
  67. $array_translator['createdate'] = "";
  68. $array_translator['copyright'] = "";
  69. $array_translator['info'] = "";
  70. $array_translator['langtype'] = "";
  71. }
  72. else
  73. {
  74. eval( '$array_translator = ' . $author_lang . ';' );
  75. }
  76. //$array_translator = unserialize( base64_decode( $author_lang ) );
  77. $i = 1;
  78. $contents .= "<div class=\"quote\" style=\"width:98%;\">\n";
  79. $contents .= "<blockquote><span>" . $lang_module['nv_lang_note_edit'] . " : " . ALLOWED_HTML_LANG . "</span></blockquote>\n";
  80. $contents .= "</div>\n";
  81. $contents .= "<div class=\"clear\"></div>\n";
  82. $contents .= "<form action=\"" . NV_BASE_ADMINURL . "index.php\" method=\"post\">";
  83. $contents .= "<input type=\"hidden\" name =\"pozauthor[langtype]\"value=\"" . $array_translator['langtype'] . "\" />";
  84. $contents .= "<table summary=\"\" class=\"tab1\">\n";
  85. $contents .= "<thead>";
  86. $contents .= "<tr>";
  87. $contents .= "<td>" . $lang_module['nv_lang_nb'] . "</td>";
  88. $contents .= "<td>" . $lang_module['nv_lang_key'] . "</td>";
  89. $contents .= "<td>" . $lang_module['nv_lang_value'] . "</td>";
  90. $contents .= "</tr>";
  91. $contents .= "</thead>";
  92. foreach ( $array_translator as $lang_key => $lang_value )
  93. {
  94. if ( $lang_key != "langtype" )
  95. {
  96. $i ++;
  97. $class = ( $i % 2 ) ? " class=\"second\"" : "";
  98. $contents .= "<tbody" . $class . ">\n";
  99. $contents .= "<tr>";
  100. $contents .= "<td></td>";
  101. $contents .= "<td>" . $lang_key . "</td>";
  102. $contents .= "<td><input type=\"text\" value='" . nv_htmlspecialchars( $lang_value ) . "' name=\"pozauthor[" . $lang_key . "]\" size=\"90\"/></td>";
  103. $contents .= "</tr>";
  104. $contents .= "</tbody>";
  105. }
  106. }
  107. for ( $a = 1; $a <= 2; $a ++ )
  108. {
  109. $i ++;
  110. $class = ( $i % 2 ) ? " class=\"second\"" : "";
  111. $contents .= "<tbody" . $class . ">\n";
  112. $contents .= "<tr>";
  113. $contents .= "<td align=\"center\">" . $a . "</td>";
  114. $contents .= "<td align=\"right\"><input type=\"text\" value=\"\" name=\"pozlangkey[" . $a . "]\" size=\"10\" /></td>";
  115. $contents .= "<td align=\"left\"><input type=\"text\" value=\"\" name=\"pozlangval[" . $a . "]\" size=\"90\" /></td>";
  116. $contents .= "</tr>";
  117. $contents .= "</tbody>";
  118. }
  119. $query = "SELECT `id`, `lang_key`, `lang_" . $dirlang . "` FROM `" . NV_LANGUAGE_GLOBALTABLE . "` WHERE `idfile`='" . $idfile . "' ORDER BY `id` ASC";
  120. $result = $db->sql_query( $query );
  121. while ( list( $id, $lang_key, $lang_value ) = $db->sql_fetchrow( $result ) )
  122. {
  123. $i ++;
  124. $class = ( $i % 2 ) ? " class=\"second\"" : "";
  125. $contents .= "<tbody" . $class . ">\n";
  126. $contents .= "<tr>";
  127. $contents .= "<td align=\"center\">" . $i . "</td>";
  128. $contents .= "<td align=\"right\">" . $lang_key . "</td>";
  129. $contents .= "<td align=\"left\"><input type=\"text\" value=\"" . nv_htmlspecialchars( $lang_value ) . "\" name=\"pozlang[" . $id . "]\" size=\"90\" /></td>";
  130. $contents .= "</tr>";
  131. $contents .= "</tbody>";
  132. }
  133. $contents .= "</table>";
  134. $contents .= "<br />";
  135. $contents .= "<input type=\"hidden\" name =\"" . NV_NAME_VARIABLE . "\"value=\"" . $module_name . "\" />";
  136. $contents .= "<input type=\"hidden\" name =\"" . NV_OP_VARIABLE . "\"value=\"" . $op . "\" />";
  137. $contents .= "<input type=\"hidden\" name =\"idfile\"value=\"" . $idfile . "\" />";
  138. $contents .= "<input type=\"hidden\" name =\"dirlang\"value=\"" . $dirlang . "\" />";
  139. $contents .= "<input type=\"hidden\" name =\"savedata\" value=\"" . md5( session_id() ) . "\" />";
  140. $contents .= "<center><input type=\"submit\" value=\"" . $lang_module['nv_admin_edit_save'] . "\" /></center>";
  141. $contents .= "</form>";
  142. $contents .= "<br />";
  143. }
  144. }
  145. include ( NV_ROOTDIR . "/includes/header.php" );
  146. echo nv_admin_theme( $contents );
  147. include ( NV_ROOTDIR . "/includes/footer.php" );
  148. ?>