function pof_settings_get_all_languages($use_cache = true)
{
    global $pof_settings_langs;
    if ($use_cache && isset($pof_settings_langs) && is_array($pof_settings_langs) && !empty($pof_settings_langs) && count($pof_settings_langs) < 1) {
        return $pof_settings_langs;
    }
    global $wpdb;
    $languages_res = $wpdb->get_results("\r\n\t\tSELECT *\r\n\t\tFROM " . pof_settings_get_table_name_languages() . "\r\n\t\tORDER BY id\r\n\t\t");
    $pof_settings_langs = $languages_res;
    return $languages_res;
}
示例#2
0
function pof_settings_languages()
{
    if (!current_user_can('manage_options')) {
        wp_die(__('You do not have sufficient permissions to access this page.'));
    }
    $languages = pof_settings_get_all_languages();
    if (isset($_POST['Submit'])) {
        global $wpdb;
        global $pof_settings_db_version;
        $table_name_languages = pof_settings_get_table_name_languages(false);
        if (isset($_POST["pof_settings_add_lang"]) && !empty($_POST["pof_settings_add_lang"]) && isset($_POST["pof_settings_add_lang"]["title"]) && !empty($_POST["pof_settings_add_lang"]["title"]) && isset($_POST["pof_settings_add_lang"]["code"]) && !empty($_POST["pof_settings_add_lang"]["code"])) {
            $lang_active = 0;
            if (isset($_POST["pof_settings_add_lang"]["active"]) && !empty($_POST["pof_settings_add_lang"]["active"]) && $_POST["pof_settings_add_lang"]["active"] == "1") {
                $lang_active = 1;
            }
            $default = 0;
            if (empty($languages)) {
                $default = 1;
                $lang_active = 1;
            }
            $tmp = $wpdb->insert($table_name_languages, array('lang_title' => $_POST["pof_settings_add_lang"]["title"], 'lang_code' => $_POST["pof_settings_add_lang"]["code"], 'is_active' => (int) $lang_active, 'is_default' => (int) $default), array('%s', '%s', '%d'));
        }
        if (isset($_POST["pof_settings_language"]) && !empty($_POST["pof_settings_language"])) {
            foreach ($_POST["pof_settings_language"] as $lang_id => $lang) {
                if (isset($lang["title"]) && !empty($lang["title"]) && isset($lang["code"]) && !empty($lang["code"])) {
                    $lang_active = 0;
                    if (isset($lang["active"]) && !empty($lang["active"]) && $lang["active"] == "1") {
                        $lang_active = 1;
                    }
                    $tmp = $wpdb->update($table_name_languages, array('lang_title' => $lang["title"], 'lang_code' => $lang["code"], 'is_active' => (int) $lang_active), array('id' => $lang_id), array('%s', '%s', '%d'), array('%d'));
                }
            }
        }
        $languages = pof_settings_get_all_languages(false);
    }
    echo '<div class="wrap">';
    echo '<h1>POF Settings, kielet</h1>';
    echo '<form method="post" action="">';
    echo '<table cellpadding="2" cellspacing="2" border="2">';
    echo '<thead>';
    echo '<tr>';
    echo '<th><h2>Kieli</h2></th>';
    echo '<th><h2>Koodi</h2></th>';
    echo '<th><h2>Aktiivinen</h2></th>';
    echo '<th><h2>Default</h2></th>';
    echo '<tr>';
    echo '</thead>';
    echo '<tbody>';
    foreach ($languages as $language) {
        ?>
	<tr>
		<td><input type="text" name="pof_settings_language[<?php 
        echo $language->id;
        ?>
][title]" value="<?php 
        echo $language->lang_title;
        ?>
" /></td>
		<td><input type="text" name="pof_settings_language[<?php 
        echo $language->id;
        ?>
][code]"  value="<?php 
        echo $language->lang_code;
        ?>
" /></td>
<?php 
        if ($language->is_default) {
            ?>
		<td>X</td>
		<td>X</td>

<?php 
        } else {
            ?>
		<td><input type="checkbox" name="pof_settings_language[<?php 
            echo $language->id;
            ?>
][active]" value="1" <?php 
            if ($language->is_active) {
                echo " checked='checked'";
            }
            ?>
 /></td>
		<td></td>
<?php 
        }
        ?>
	</tr>

<?php 
    }
    ?>

	<tr>
		<td><input type="text" name="pof_settings_add_lang[title]" /></td>
		<td><input type="text" name="pof_settings_add_lang[code]" /></td>
		<td><input type="checkbox" name="pof_settings_add_lang[active]" value="1" /></td>
	</tr>

<?php 
    echo '</tbody>';
    echo '</table>';
    echo '<br /><input type="submit" name="Submit" value="Submit" />';
    echo '</form>';
    echo '</div>';
}