Esempio n. 1
0
/**
* Returns the ISO-639-1 language code
*
* @param   string   $langName
* @return  string
*/
function COM_getLangIso639Code($langName = NULL)
{
    $mapping = array('afrikaans' => 'af', 'bosnian' => 'bs', 'bulgarian' => 'bg', 'catalan' => 'ca', 'chinese_simplified' => 'zh-cn', 'chinese_traditional' => 'zh', 'croatian' => 'hr', 'czech' => 'cs', 'danish' => 'da', 'dutch' => 'nl', 'english' => 'en', 'estonian' => 'et', 'farsi' => 'fa', 'finnish' => 'fi', 'french_canada' => 'fr-ca', 'french_france' => 'fr', 'german' => 'de', 'german_formal' => 'de', 'hebrew' => 'he', 'hellenic' => 'el', 'indonesian' => 'id', 'italian' => 'it', 'japanese' => 'ja', 'korean' => 'ko', 'norwegian' => 'no', 'polish' => 'pl', 'portuguese' => 'pt', 'portuguese_brazil' => 'pt-br', 'romanian' => 'ro', 'russian' => 'ru', 'serbian' => 'sr', 'slovak' => 'sk', 'slovenian' => 'sl', 'spanish' => 'es', 'spanish_argentina' => 'es', 'swedish' => 'sv', 'turkish' => 'tr', 'ukrainian' => 'uk', 'ukrainian_koi8-u' => 'uk');
    if ($langName === NULL) {
        $langName = COM_getLanguage();
    }
    $langName = strtolower($langName);
    $langName = str_replace('_utf-8', '', $langName);
    return isset($mapping[$langName]) ? $mapping[$langName] : 'en';
}
Esempio n. 2
0
/**
* Provide a block to switch languages
*
* Provides a drop-down menu (or simple link, if you only have two languages)
* to switch languages. This can be used as a PHP block or called from within
* your theme's header.thtml:
* <code>
* <?php print phpblock_switch_language(); ?>
* </code>
*
* @return   string  HTML for drop-down or link to switch languages
*
*/
function phpblock_switch_language()
{
    global $_CONF;
    $retval = '';
    if (empty($_CONF['languages']) || empty($_CONF['language_files']) || count($_CONF['languages']) != count($_CONF['language_files'])) {
        return $retval;
    }
    $lang = COM_getLanguage();
    $langId = COM_getLanguageId($lang);
    if (count($_CONF['languages']) == 2) {
        foreach ($_CONF['languages'] as $key => $value) {
            if ($key != $langId) {
                $newLang = $value;
                $newLangId = $key;
                break;
            }
        }
        $switchUrl = COM_buildUrl($_CONF['site_url'] . '/switchlang.php?lang=' . $newLangId);
        $retval .= COM_createLink($newLang, $switchUrl);
    } else {
        $retval .= '<form name="change" action="' . $_CONF['site_url'] . '/switchlang.php" method="get">' . LB;
        $retval .= '<input type="hidden" name="oldlang" value="' . $langId . '"' . XHTML . '>' . LB;
        $retval .= '<select onchange="change.submit()" name="lang">';
        foreach ($_CONF['languages'] as $key => $value) {
            if ($lang == $_CONF['language_files'][$key]) {
                $selected = ' selected="selected"';
            } else {
                $selected = '';
            }
            $retval .= '<option value="' . $key . '"' . $selected . '>' . $value . '</option>' . LB;
        }
        $retval .= '</select>' . LB;
        $retval .= '</form>' . LB;
    }
    return $retval;
}
Esempio n. 3
0
/**
* Returns config ediot
*
* @param   int     $cid  cid
* @return  string
*/
function TMCE_getAdminConfigEditor($cid)
{
    global $_CONF, $_TABLES, $_TMCE_CONF;
    $cid = (int) $cid;
    $sql = "SELECT * " . "FROM {$_TABLES['tinymce_configs']} " . "WHERE (cid = '" . addslashes($cid) . "') ";
    $result = DB_query($sql);
    if (!DB_error() and DB_numRows($result) == 1) {
        $A = DB_fetchArray($result, FALSE);
    } else {
        $A = $_TMCE_CONF['default_data'];
        $A['title'] = 'new';
    }
    $A['buttons'] = unserialize($A['buttons']);
    $T = new Template($_CONF['path'] . 'plugins/tinymce/templates');
    $T->set_file('editor', 'editor.thtml');
    $T->set_var('xhtml', XHTML);
    // Sets lang vars
    $langs = array('admin_title', 'admin_theme', 'admin_toolbars', 'admin_plugins', 'admin_grp_name', 'admin_submit', 'admin_delete', 'admin_confirm_delete', 'admin_avaiable_buttons', 'admin_disabled_buttons', 'admin_tb_perms', 'admin_tb_allow_upload', 'admin_tb_allow_edit', 'admin_tb_allow_delete', 'admin_tb_allow_folders', 'admin_enter_function');
    foreach ($langs as $lang) {
        $T->set_var('lang_' . $lang, TMCE_str($lang));
    }
    $T->set_var('action', $_CONF['site_admin_url'] . '/plugins/tinymce/index.php');
    $T->set_var('cid', TMCE_esc($A['cid']));
    $T->set_var('title', TMCE_esc($A['title']));
    $T->set_var('theme_options', TMCE_getThemeOptions($A['theme']));
    // Sets the path to "install.html"
    $lang = str_replace('_utf-8', '', COM_getLanguage());
    $docPath = $_CONF['path_html'] . 'admin/plugins/tinymce/docs/' . $lang . '/install.html';
    clearstatcache();
    if (!is_readable($docPath)) {
        $lang = 'english';
    }
    $docUrl = $_CONF['site_admin_url'] . '/plugins/tinymce/docs/' . $lang . '/install.html';
    $config_help = sprintf(TMCE_str('admin_config_help', TRUE), $docUrl);
    $T->set_var('config_help', $config_help);
    $palettes = TMCE_getPalette();
    $T->set_var('palette1', $palettes[0]);
    $T->set_var('palette2', $palettes[1]);
    $T->set_var('buttons1', $A['buttons']['buttons1']);
    $T->set_var('buttons2', $A['buttons']['buttons2']);
    $T->set_var('buttons3', $A['buttons']['buttons3']);
    $T->set_var('buttons4', $A['buttons']['buttons4']);
    $T->set_var('plugins', TMCE_unpackPlugins($A['plugins']));
    $T->set_var('tb_allow_upload_options', TMCE_getBooleanOptions($A['tb_allow_upload']));
    $T->set_var('tb_allow_edit_options', TMCE_getBooleanOptions($A['tb_allow_edit']));
    $T->set_var('tb_allow_delete_options', TMCE_getBooleanOptions($A['tb_allow_delete']));
    $T->set_var('tb_allow_folders_options', TMCE_getBooleanOptions($A['tb_allow_folders']));
    $T->set_var('enter_options', TMCE_getEnterOptions($A['enter_function']));
    $T->set_var('group_options', TMCE_getGroupOptions($A['group_id']));
    $T->set_var('token_name', CSRF_TOKEN);
    $T->set_var('token_value', SEC_createToken($_TMCE_CONF['token_expirary']));
    $T->set_var('visibility', $cid === 0 ? 'none' : '');
    $T->parse('output', 'editor');
    return $T->finish($T->get_var('output'));
}
Esempio n. 4
0
function fnclist($pi_name, $template, $group_id, $perpage, $page, $order, $gcode)
{
    global $_CONF;
    global $_TABLES;
    global $_DATABOX_CONF;
    global $perpage;
    global $LANG_DATABOX;
    global $LANG_DATABOX_ADMIN;
    if ($group_id === "") {
        if ($gcode != "") {
            $group_id = DATABOX_codetoid($gcode, 'DATABOX_def_group', "group_id");
        }
    }
    //-----
    if ($page == 0) {
        $page = 1;
    }
    //-----
    $tbl1 = $_TABLES['DATABOX_category'];
    $tbl2 = $_TABLES['DATABOX_base'];
    $tbl3 = $_TABLES['DATABOX_def_category'];
    $tbl4 = $_TABLES['DATABOX_def_group'];
    //@@@@@
    //-----
    $sql = "SELECT " . LB;
    $sql .= " t1.category_id " . LB;
    $sql .= " ,t3.name " . LB;
    $sql .= " ,t3.code " . LB;
    $sql .= " ,t3.description " . LB;
    $sql .= " ,Count(t1.id) AS count" . LB;
    $sql .= " ,t4.name AS group_name " . LB;
    $sql .= " ,t4.group_id " . LB;
    $sql .= " ,t4.code AS group_code " . LB;
    $sql .= " FROM " . LB;
    $sql .= " {$tbl1} AS t1 " . LB;
    $sql .= " ,{$tbl2} AS t2 " . LB;
    $sql .= " ,{$tbl3} AS t3 " . LB;
    $sql .= " ,{$tbl4} AS t4 " . LB;
    $sql .= " WHERE " . LB;
    $sql .= " t1.id = t2.id " . LB;
    $sql .= " AND t1.category_id = t3.category_id " . LB;
    if ($group_id != "") {
        $sql .= " AND t3.categorygroup_id = " . $group_id . LB;
    }
    $sql .= " AND t3.categorygroup_id = t4.group_id " . LB;
    //管理者の時,下書データも含む
    //if ( SEC_hasRights('databox.admin')) {
    //}else{
    $sql .= " AND t2.draft_flag=0" . LB;
    //}
    //アクセス権のないデータ はのぞく
    $sql .= COM_getPermSql('AND', 0, 2, "t2") . LB;
    //公開日以前のデータはのぞく
    $sql .= " AND (released <= NOW())" . LB;
    //公開終了日を過ぎたデータはのぞく
    $sql .= " AND (expired=0 OR expired > NOW())" . LB;
    $sql .= " GROUP BY " . LB;
    $sql .= " t1.category_id" . LB;
    $sql .= " ORDER BY " . LB;
    $sql .= " t4.orderno,t3.orderno" . LB;
    $result = DB_query($sql);
    $cnt = DB_numRows($result);
    $pages = 0;
    if ($perpage > 0) {
        $pages = ceil($cnt / $perpage);
    }
    //ヘッダ、左ブロック
    if ($page > 1) {
        $page_title = sprintf('%s (%d)', $LANG_DATABOX['category_top'], $page);
    } else {
        $page_title = sprintf('%s ', $LANG_DATABOX['category_top']);
    }
    $headercode = "<title>" . $_CONF['site_name'] . " - " . $page_title . "</title>";
    // Meta Tags
    $headercode .= DATABOX_getheadercode("category", $template, $pi_name, 0, $_CONF['site_name'], $_CONF['meta_description'], $_CONF['smeta_keywords'], $_CONF['meta_description']);
    $retval .= DATABOX_siteHeader($pi_name, '', $page_title, $headercode);
    //
    $tmplfld = DATABOX_templatePath('category', $template, $pi_name);
    $templates = new Template($tmplfld);
    $templates->set_file(array('list' => 'list.thtml', 'nav' => 'navigation.thtml', 'row' => 'row.thtml', 'col' => "col.thtml", 'grp' => "grp.thtml", 'pagenav' => 'pagenavigation.thtml'));
    $languageid = COM_getLanguageId();
    $language = COM_getLanguage();
    $templates->set_var('languageid', $languageid);
    $templates->set_var('language', $language);
    if ($languageid != "") {
        $templates->set_var('_languageid', "_" . $languageid);
    } else {
        $templates->set_var('_languageid', "");
    }
    //
    $templates->set_var('site_url', $_CONF['site_url']);
    $templates->set_var('this_script', THIS_SCRIPT);
    $templates->set_var('home', $LANG_DATABOX['home']);
    if ($group_id != "") {
        $group_name = DB_getItem($tbl4, 'name', "group_id = " . $group_id);
        $templates->set_var('lang_category_list_h2', $group_name . $LANG_DATABOX['category_top']);
    } else {
        $templates->set_var('lang_category_list_h2', $LANG_DATABOX['category_top']);
    }
    //page
    $offset = ($page - 1) * $perpage;
    $sql .= " LIMIT {$offset}, {$perpage}";
    $lin1 = $offset + 1;
    $lin2 = $lin1 + $perpage - 1;
    if ($lin2 > $cnt) {
        $lin2 = $cnt;
    }
    $templates->set_var('lang_view', $LANG_DATABOX['view']);
    $templates->set_var('lin', $lin1 . "-" . $lin2);
    $templates->set_var('cnt', $cnt);
    $templates->set_var('lang_name', $LANG_DATABOX_ADMIN['name']);
    $templates->set_var('lang_count', $LANG_DATABOX['count']);
    $result = DB_query($sql);
    $numrows = DB_numRows($result);
    $old_group_name = "";
    if ($numrows > 0) {
        for ($i = 0; $i < $numrows; $i++) {
            $A = DB_fetchArray($result);
            $A = array_map('stripslashes', $A);
            $group_name = COM_applyFilter($A['group_name']);
            $name = COM_applyFilter($A['name']);
            $description = COM_applyFilter($A['description']);
            $url = $_CONF['site_url'] . "/" . THIS_SCRIPT;
            $url .= "?";
            //コード使用の時
            if ($_DATABOX_CONF['categorycode']) {
                $url .= "code=" . $A['code'];
                $url .= "&amp;m=code";
            } else {
                $url .= "id=" . $A['category_id'];
                $url .= "&amp;m=id";
            }
            $url = COM_buildUrl($url);
            $link = COM_createLink($name, $url);
            $templates->set_var('category_link', $link);
            $templates->set_var('category_name', $name);
            $templates->set_var('category_description', $description);
            $templates->set_var('category_url', $url);
            $templates->set_var('count', $A['count']);
            $templates->set_var('category_id', $A['category_id']);
            $templates->set_var('category_code', $A['code']);
            //=====
            if ($old_group_name != $group_name) {
                $url = $_CONF['site_url'] . "/" . THIS_SCRIPT;
                $url .= "?";
                //コード使用の時
                if ($_DATABOX_CONF['groupcode']) {
                    $url .= "gcode=" . $A['group_code'];
                    //@@@@@
                    $url .= "&amp;m=gcode";
                } else {
                    $url .= "gid=" . $A['group_id'];
                    //@@@@@
                    $url .= "&amp;m=gid";
                }
                $url = COM_buildUrl($url);
                $link = COM_createLink($group_name, $url);
                $templates->set_var('group_link', $link);
                $templates->set_var('group_name', $group_name);
                $templates->parse('grp_var', 'grp', true);
                $old_group_name = $group_name;
            }
            $templates->parse('col_var', 'col', true);
            $templates->parse('row_var', 'row', true);
            $templates->set_var('grp_var', '');
            $templates->set_var('col_var', '');
        }
        // Call to plugins to set template variables in the databox
        PLG_templateSetVars('databox', $templates);
        //ページなび
        //$url = $_CONF['site_url']  . '/'.THIS_SCRIPT."?m=".$m;//."?order=$order";
        $url = $_CONF['site_url'] . '/' . THIS_SCRIPT;
        $templates->set_var('page_navigation', COM_printPageNavigation($url, $page, $pages));
        //------------
        $templates->parse('nav_var', 'nav', true);
        $templates->set_var('blockfooter', COM_endBlock());
        $templates->set_var('msg', "");
        $templates->parse('output', 'list');
        $school_content = $templates->finish($templates->get_var('output'));
        $retval .= $school_content;
    } else {
        $templates->set_var('msg', $LANG_DATABOX["nohit"]);
        $templates->parse('output', 'list');
        $content = $templates->finish($templates->get_var('output'));
        $retval .= $content;
    }
    $retval = PLG_replacetags($retval);
    return $retval;
}
Esempio n. 5
0
 /**
  * Show editor
  *
  * @param array $A
  */
 public static function adminShowEditor(array $A = array())
 {
     global $_CONF, $_FINPUT, $LANG_ADMIN, $LANG_LANG, $MESSAGE, $_TABLES;
     self::checkAccessRights();
     $id = $_FINPUT->get('id', $_FINPUT->post('id', 0));
     $id = intval($id, 10);
     if ($id < 1) {
         $id = 0;
     }
     if ($id === 0) {
         $A = self::getEmptyRecord();
     } elseif (count($A) === 0) {
         $sql = "SELECT * FROM {$_TABLES['language_items']} WHERE id = {$id} ";
         $resultSet = DB_query($sql);
         if (DB_numRows($resultSet) == 1) {
             $A = DB_fetchArray($resultSet, false);
         } else {
             $id = 0;
             $A = self::getEmptyRecord();
         }
     } else {
         $id = $A['id'];
     }
     // Get UI language options
     $languageOptions = '';
     $currentLanguage = COM_getLanguage();
     foreach (glob($_CONF['path_language'] . '*.php') as $language) {
         $language = basename($language);
         $language = str_replace('.php', '', $language);
         $isCurrent = $language === $currentLanguage ? ' selected="selected"' : '';
         $languageOptions .= "<option{$isCurrent}>{$language}</option>" . PHP_EOL;
     }
     $isNew = $id === 0;
     if ($isNew) {
         $deleteOption = '';
         $allow_delete = false;
     } else {
         $deleteOption = '<li><input type="submit" value="' . $LANG_ADMIN['delete'] . '" name="mode" class="submit" onclick="return confirm(\'' . $MESSAGE[76] . '\');"' . XHTML . '</li>';
         $allow_delete = true;
     }
     $token = SEC_createToken(self::SEC_TOKEN_LIFESPAN);
     $content = COM_startBlock($LANG_LANG['language_editor'], '', COM_getBlockTemplate('_admin_block', 'header'));
     $content .= SEC_getTokenExpiryNotice($token);
     $editor = COM_newTemplate($_CONF['path_layout'] . 'admin/language');
     $editor->set_file('language_editor', 'language_editor.thtml');
     $editor->set_var(array('id' => $A['id'], 'id_to_display' => $isNew ? 'N/A' : $A['id'], 'var_name' => $A['var_name'], 'language' => $A['language'], 'language_options' => $languageOptions, 'name' => $A['name'], 'value' => $A['value'], 'site_admin_url' => $_CONF['site_admin_url'], 'delete_option' => $deleteOption, 'allow_delete' => $allow_delete, 'lang_language_editor' => $LANG_LANG['language_editor'], 'lang_id' => $LANG_LANG['id'], 'lang_var_name' => $LANG_LANG['var_name'], 'lang_language' => $LANG_LANG['language'], 'lang_name' => $LANG_LANG['name'], 'lang_value' => $LANG_LANG['value'], 'lang_save' => $LANG_ADMIN['save'], 'lang_delete' => $LANG_ADMIN['delete'], 'lang_cancel' => $LANG_ADMIN['cancel'], 'confirm_message' => $MESSAGE[76], 'token_name' => CSRF_TOKEN, 'token_value' => $token));
     $editor->parse('output', 'language_editor');
     $content .= $editor->finish($editor->get_var('output'));
     $content .= COM_endBlock(COM_getBlockTemplate('_admin_block', 'footer'));
     $display = COM_createHTMLDocument($content, array('pagetitle' => 'Language Items'));
     COM_output($display);
 }
//
//   3. 「ヘッダのエンコード方法」を ICONV_MIME_ENCODE や CUSTOM_ENCODE に変え
//      てみる。CUSTOM_ENCODEの場合は、「メールヘッダの1行の長さの最大値」を既
//      定値の76を大きくすることで改善される場合があります。
if (strpos(strtolower($_SERVER['PHP_SELF']), 'custom_mail_japanize.php') !== false) {
    die('This file cannot be used on its own!');
}
global $_CONF, $LANG_CHARSET, $_TABLES;
// デバッグ用
//define('CUSTOM_MAIL_DEBUG', true);
/**
* メールヘッダ・本文で使用するエンコーディング
*
* UI言語を日本語にしている場合のみISO-2022-JPにし、それ以外の場合はutf-8にします。
*/
if (strpos(strtolower(COM_getLanguage()), 'japanese') !== false) {
    define('CUSTOM_MAIL_ENCODING', 'ISO-2022-JP');
} else {
    define('CUSTOM_MAIL_ENCODING', 'utf-8');
}
/**
* ヘッダのエンコード方法
*
* MB_ENCODE_MIMEHEADER: PHPのmb_encode_mimeheader()を使用する(既定値)
*    ICONV_MIME_ENCODE: iconv_mime_encode()を使用する
*        CUSTOM_ENCODE: mb_encode_mimeheader()が正常に動作しないPHPのバージョ
*                       ン(4.3.11, 4.4.0, 4.4.1, 5.0.0~5.1.0など)用に独自の
*                       エンコード方法を使用する
*/
define('CUSTOM_MAIL_HEADER_ENCODE', 'CUSTOM_ENCODE');
// define('CUSTOM_MAIL_HEADER_ENCODE', 'MB_ENCODE_MIMEHEADER');
Esempio n. 7
0
function fnclist($id, $template)
{
    global $_CONF;
    global $_TABLES;
    global $_USER_CONF;
    global $perpage;
    global $LANG_USERBOX;
    global $LANG_USERBOX_ADMIN;
    global $LANG_USERBOX_NOYES;
    //-----
    $page = COM_applyFilter($_REQUEST['page'], true);
    if (!isset($page) or $page == 0) {
        $page = 1;
    }
    $pi_name = "userbox";
    $field_def = DATABOX_getadditiondef($pi_name);
    //-----
    $tbl1 = $_TABLES['USERBOX_addition'];
    $tbl2 = $_TABLES['USERBOX_base'];
    $tbl3 = $_TABLES['USERBOX_def_field'];
    $tbl5 = $_TABLES['users'];
    //-----
    $sql = "SELECT " . LB;
    $sql .= " t1.field_id " . LB;
    $sql .= " ,t1.value " . LB;
    $sql .= " ,t3.name " . LB;
    $sql .= " ,t3.templatesetvar" . LB;
    $sql .= " ,t3.description " . LB;
    $sql .= " ,Count(t1.id) AS count" . LB;
    $sql .= " FROM " . LB;
    $sql .= " {$tbl1} AS t1 " . LB;
    $sql .= " ,{$tbl2} AS t2 " . LB;
    $sql .= " ,{$tbl3} AS t3 " . LB;
    $sql .= " ,{$tbl5} AS t5 " . LB;
    $sql .= " WHERE " . LB;
    $sql .= " t1.value <>''" . LB;
    $sql .= " AND t1.id = t2.id " . LB;
    $sql .= " AND t1.id = t5.uid " . LB;
    $sql .= " AND t1.field_id = t3.field_id " . LB;
    //TYPE[0] = '一行テキストフィールド';
    //TYPE[2] = 'いいえ/はい';
    //TYPE[3] = '日付 (date picker対応)';
    //TYPE[7] = 'オプションリスト';
    //TYPE[8] = 'ラジオボタンリスト';
    //TYPE[9] = 'オプションリスト(マスタ) (既定リスト)';
    $sql .= " AND t3.type IN (0,2,3,4,7,8,9,16) " . LB;
    //ALLOW_DISPLAY[0] ='表示する(orderに指定可能)';
    //ALLOW_DISPLAY[1] ='ログインユーザのみ表示する';
    if (COM_isAnonUser()) {
        $sql .= " AND t3.allow_display=0 " . LB;
    } else {
        $sql .= " AND t3.allow_display IN (0,1) " . LB;
    }
    if ($id != 0) {
        $sql .= " AND t1.field_id = " . $id . LB;
    }
    //管理者の時,下書データも含む
    //if ( SEC_hasRights('userbox.admin')) {
    //}else{
    $sql .= " AND t2.draft_flag=0" . LB;
    //}
    //アクセス権のないデータ はのぞく
    $sql .= COM_getPermSql('AND', 0, 2, "t2") . LB;
    //公開日以前のデータはのぞく
    $sql .= " AND (released <= NOW())" . LB;
    //公開終了日を過ぎたデータはのぞく
    $sql .= " AND (expired=0 OR expired > NOW())" . LB;
    $sql .= " GROUP BY " . LB;
    $sql .= " t1.field_id , t1.value" . LB;
    $sql .= " ORDER BY " . LB;
    $sql .= " t1.field_id,t1.value" . LB;
    $result = DB_query($sql);
    $cnt = DB_numRows($result);
    $pages = 0;
    if ($perpage > 0) {
        $pages = ceil($cnt / $perpage);
    }
    //ヘッダ、左ブロック
    //@@@@@@ 修正要
    if ($id == 0) {
        $w = $LANG_USERBOX['attribute_top'];
        $attribute_top = $w;
        $field_top = "";
        $col = "col.thtml";
    } else {
        $url = $_CONF['site_url'] . "/userbox/attribute.php";
        $attribute_top = ":<a href='" . $url . "'>" . $LANG_USERBOX['attribute_top'] . "</a>";
        $w = $field_def[$id]['name'] . $LANG_USERBOX['countlist'];
        $field_top = $w;
        $col = "col2.thtml";
    }
    if ($page > 1) {
        $page_title = sprintf('%s (%d)', $w, $page);
    } else {
        $page_title = sprintf('%s ', $w);
    }
    $headercode .= DATABOX_getheadercode("attribute", $template, $pi_name, 0, $_CONF['site_name'], $_CONF['meta_description'], $_CONF['meta_keywords'], $_CONF['meta_description']);
    $retval .= DATABOX_siteHeader($pi_name, '', $page_title, $headercode);
    //
    $tmplfld = DATABOX_templatePath('attribute', $template, $pi_name);
    $templates = new Template($tmplfld);
    $templates->set_file(array('list' => 'list.thtml', 'nav' => 'navigation.thtml', 'row' => 'row.thtml', 'col' => $col, 'pagenav' => 'pagenavigation.thtml'));
    $languageid = COM_getLanguageId();
    $language = COM_getLanguage();
    $templates->set_var('languageid', $languageid);
    $templates->set_var('language', $language);
    if ($languageid != "") {
        $templates->set_var('_languageid', "_" . $languageid);
    } else {
        $templates->set_var('_languageid', "");
    }
    //
    $templates->set_var('site_url', $_CONF['site_url']);
    $templates->set_var('this_script', THIS_SCRIPT);
    $templates->set_var('home', $LANG_USERBOX['home']);
    $templates->set_var('attribute_top', $attribute_top);
    $templates->set_var('field_top', $field_top);
    //page
    $offset = ($page - 1) * $perpage;
    $lin1 = $offset + 1;
    $lin2 = $lin1 + $perpage - 1;
    if ($lin2 > $cnt) {
        $lin2 = $cnt;
    }
    $templates->set_var('lang_view', $LANG_USERBOX['view']);
    $templates->set_var('lin', $lin1 . "-" . $lin2);
    $templates->set_var('cnt', $cnt);
    //
    $templates->set_var('lang_name', $LANG_USERBOX_ADMIN['name']);
    $templates->set_var('lang_count', $LANG_USERBOX['count']);
    $sql .= " LIMIT {$offset}, {$perpage}";
    $result = DB_query($sql);
    $numrows = DB_numRows($result);
    if ($numrows > 0) {
        for ($i = 0; $i < $numrows; $i++) {
            $A = DB_fetchArray($result);
            $name = COM_applyFilter($A['name']);
            $description = COM_applyFilter($A['description']);
            $fid = $A["field_id"];
            $value = $A["value"];
            $fieldvalue = DATABOX_getfieldvalue($value, $field_def[$fid]['type'], $field_def[$fid]['selectionary'], $LANG_USERBOX_NOYES, $field_def[$fid]['selectlist'], $pi_name);
            $url = $_CONF['site_url'] . "/" . THIS_SCRIPT;
            $url .= "?";
            $url .= "id=" . $A['field_id'];
            $url .= "&amp;m=id";
            $url2 = $url . "&value=" . $A['value'];
            $url = COM_buildUrl($url);
            $link = COM_createLink($name, $url);
            $url2 = COM_buildUrl($url2);
            $link2 = COM_createLink($fieldvalue, $url2);
            $templates->set_var('field_link', $link);
            $templates->set_var('value_link', $link2);
            $templates->set_var('field_description', $description);
            $templates->set_var('field_name', $name);
            $templates->set_var('field_url', $url);
            $templates->set_var('value_url', $url2);
            $templates->set_var('value', $fieldvalue);
            $templates->set_var('count', $A['count']);
            //=====
            $templates->parse('col_var', 'col', true);
            $templates->parse('row_var', 'row', true);
            $templates->set_var('col_var', '');
        }
        // Call to plugins to set template variables in the databox
        PLG_templateSetVars('userbox', $templates);
        //ページなび
        //$url = $_CONF['site_url']  . '/'.THIS_SCRIPT."?m=".$m;//."?order=$order";
        $url = $_CONF['site_url'] . '/' . THIS_SCRIPT;
        $templates->set_var('page_navigation', COM_printPageNavigation($url, $page, $pages));
        //------------
        $templates->parse('nav_var', 'nav', true);
        $templates->set_var('blockfooter', COM_endBlock());
        $templates->set_var('msg', "");
        $templates->parse('output', 'list');
        $school_content = $templates->finish($templates->get_var('output'));
        $retval .= $school_content;
    } else {
        $templates->set_var('msg', $LANG_USERBOX["nohit"]);
        $templates->parse('output', 'list');
        $content = $templates->finish($templates->get_var('output'));
        $retval .= $content;
    }
    $retval = PLG_replacetags($retval);
    return $retval;
}