PluginProbe
Polylang / 2.5
Polylang v2.5
3.8.9 3.8.8 3.8.7 3.8.6 3.8.5 3.8.4 3.8.3 2.7 2.7.0.1 2.7.1 2.7.2 2.7.3 2.7.4 2.8 2.8.1 2.8.2 2.8.3 2.8.4 2.9 2.9.1 2.9.2 3.0 3.0.1 3.0.2 3.0.3 All 233 releases
← All changes | settings/view-tab-lang.php +28 -17 2.92.5 View file →
@@ -1,9 +1,8 @@
1 1 <?php
2 +
2 3 /**
3 4 * Displays the languages tab in Polylang settings
4 - *
5 - * @package Polylang
6 5 */
7 6
8 7 if ( ! defined( 'ABSPATH' ) ) {
9 8 exit; // Don't access directly
@@ -18,9 +17,9 @@
18 17 ?>
19 18 <div class="metabox-holder">
20 19 <?php
21 20 wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
22 - do_meta_boxes( 'toplevel_page_mlang', 'normal', array() );
21 + do_meta_boxes( 'settings_page_mlang', 'normal', array() );
23 22 ?>
24 23 </div>
25 24 </div><!-- col-wrap -->
26 25 </div><!-- col-right -->
@@ -28,9 +27,9 @@
28 27 <div id="col-left">
29 28 <div class="col-wrap">
30 29
31 30 <div class="form-wrap">
32 - <h2><?php echo ! empty( $edit_lang ) ? esc_html__( 'Edit language', 'polylang' ) : esc_html__( 'Add new language', 'polylang' ); ?></h2>
31 + <h3><?php echo ! empty( $edit_lang ) ? esc_html__( 'Edit language', 'polylang' ) : esc_html__( 'Add new language', 'polylang' ); ?></h3>
33 32 <?php
34 33 // Displays the add ( or edit ) language form
35 34 // Adds noheader=true in the action url to allow using wp_redirect when processing the form
36 35 ?>
@@ -54,19 +53,15 @@
54 53 <select name="lang_list" id="lang_list">
55 54 <option value=""></option>
56 55 <?php
57 56 foreach ( $this->get_predefined_languages() as $lg ) {
58 - $lg['flag_code'] = $lg['flag'];
59 - $language = new PLL_Language( $lg );
60 - $language->set_flag();
61 57 printf(
62 - '<option value="%1$s:%2$s:%3$s:%4$s" data-flag-html="%6$s">%5$s - %2$s</option>' . "\n",
58 + '<option value="%1$s:%2$s:%3$s:%4$s">%5$s - %2$s</option>' . "\n",
63 59 esc_attr( $lg['code'] ),
64 60 esc_attr( $lg['locale'] ),
65 61 'rtl' == $lg['dir'] ? '1' : '0',
66 62 esc_attr( $lg['flag'] ),
67 - esc_html( $lg['name'] ),
68 - esc_html( $language->flag )
63 + esc_html( $lg['name'] )
69 64 );
70 65 }
71 66 ?>
72 67 </select>
@@ -110,14 +105,14 @@
110 105 <legend><?php esc_html_e( 'Text direction', 'polylang' ); ?></legend>
111 106 <?php
112 107 printf(
113 108 '<label><input name="rtl" type="radio" value="0" %s /> %s</label>',
114 - checked( ! empty( $edit_lang ) && $edit_lang->is_rtl, false, false ),
109 + ! empty( $edit_lang ) && $edit_lang->is_rtl ? '' : 'checked="checked"',
115 110 esc_html__( 'left to right', 'polylang' )
116 111 );
117 112 printf(
118 113 '<label><input name="rtl" type="radio" value="1" %s /> %s</label>',
119 - checked( ! empty( $edit_lang ) && $edit_lang->is_rtl, true, false ),
114 + ! empty( $edit_lang ) && $edit_lang->is_rtl ? 'checked="checked"' : '',
120 115 esc_html__( 'right to left', 'polylang' )
121 116 );
122 117 ?>
123 118 <p><?php esc_html_e( 'Choose the text direction for the language', 'polylang' ); ?></p>
@@ -127,15 +122,20 @@
127 122 <label for="flag_list"><?php esc_html_e( 'Flag', 'polylang' ); ?></label>
128 123 <select name="flag" id="flag_list">
129 124 <option value=""></option>
130 125 <?php
131 - $flags = include __DIR__ . '/flags.php';
126 + include PLL_SETTINGS_INC . '/flags.php';
132 127 foreach ( $flags as $code => $label ) {
128 + /** This filter is documented in include/language.php */
129 + $flag = apply_filters( 'pll_flag', array( 'url' => plugins_url( "/flags/{$code}.png", POLYLANG_FILE ) ), $code );
130 +
133 131 printf(
134 - '<option value="%s" data-flag-html="%s"%s>%s</option>' . "\n",
132 + '<option value="%s" data-url="%s"%s%s%s>%s</option>' . "\n",
135 133 esc_attr( $code ),
136 - esc_html( PLL_Language::get_flag_html( PLL_Language::get_flag_informations( $code ) ) ),
137 - selected( isset( $edit_lang->flag_code ) && $edit_lang->flag_code === $code, true, false ),
134 + esc_url( $flag['url'] ),
135 + empty( $flag['width'] ) ? '' : sprintf( ' data-width="%s"', (int) $flag['width'] ),
136 + empty( $flag['height'] ) ? '' : sprintf( ' data-height="%s"', (int) $flag['height'] ),
137 + isset( $edit_lang->flag_code ) && $edit_lang->flag_code == $code ? ' selected="selected"' : '',
138 138 esc_html( $label )
139 139 );
140 140 }
141 141 ?>
@@ -171,9 +171,9 @@
171 171 */
172 172 do_action( 'pll_language_add_form_fields' );
173 173 }
174 174
175 - submit_button( ! empty( $edit_lang ) ? __( 'Update', 'polylang' ) : __( 'Add new language', 'polylang' ) ); // since WP 3.1
175 + submit_button( ! empty( $edit_lang ) ? __( 'Update' ) : __( 'Add new language', 'polylang' ) ); // since WP 3.1
176 176 ?>
177 177 </form>
178 178 </div><!-- form-wrap -->
179 179 </div><!-- col-wrap -->
@@ -178,4 +178,15 @@
178 178 </div><!-- form-wrap -->
179 179 </div><!-- col-wrap -->
180 180 </div><!-- col-left -->
181 181 </div><!-- col-container -->
182 +
183 +<script type="text/javascript">
184 + //<![CDATA[
185 + jQuery( document ).ready( function( $ ) {
186 + // close postboxes that should be closed
187 + $( '.if-js-closed' ).removeClass( 'if-js-closed' ).addClass( 'closed' );
188 + // postboxes setup
189 + postboxes.add_postbox_toggles( 'settings_page_mlang' );
190 + } );
191 + //]]>
192 +</script>