web/wp-content/plugins/xili-dictionary/xili-dictionary.php
author Anthony Ly <anthonyly.com@gmail.com>
Tue, 04 Dec 2012 18:43:10 -0800
changeset 196 5e8dcbe22c24
parent 194 32102edaa81b
child 204 09a1c134465b
permissions -rw-r--r--
ajout plugins pour résoudre les messages d'erreurs
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     1
<?php
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     2
/*
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     3
Plugin Name: xili-dictionary
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     4
Plugin URI: http://dev.xiligroup.com/xili-dictionary/
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
     5
Description: A tool using wordpress's CPT and taxonomy for localized themes or multilingual themes managed by xili-language - a powerful tool to create .mo file(s) on the fly in the theme's folder and more... - ONLY for >= WP 3.2.1 - 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
     6
Author: dev.xiligroup - MS
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
     7
Version: 2.2.0
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     8
Author URI: http://dev.xiligroup.com
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
     9
License: GPLv2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    10
Text Domain: xili-dictionary
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    11
Domain Path: /languages/
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    12
*/
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    13
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    14
# 2.2.0 - 120922 - fixes issues with .mo and .po inserts - better messages and warning
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    15
# 2.1.3 - 120728 - fixes
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    16
# 2.1.2 - 120715 - list in msg edit - new query - new metabox - new pointers - ...
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    17
# 2.1.1 - 120710 - fixes - new icons
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    18
# 2.1.0 - 120507 - options to save on new local-xx_XX.mo and more... needs XL 2.6
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    19
# 2.0.0 - 120417 - repository as current
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    20
# beta 2.0.0-rc4 - 120415 - fixes
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    21
# beta 2.0.0-rc3 - 120406 - pre-tests  WP3.4: fixes metaboxes columns, conditional edit link in list
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    22
# beta 2.0.0-rc2 - 120402 - latest fixes (writers)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    23
# beta 2.0.0-rc1 - 120318 - before svn
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    24
# beta 2.0.0 - 120219 - new way of saving lines in CPT
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    25
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    26
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    27
#
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    28
# now msg lines full commented as in .po
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    29
# now translated lines (msgstr) attached to same taxonomy as xili-language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    30
# before upgrading from 1.4.4 to 2.0, export all the dictionary in .po files and empty the dictionary.
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    31
#
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    32
# beta 1.4.4 - 111221 - fixes
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    33
# between 0.9.3 and 1.4.4 see version 1.4.4 - 20120219
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    34
# beta 0.9.3 - first published - 090131 MS
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    35
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    36
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    37
define('XILIDICTIONARY_VER','2.2.0');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    38
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    39
include_once(ABSPATH . WPINC . '/pomo/po.php'); /* not included in wp-settings */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    40
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    41
// the class
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    42
class xili_dictionary {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    43
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    44
	var $plugin_url = ''; // Url to this plugin - see construct
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    45
	var $plugin_path = ''; // The path to this plugin - see construct
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    46
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    47
	var $subselect = ''; /* used to subselect by msgid or languages*/
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    48
	var $searchtranslated = ''; /* used to search untranslated - 2.1.2 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    49
	var $languages_key_slug = array(); // used for slug to other items
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    50
	var $msg_action_message = '';
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    51
	var $xililanguage = ''; /* neveractive isactive wasactive */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    52
	var $xililanguage_ms = false;  // xlms
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    53
	var $tempoutput = "";
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    54
	var $langfolder =''; /* where po or mo files */
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    55
	var $xili_settings; /* saved in options */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    56
	var $ossep = "/"; /* for recursive file search in xamp */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    57
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    58
	// 2.0 new vars
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    59
	var $xdmsg = "xdmsg";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    60
	var $xd_settings_page = "edit.php?post_type=xdmsg&amp;page=dictionary_page"; // now in CPT menu
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    61
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    62
	// post meta
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    63
	var $ctxt_meta = '_xdmsg_ctxt'; // to change to xdctxt
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    64
	var $msgtype_meta = '_xdmsg_msgtype'; // to hidden
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    65
	var $msgchild_meta = '_xdmsg_msgchild';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    66
	var $msglang_meta = '_xdmsg_msglangs';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    67
	var $msgidlang_meta = '_xdmsg_msgid_id'; // origin of the msgstr
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    68
	var $msg_extracted_comments = '_xdmsg_extracted_comments';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    69
	var $msg_translator_comments = '_xdmsg_translator_comments';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    70
	var $msg_flags = '_xdmsg_flags';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    71
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    72
	var $origin_theme = ""; // used when importing
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    73
	var $local_tag = '[local]';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    74
	var $exists_style_ext = false;  // wp_enqueue_style( 'xili_dictionary_stylesheet' ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    75
	var $style_message = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    76
	var $xilidev_folder = '/xilidev-libraries'; //must be in plugins
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    77
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    78
	var $theme_mos = array(); // $this->get_pomo_from_theme();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    79
 	var $local_mos = array() ; // $this->get_pomo_from_theme( true ); // 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    80
 	//	is_multisite
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    81
 	var $file_site_mos = array() ; // $this->get_pomo_from_site(); // since 1.2.0 - mo of site
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    82
 	var $file_site_local_mos = array() ; // $this->get_pomo_from_site( true ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    83
 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    84
	var $default_langs_array = array(); // default languages
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    85
	var $internal_list = false; // created by xl or xd
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    86
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    87
	var $importing_mode = false ; // for new action by hand ( action save when new )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    88
	var $msg_str_labels = array (
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    89
		'msgid' => 'msgid', 'msgid_plural' => 'msgid_plural', 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    90
		'msgstr' => 'msgstr', 'msgstr_0' => 'msgstr[0]', 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    91
		'msgstr_1' => 'msgstr[1]', 'msgstr_2' => 'msgstr[2]', 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    92
		'msgstr_3' => 'msgstr[3]', 'msgstr_4' => 'msgstr[4]'  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    93
		) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    94
	var $importing_po_comments = '' ;	// mode replace or append 2.0-rc2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    95
	var $create_line_lang = ''; // line between box
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    96
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    97
	var $langs_group_id; /* group ID and Term Taxo ID */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    98
	var $langs_group_tt_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
    99
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   100
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   101
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   102
	public function xili_dictionary( $langsfolder = '/' ) { // ?? php4
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   103
		$this->__construct( $langsfolder );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   104
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   105
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   106
	public function __construct( $langsfolder = '/' ) {	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   107
		global $wp_version;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   108
		/* activated when first activation of plug */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   109
		// 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   110
		define ( 'XDMSG', $this->xdmsg ); // CPT to change from msg to xdmsg (less generic) 20120217
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   111
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   112
		$this->plugin_path = plugin_dir_path(__FILE__) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   113
		$this->plugin_url = plugins_url('', __FILE__) ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   114
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   115
		register_activation_hook( __FILE__, array( &$this,'xili_dictionary_activation') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   116
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   117
		$this->ossep = strtoupper(substr(PHP_OS,0,3)=='WIN')?'\\':'/'; /* for rare xamp servers*/
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   118
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   119
		/* get current settings - name of taxonomy - name of query-tag */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   120
		$this->xililanguage_state();
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   121
		$this->xili_settings = get_option('xili_dictionary_settings'); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   122
		if(empty($this->xili_settings) || $this->xili_settings['taxonomy'] != 'dictionary') { // to fix
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   123
			$this->xili_dictionary_activation();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   124
			$this->xili_settings = get_option('xili_dictionary_settings');			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   125
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   126
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   127
		/* test if version changed */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   128
		$version = $this->xili_settings['version'];
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   129
		if ( $version <= '0.2' ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   130
				/* update relationships for grouping existing dictionary terms */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   131
			$this->update_terms_langs_grouping();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   132
			$this->xili_settings['version'] = '1.0';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   133
			update_option('xili_dictionary_settings', $this->xili_settings);
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   134
		} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   135
		if ( $version == '1.0' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   136
			$this->xili_settings['external_xd_style'] = "off";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   137
			$this->xili_settings['version'] = '2.0';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   138
			update_option('xili_dictionary_settings', $this->xili_settings);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   139
		} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   140
		if ( $version == '2.0' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   141
			$this->update_postmeta_msgid();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   142
			$this->xili_settings['version'] = '2.1';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   143
			update_option('xili_dictionary_settings', $this->xili_settings);
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   144
		}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   145
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   146
		$this->fill_default_languages_list();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   147
		/* Actions */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   148
		/* admin */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   149
		add_action( 'admin_init', array(&$this,'admin_init') ); // 1.3.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   150
		add_action( 'admin_init', array(&$this,'ext_style_init') ); // 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   151
		add_action( 'admin_menu', array(&$this,'xili_add_dict_pages') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   152
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   153
		add_action( 'add_meta_boxes', array(&$this, 'add_custom_box_in_post_msg') ); // 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   154
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   155
		add_action( 'init', array(&$this, 'xili_dictionary_register_taxonomies')); // and init
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   156
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   157
		add_action( 'init', array(&$this, 'post_type_msg') ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   158
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   159
		if ( is_admin() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   160
		 	add_filter( 'manage_posts_columns', array(&$this,'xili_manage_column_name') ,9 , 1);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   161
			add_filter( "manage_pages_custom_column", array(&$this,'xili_manage_column_row'), 9, 2); // hierarchic
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   162
			add_filter( 'manage_edit-'.XDMSG.'_sortable_columns', array(&$this,'msgcontent_column_register_sortable') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   163
			add_filter( 'request', array(&$this,'msgcontent_column_orderby' ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   164
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   165
			if ( !class_exists ('xili_language' ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   166
				add_action( 'restrict_manage_posts', array(&$this,'restrict_manage_languages_posts') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   167
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   168
			add_action( 'restrict_manage_posts', array(&$this,'restrict_manage_writer_posts'), 11 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   169
			add_action( 'restrict_manage_posts', array(&$this,'restrict_manage_origin_posts'), 10 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   170
			add_action( 'pre_get_posts', array(&$this,'wpse6066_pre_get_posts' ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   171
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   172
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   173
			add_action( 'wp_print_scripts', array(&$this,'auto_save_unsetting' ), 2 ); // before other
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   174
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   175
			add_filter( 'user_can_richedit', array(&$this, 'disable_richedit_for_cpt') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   176
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   177
			if ( defined ('WP_DEBUG') &&  WP_DEBUG != true ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   178
				add_filter( 'page_row_actions', array(&$this, 'remove_quick_edit'), 10, 1); // before to solve metas column
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   179
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   180
			add_action( 'save_post', array(&$this, 'custom_post_type_title'),11 ,2); // 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   181
			add_action( 'save_post', array(&$this, 'msgid_post_new_create'),12 ,2 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   182
			add_action( 'save_post', array(&$this, 'update_msg_comments'),13, 2 ); // comments and contexts
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   183
			add_filter( 'post_updated_messages', array(&$this, 'msg_post_messages'));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   184
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   185
			add_action( 'before_delete_post', array(&$this, 'msgid_post_links_delete') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   186
			add_action( 'admin_print_styles-post.php', array(&$this, 'print_styles_xdmsg_edit') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   187
			add_action( 'admin_print_styles-post-new.php', array(&$this, 'print_styles_xdmsg_edit') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   188
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   189
			add_action( 'admin_print_styles-post.php', array(&$this,'admin_enqueue_styles') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   190
			add_action( 'admin_print_scripts-post.php', array(&$this,'admin_enqueue_scripts') );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   191
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   192
			add_action( 'admin_print_styles-edit.php', array(&$this, 'print_styles_xdmsg_list') ); // list of msgs
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   193
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   194
			add_action( 'admin_print_styles-xdmsg_page_dictionary_page', array(&$this, 'print_styles_xdmsg_tool') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   195
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   196
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   197
			add_action( 'add_meta_boxes_' . XDMSG, array(&$this, 'msg_update_action')); // to locally update files from editing...
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   198
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   199
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   200
		add_filter( 'plugin_action_links',  array(&$this,'xilidict_filter_plugin_actions'), 10, 2);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   201
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   202
		/* special to detect theme changing since 1.1.9 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   203
		add_action( 'switch_theme', array(&$this,'xd_theme_switched') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   204
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   205
		add_action( 'contextual_help', array(&$this,'add_help_text'), 10, 3 ); /* 1.2.2 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   206
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   207
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   208
		if ( class_exists('xili_language_ms') ) $this->xililanguage_ms = true; // 1.3.4
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   209
										
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   210
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   211
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   212
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   213
	/* wp 3.0 WP-net */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   214
	function xili_dictionary_register_taxonomies () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   215
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   216
		if ( is_admin() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   217
			global $wp_roles;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   218
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   219
			if ( current_user_can ('activate_plugins') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   220
				$wp_roles->add_cap ('administrator', 'xili_dictionary_set');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   221
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   222
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   223
		if (function_exists('is_child_theme') && is_child_theme() ) { // move here from init 1.4.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   224
			if ( isset( $this->xili_settings['langs_in_root_theme'] ) && $this->xili_settings['langs_in_root_theme'] == 'root' ) { // for future uses
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   225
				$this->get_template_directory = get_template_directory();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   226
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   227
				$this->get_template_directory = get_stylesheet_directory();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   228
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   229
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   230
			$this->get_template_directory = get_template_directory();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   231
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   232
		$this->init_textdomain();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   233
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   234
		// new method for languages 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   235
		$this->internal_list = $this->default_language_taxonomy ();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   236
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   237
		if ( $this->internal_list ) { // test if empty
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   238
			$listlanguages = get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   239
			if ( $listlanguages == array() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   240
				$this->create_default_languages();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   241
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   242
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   243
		$thegroup = get_terms( TAXOLANGSGROUP, array('hide_empty' => false,'slug' => 'the-langs-group'));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   244
		if ( $thegroup != array() ) { // notice on first start
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   245
			$this->langs_group_id = $thegroup[0]->term_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   246
			$this->langs_group_tt_id = $thegroup[0]->term_taxonomy_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   247
		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   248
	}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   249
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   250
	function xili_dictionary_activation() {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   251
		$this->xili_settings = get_option('xili_dictionary_settings'); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   252
		if ( empty($this->xili_settings) || $this->xili_settings['taxonomy'] != 'dictionary') { // to fix
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   253
			$submitted_settings = array(
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   254
		    	'taxonomy'		=> 'dictionary',
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   255
		    	'langs_folder' => '',
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   256
		    	'external_xd_style' => 'off',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   257
		    	'version' 		=> '2.1'
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   258
	    	);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   259
			update_option('xili_dictionary_settings', $submitted_settings);	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   260
		} 			 	    
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   261
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
   262
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   263
	function post_type_msg() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   264
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   265
		$labels = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   266
	    'name' => _x('xili-dictionary©', 'post type general name', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   267
	    'singular_name' => _x('Msg', 'post type singular name', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   268
	    'add_new' => __('New msgid', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   269
	    'add_new_item' => __('Add New Msgid', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   270
	    'edit_item' => __('Edit Msg', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   271
	    'new_item' => __('New Msg', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   272
	    'view_item' => __('View Msg', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   273
	    'search_items' => __('Search Msg', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   274
	    'not_found' =>  __('No Msg found', 'xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   275
	    'not_found_in_trash' => __('No Msg found in Trash', 'xili-dictionary'), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   276
	    'parent_item_colon' => ''
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   277
	  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   278
	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   279
	  // impossible to see in front-end (no display in edit list)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   280
	  $args = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   281
	    'labels' => $labels,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   282
	    'public' => false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   283
	    'publicly_queryable' => false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   284
	    '_edit_link' => 'post.php?post=%d',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   285
		'_builtin' => false, 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   286
	    'show_ui' => true, 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   287
	    'query_var' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   288
	    'rewrite' => false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   289
	    'capability_type' => 'post',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   290
	    'show_in_menu' => current_user_can ('xili_dictionary_set'), // ?? if not admin
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   291
	    'hierarchical' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   292
	    'menu_position' => null,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   293
	    'supports' => array('author','editor', 'excerpt','custom-fields','page-attributes'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   294
	    'taxonomies' => array ('appearance', 'writer', 'origin' ),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   295
	    'rewrite' => array( 'slug' => XDMSG, 'with_front' => FALSE, ),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   296
	    'menu_icon' => plugins_url( 'images/xilidico-logo-16.jpg', __FILE__ ) // 16px16
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   297
	 ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   298
	  	register_post_type(XDMSG,$args);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   299
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   300
	 	register_taxonomy( 'writer', array(XDMSG), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   301
	 		array( 'hierarchical' => true, 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   302
	 			'label' => __('Writer','xili-dictionary'), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   303
	 			'rewrite' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   304
	 			'query_var' => 'writer_name',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   305
	 			'public' => false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   306
				'show_ui' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   307
	 			) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   308
	 	);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   309
	 	/*
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   310
	 	register_taxonomy( 'appearance', array(XDMSG), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   311
	 		array( 'hierarchical' => true,  // theme and child 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   312
	 			'label' => __('Theme','xili-dictionary'), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   313
	 			'rewrite' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   314
	 			'query_var' => 'theme_slug',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   315
	 			'public' => false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   316
				'show_ui' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   317
	 			) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   318
	 	);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   319
	 	*/
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   320
		register_taxonomy( 'origin', array(XDMSG),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   321
			array('hierarchical' => false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   322
			 	'label' => __('Origin','xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   323
			 	'query_var' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   324
			 	'rewrite' => array('slug' => 'origin' )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   325
			)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   326
		);	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   327
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   328
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   329
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   330
	 * register language taxonomy if no xili_language - 'update_count_callback' => array(&$this, '_update_post_lang_count'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   331
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   332
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   333
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   334
	function default_language_taxonomy () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   335
		if ( ! defined ( 'TAXONAME' )  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   336
			if ( ! defined ( 'QUETAG' ) ) define ('QUETAG', 'lang');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   337
			define ('TAXONAME', 'language');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   338
			register_taxonomy( TAXONAME, 'post', array('hierarchical' => false, 'label' => false, 'rewrite' => false ,  'show_ui' => false, '_builtin' => false, 'query_var' => QUETAG ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   339
			define('TAXOLANGSGROUP', 'languages_group');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   340
			register_taxonomy( TAXOLANGSGROUP, 'term', array('hierarchical' => false, 'update_count_callback' => '', 'show_ui' => false, 'label'=>false, 'rewrite' => false, '_builtin' => false ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   341
			$thegroup = get_terms(TAXOLANGSGROUP, array('hide_empty' => false,'slug' => 'the-langs-group'));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   342
			if ( array() == $thegroup ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   343
				$args = array( 'alias_of' => '', 'description' => 'the group of languages', 'parent' => 0, 'slug' =>'the-langs-group');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   344
				wp_insert_term( 'the-langs-group', TAXOLANGSGROUP, $args); /* create and link to existing langs */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   345
			}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   346
			return true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   347
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   348
			return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   349
		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   350
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   351
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   352
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   353
	 * add styles in edit msg screenstyle="clear:both; border-top:1px solid #666;"
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   354
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   355
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   356
	 function print_styles_xdmsg_edit ( ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   357
	 	global $post; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   358
	 	if ( get_post_type( $post->ID ) == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   359
			echo '<!---- xd css ----->'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   360
			echo '<style type="text/css" media="screen">'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   361
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   362
			echo '#msg-states { width:69%;  float:left; border:0px solid red; padding-bottom: 10px}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   363
			echo '#msg-states-comments { width:27%; margin-left: 70%; border-left:0px #666 solid;  padding:10px 10px 0;  }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   364
			echo '#msg-states-actions { background:#ffffff; clear:left; padding: 8px 5px; margin-top:5px; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   365
			echo '.xdversion { font-size:80%; text-align:right; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   366
			echo '.msg-states-actions-left { float:left; padding: 8px 0px; overflow:hidden; width:50% }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   367
			echo '.msg-states-actions-right { float:left; padding: 8px 0px; width:50% }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   368
			echo '.alert { color:red;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   369
			echo '.editing { color:blue; background:yellow;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   370
			echo '.msgidstyle { line-height:200% !important; font-size:120%; padding:4px 10px 6px;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   371
			echo '.msgstrstyle { line-height:180% !important; font-size:110%; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   372
			echo '.msg-saved { background:#ffffff !important; border:1px dotted #999; padding:5px; margin-bottom:5px;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   373
			echo '.column-msgtrans {width: 20%;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   374
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   375
			// buttons
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   376
			echo '.action-button {text-decoration:none; text-align:center; display:block; width:70%; margin:0px 1px 1px 30px; padding:4px 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   377
			echo '.blue-button {border:1px #33f solid;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   378
			echo '.grey-button {border:1px #ccc solid;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   379
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   380
			echo '</style>'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   381
			if ( $this->exists_style_ext && $this->xili_settings['external_xd_style'] == "on" ) wp_enqueue_style( 'xili_dictionary_stylesheet' ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   382
	 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   383
	 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   384
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   385
	 /**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   386
	 * add styles in list of msgs screen icon32-posts-xdmsg
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   387
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   388
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   389
	 function print_styles_xdmsg_list ( ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   390
	 	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   391
	 	if ( isset( $_GET['post_type']) && $_GET['post_type'] == XDMSG ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   392
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   393
	 		echo '<!---- xd css ----->'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   394
			echo '<style type="text/css" media="screen">'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   395
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   396
	 		echo '.alert { color:red;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   397
	 		echo '.column-language { width: 80px; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   398
	 		echo '.column-msgcontent { width: 40%; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   399
	 		echo '.column-msgpostmeta { width: 150px; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   400
	 		echo '.column-author { width: 80px !important; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   401
	 		echo '.column-title { width: 160px !important; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   402
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   403
	 		echo '#icon-edit.icon32-posts-xdmsg { background:transparent url('.plugins_url( 'images/xilidico-logo-32.jpg', __FILE__ ) . ') no-repeat !important ; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   404
			echo '</style>'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   405
			if ( $this->exists_style_ext && $this->xili_settings['external_xd_style'] == "on" ) wp_enqueue_style( 'xili_dictionary_stylesheet' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   406
 	    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   407
	 	}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   408
	 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   409
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   410
	 /**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   411
	 * add styles in tool screen
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   412
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   413
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   414
	 function print_styles_xdmsg_tool ( ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   415
	 	echo '<!---- xd css ----->'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   416
		echo '<style type="text/css" media="screen">'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   417
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   418
		echo '.dialoglang { float:left; width:25%; border:0px solid grey; margin: 5px; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   419
		echo '.dialogfile { float:left; width:37%; min-height:80px; border:0px solid grey; padding: 10px 5px 10px 20px; } '."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   420
		echo '.dialogorigin { float:left; width:32%; min-height:80px; border:0px solid grey; padding: 10px 5px 10px 10px; } '."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   421
		echo '.dialogbbt {clear:left; text-align:right; }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   422
		echo 'table.checktheme { width:95%; margin-left:10px;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   423
	 	echo 'table.checktheme>tr>td { width:45% }'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   424
	 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   425
	 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   426
	 	// buttons
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   427
		echo '.action-button {text-decoration:none; text-align:center; display:block; width:70%; margin:0px 1px 1px 30px; padding:4px 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   428
		echo '.small-action-button {text-decoration:none; text-align:center; display:inline-block; width:16%; margin:0px 1px 1px 10px; padding:4px 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;  border:1px #ccc solid;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   429
		echo '.blue-button {border:1px #33f solid;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   430
		echo '.grey-button {border:1px #ccc solid;}'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   431
	 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   432
	 	echo '</style>'."\n";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   433
	 	if ( $this->exists_style_ext && $this->xili_settings['external_xd_style'] == "on" ) wp_enqueue_style( 'xili_dictionary_stylesheet' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   434
	 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   435
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   436
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   437
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   438
	 * style for new dashboard
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   439
	 * @since 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   440
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   441
	 */	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   442
	function ext_style_init () {  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   443
				// test successively style file in theme, plugins, current plugin subfolder
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   444
		if ( file_exists ( get_stylesheet_directory().'/xili-css/xd-style.css' ) ) { // in child theme
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   445
				$this->exists_style_ext = true; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   446
				$this->style_folder = get_stylesheet_directory_uri();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   447
				$this->style_flag_folder_path = get_stylesheet_directory () . '/images/flags/';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   448
				$this->style_message = __( 'xd-style.css is in sub-folder xili-css of current theme folder', 'xili-dictionary' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   449
		} elseif ( file_exists( WP_PLUGIN_DIR . $this->xilidev_folder . '/xili-css/xd-style.css' ) ) { // in plugin xilidev-libraries
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   450
				$this->exists_style_ext = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   451
				$this->style_folder = plugins_url() . $this->xilidev_folder;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   452
				$this->style_flag_folder_path = WP_PLUGIN_DIR . $this->xilidev_folder . '/xili-css/flags/' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   453
				$this->style_message = sprintf( __( 'xd-style.css is in sub-folder xili-css of %s folder', 'xili-dictionary' ), $this->style_folder ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   454
		} elseif ( file_exists ( $this->plugin_path.'/xili-css/xd-style.css' ) ) { // in current plugin
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   455
				$this->exists_style_ext = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   456
				$this->style_folder = $this->plugin_url ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   457
				$this->style_flag_folder_path = $this->plugin_path . '/xili-css/flags/' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   458
				$this->style_message = __( 'xd-style.css is in sub-folder xili-css of xili-dictionary plugin folder (example)', 'xili-dictionary' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   459
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   460
				$this->style_message = __( 'no xd-style.css', 'xili-dictionary' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   461
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   462
		if ( $this->exists_style_ext ) wp_register_style( 'xili_dictionary_stylesheet', $this->style_folder . '/xili-css/xd-style.css' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   463
	} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   464
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   465
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   466
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   467
	 * create default languages if no xili_language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   468
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   469
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   470
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   471
	function create_default_languages () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   472
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   473
		$this->default_langs_array = array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   474
			'en_us' => array('en_US', 'english'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   475
			'fr_fr' => array('fr_FR', 'french'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   476
			'de_de' => array('de_DE', 'german'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   477
			'es_es' => array('es_ES', 'spanish'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   478
			'it_it' => array('it_IT', 'italian'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   479
			'pt_pt' => array('pt_PT', 'portuguese'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   480
			'ru_ru' => array('ru_RU', 'russian'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   481
			'zh_cn' => array('zh_CN', 'chinese'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   482
			'ja' => array('ja', 'japanese'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   483
			'ar_ar' => array('ar_AR', 'arabic')
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   484
		);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   485
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   486
		$term = 'en_US';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   487
		$args = array( 'alias_of' => '', 'description' => 'english', 'parent' => 0, 'slug' =>'en_us');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   488
		$theids = $this->safe_lang_term_creation ( $term, $args );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   489
		wp_set_object_terms($theids['term_id'], 'the-langs-group', TAXOLANGSGROUP);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   490
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   491
		/* default values */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   492
		if ( ''!= WPLANG && ( strlen( WPLANG )==5 || strlen( WPLANG ) == 2 ) ) : // for japanese
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   493
			$this->default_lang = WPLANG;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   494
		else:
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   495
			$this->default_lang = 'en_US';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   496
		endif;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   497
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   498
		$term = $this->default_lang;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   499
		$desc = $this->default_lang;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   500
 		$slug = strtolower( $this->default_lang ) ; // 2.3.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   501
 		if (!defined('WPLANG') || $this->default_lang == 'en_US' || $this->default_lang == '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   502
 			$term = 'fr_FR'; $desc = 'French'; $slug = 'fr_fr' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   503
 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   504
 		$args = array( 'alias_of' => '', 'description' => $desc, 'parent' => 0, 'slug' => $slug);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   505
 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   506
 		$theids = $this->safe_lang_term_creation ( $term, $args ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   507
 		wp_set_object_terms($theids['term_id'], 'the-langs-group', TAXOLANGSGROUP);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   508
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   509
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   510
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   511
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   512
	 * Safe language term creation (if XL inactive)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   513
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   514
	 * @since 2.0 (from XL 2.4.1) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   515
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   516
	 function safe_lang_term_creation ( $term, $args ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   517
	 	global $wpdb ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   518
		// test if exists with other slug or name 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   519
		if ( $term_id = term_exists( $term ) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   520
			$existing_term = $wpdb->get_row( $wpdb->prepare( "SELECT name, slug FROM $wpdb->terms WHERE term_id = %d", $term_id), ARRAY_A );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   521
			if ( $existing_term['slug'] != $args['slug'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   522
				$res = wp_insert_term( $term.'xl', TAXONAME, $args); // temp insert with temp other name
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   523
				$args['name'] = $term ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   524
				$res = wp_update_term( $res['term_id'], TAXONAME, $args);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   525
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   526
				return new WP_Error('term_exists', __('A term with the name provided already exists.'), $term_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   527
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   528
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   529
			$res = wp_insert_term( $term, TAXONAME, $args);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   530
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   531
		if (is_wp_error($res)) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   532
			return $res ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   533
		} else { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   534
			$theids = $res;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   535
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   536
		return $theids ;		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   537
	 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   538
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   539
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   540
	 * call from filter disable_richedit
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   541
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   542
	 * disable rich editor in msg cpt
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   543
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   544
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   545
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   546
	 */ 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   547
	function disable_richedit_for_cpt ( $default ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   548
    	global $post;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   549
    	if ( XDMSG == get_post_type( $post ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   550
        	return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   551
    	return $default;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   552
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   553
	function remove_quick_edit( $actions ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   554
		if ( isset ( $_GET['post_type'] ) &&  $_GET['post_type'] == XDMSG ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   555
			unset($actions['inline hide-if-no-js']);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   556
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   557
		return $actions;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   558
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   559
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   560
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   561
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   562
	 * call from filter save_post
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   563
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   564
	 * save content in title - fixes empty msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   565
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   566
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   567
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   568
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   569
	function custom_post_type_title ( $post_id, $post ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   570
    	global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   571
    	if ( get_post_type( $post_id ) == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   572
    		$where = array( 'ID' => $post_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   573
        	$what = array ();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   574
        	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   575
        	if ( false === strpos( $post->post_title, 'MSG:' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   576
        		$title = 'MSG:'.$post_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   577
        		$what['post_title'] = $title ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   578
        	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   579
        	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   580
        	if ( $post->post_content == '' )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   581
        		$what['post_content'] = "XD say: do not save empty ".$post_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   582
        	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   583
        	if ( $what != array() ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   584
        			$wpdb->update( $wpdb->posts, $what, $where );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   585
    	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   586
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   587
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   588
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   589
	 * clean msgid postmeta before deleting
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   590
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   591
	function msgid_post_links_delete ( $post_id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   592
		// type of msg
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   593
		if ( get_post_type( $post_id ) == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   594
			$type  = get_post_meta ( $post_id, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   595
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   596
			if ( $type == 'msgid_plural' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   597
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   598
				$parent = get_post($post_id)->post_parent;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   599
				$res = get_post_meta ( $parent, $this->msgchild_meta, false );     
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   600
				$thechilds =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   601
				if ( $res != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   602
					unset ( $thechilds['msgid']['plural'] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   603
					update_post_meta ( $parent, $this->msgchild_meta, $thechilds );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   604
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   605
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   606
			} elseif ( $type != 'msgid' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   607
				$langs = get_the_terms( $post_id, TAXONAME ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   608
				$target_lang = $langs[0]->name ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   609
				// id of msg id or parent
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   610
				if ( $type == 'msgstr' && $target_lang != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   611
					$msgid_ID = get_post_meta ( $post_id, $this->msgidlang_meta , true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   612
					$res = get_post_meta ( $msgid_ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   613
					$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   614
					if ( $res != '' && is_array ( $thelangs ) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   615
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   616
						unset ( $thelangs['msgstrlangs'][$target_lang]['msgstr'] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   617
						update_post_meta ( $msgid_ID, $this->msglang_meta, $thelangs ); // update id post_meta
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   618
					}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   619
				} elseif ( false !== strpos( $type, 'msgstr_' ) && $target_lang != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   620
					$indices = explode ('_', $type);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   621
					$msgid_ID = get_post_meta ( $post_id, $this->msgidlang_meta , true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   622
					if ( $indices[1] == 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   623
						$res = get_post_meta ( $msgid_ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   624
						$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   625
						if ( $res != '' && is_array ( $thelangs ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   626
							unset ( $thelangs['msgstrlangs'][$target_lang]['msgstr_0'] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   627
							// delete childs or trash ??
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   628
							// ?? recursive 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   629
							update_post_meta ( $msgid_ID, $this->msglang_meta, $thelangs ); // update id post_meta
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   630
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   631
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   632
						$res = get_post_meta ( $msgid_ID, $this->msglang_meta, false ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   633
						$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   634
						if ( $res != '' && is_array ( $thelangs )  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   635
							if ( isset ( $thelangs['msgstrlangs'][$target_lang]['msgstr_0'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   636
								$parent = $thelangs['msgstrlangs'][$target_lang]['msgstr_0'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   637
								$res = get_post_meta ( $parent, $this->msgchild_meta, false );     
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   638
								$thechilds =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   639
								if ( $res != '' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   640
									unset ( $thechilds['msgstr']['plural'][$indices[1]] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   641
									update_post_meta ( $parent, $this->msgchild_meta, $thechilds );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   642
								}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   643
							}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   644
						}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   645
					} // indice > 0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   646
				} // str plural
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   647
			} // msgstr
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   648
		} // XDMSG
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   649
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   650
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   651
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   652
	 * a new msgid is created manually
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   653
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   654
	function msgid_post_new_create ( $post_id, $post ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   655
		global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   656
		if ( isset($_POST['_inline_edit']) ) return;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   657
		if ( isset( $_GET['bulk_edit']) ) return;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   658
		if ( get_post_type( $post_id ) == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   659
			if ( !wp_is_post_revision( $post_id ) && $this->importing_mode != true ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   660
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   661
				//$temp_post = $this->temp_get_post ( $post_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   662
				$type = get_post_meta ( $post_id, $this->msgtype_meta, true ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   663
				if (  $type == "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   664
					update_post_meta ( $post_id, $this->msgtype_meta, 'msgid' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   665
					update_post_meta ( $post_id, $this->msglang_meta, array() );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   666
					update_post_meta ( $post_id, $this->msg_extracted_comments, $this->local_tag . ' '); // 2.2.0 local by default if hand created
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   667
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   668
				$result = $this->msgid_exists ( $post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   669
				if ( $result === false ||  $result[0] == $post_id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   670
					return ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   671
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   672
					if ( $type ==  get_post_meta ( $result[0], $this->msgtype_meta, true ) && $type == 'msgid') {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   673
 						$newcontent = sprintf( __('msgid exists as %d with content: %s','xili-dictionary'), $result[0], $post->post_content ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   674
						$where = array( 'ID' => $post_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   675
	        			$wpdb->update( $wpdb->posts, array( 'post_content' => $newcontent ), $where );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   676
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   677
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   678
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   679
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   680
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   681
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   682
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   683
	 * Main "dashboard" box in msg edit to display and link the series of msg
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   684
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   685
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   686
	 * @updated 2.1.2 - called by action add_meta_boxes
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   687
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   688
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   689
	function add_custom_box_in_post_msg () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   690
		$singular_name = __('series','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   691
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   692
		add_meta_box('msg_state', sprintf(__("msg %s",'xili-dictionary'), $singular_name), array(&$this,'msg_state_box'), XDMSG , 'normal','high');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   693
		if ( get_current_screen()->action != 'add' ) { // only for edit not new
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   694
			add_meta_box('msg_untranslated_list', sprintf(__("List of MSG %s to translate",'xili-dictionary'), $singular_name), array(&$this,'msg_untranslated_list_box'), XDMSG , 'normal','high');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   695
			add_meta_box('msg_tools_shortcuts', __("Shortcuts to update mo files",'xili-dictionary'), array(&$this,'msg_tools_shortcuts_box'), XDMSG , 'side','high');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   696
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   697
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   698
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   699
	function mo_files_array () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   700
		$this->theme_mos = $this->get_pomo_from_theme();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   701
 		$this->local_mos = $this->get_pomo_from_theme( true ); // 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   702
 		if ( is_multisite() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   703
 			$this->file_site_mos = $this->get_pomo_from_site(); // since 1.2.0 - mo of site
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   704
 			$this->file_site_local_mos = $this->get_pomo_from_site( true ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   705
 		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   706
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   707
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   708
	function get_list_languages () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   709
		$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   710
		$this->languages_key_slug = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   711
	  	foreach ( $listlanguages as $language ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   712
	  		$this->languages_key_slug[$language->slug] = array ('name'=>$language->name, 'description'=>$language->description );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   713
	  	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   714
	  	return $listlanguages;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   715
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   716
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   717
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   718
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   719
	 * display shortcut links to update mo
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   720
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   721
	 * called add_meta_box('msg_tools_shortcuts'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   722
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   723
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   724
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   725
	function msg_tools_shortcuts_box ( $post ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   726
		$post_ID = $post->ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   727
		$lang = $this->cur_lang ( $post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   728
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   729
	  	if ( $lang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   730
	  		$link_theme_mo = wp_nonce_url (admin_url().'post.php?post='.$post_ID.'&action=edit&msgupdate=updatetheme&langstr='.$lang->name.'&message=33', 'xd-updatemo');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   731
	  		$link_local_mo = wp_nonce_url (admin_url().'post.php?post='.$post_ID.'&action=edit&msgupdate=updatelocal&langstr='.$lang->name.'&message=34', 'xd-updatemo');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   732
	  		if ( function_exists('is_child_theme') && is_child_theme() ) { // 1.8.1 and WP 3.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   733
				$theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   734
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   735
				$theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   736
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   737
	  		echo '<p>' . sprintf(__('This msg translation is in %1$s (%2$s)','xili-dictionary'),$lang->description, $lang->name).'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   738
	  		echo '<h4>'. __('Updating shortcuts', 'xili-dictionary').'</h4>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   739
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   740
	  		if ( $this->count_msgids ( $lang->name, true ) > 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   741
	  			echo '<p>' . sprintf('<a class="action-button blue-button" onClick="verifybefore(1)" href="%2$s" >'.__('Update','xili-dictionary').' local-%3$s.mo</a>','#', '#', $lang->name).'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   742
	  		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   743
	  			echo '<p class="action-button grey-button">' . sprintf( __('No local translated msgid to be saved in %s','xili-dictionary'), ' local-'.$lang->name.'.mo' ) . '</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   744
	  		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   745
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   746
	  		echo '<p>' . sprintf(__('It is possible to update the .mo files of current theme %s','xili-dictionary'), '<strong>'.$theme_name.'</strong>' ).'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   747
	  		echo '<p><em>' . __('Before to use this button, it is very important that you verify that your term list is quite achieved inside the dictionary. It is because the original .mo delivered with theme is updated (erased) !!!', 'xili-dictionary') .'</em></p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   748
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   749
	  		if ( $this->count_msgids ( $lang->name, false, $theme_name ) > 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   750
	  			echo '<p>' . sprintf('<a class="action-button grey-button" onClick="verifybefore(0)" href="%1$s" >'.__('Update','xili-dictionary').' %3$s.mo</a>','#', '#', $lang->name).'</p>'; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   751
	  		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   752
	  			echo '<p class="action-button grey-button">' . sprintf( __('No translated msgid to be saved in %s','xili-dictionary'), $lang->name.'.mo' ) . '</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   753
	  		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   754
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   755
	  		//echo '<p>- ' . sprintf('<a href="%1$s" >%3$s.mo</a><br />- <a  href="%2$s" >'.__('local','xili-dictionary').'-%3$s.mo</a>',$link_theme_mo, $link_local_mo, $lang->name).'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   756
	  		echo '<small>'.$this->msg_action_message.'</small>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   757
	  	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   758
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   759
	  		echo '<p>' . __('Links are available if a translation (msgstr) is edited.','xili-dictionary').'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   760
	  	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   761
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   762
	  	if ( $lang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   763
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   764
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   765
		<p class="xdversion">XD v. <?php echo XILIDICTIONARY_VER; ?></p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   766
		<script type="text/javascript">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   767
function verifybefore(id) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   768
  var link = new Array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   769
  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   770
  link[0] = "<?php echo str_replace('amp;','', $link_theme_mo); ?>";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   771
  link[1] = "<?php echo str_replace('amp;','', $link_local_mo); ?>";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   772
  var confirmmessage = "<?php _e('Are you sure you want to update mo ? ', 'xili-dictionary'); ?>";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   773
  var message = "Action Was Cancelled By User " ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   774
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   775
  if (confirm(confirmmessage)) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   776
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   777
      window.location = link[id];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   778
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   779
  } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   780
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   781
      // alert(message);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   782
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   783
  }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   784
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   785
}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   786
</script>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   787
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   788
	  	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   789
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   790
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   791
	// add messages  called by add_filter( 'post_updated_messages' @since 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   792
	function msg_post_messages ( $messages ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   793
		$messages['post'][33] = __('MO file updating started: see result in meta-box named - Shortcuts... - below buttons', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   794
		$messages['post'][34] = __('Local MO updating started: see result in meta-box named - Shortcuts... - below buttons', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   795
		return $messages;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   796
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   797
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   798
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   799
	 * update current .mo
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   800
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   801
	 * called add_action( 'add_meta_boxes_' . XDMSG
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   802
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   803
	 * to have values before metaboxes built
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   804
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   805
	function msg_update_action ( $post ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   806
		$extract_array = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   807
		$langfolderset = $this->xili_settings['langs_folder'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   808
	  	$this->langfolder = ( $langfolderset !='' )  ? $langfolderset.'/' : '/';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   809
		// doublon 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   810
	  	$this->langfolder = str_replace ("//","/", $this->langfolder ); // upgrading... 2.0 and sub folder sub
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   811
		if ( isset ($_GET['msgupdate'] ) && isset ($_GET['langstr']) ) { // shortcut to update .mo - 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   812
			check_admin_referer( 'xd-updatemo' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   813
			$filetype = $_GET['msgupdate'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   814
			$selectlang = $_GET['langstr'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   815
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   816
			if ( is_multisite() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   817
				if (($uploads = xili_upload_dir()) && false === $uploads['error'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   818
  						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   819
 					if ( $filetype == 'updatelocal' ) { // only current site - need tools for other superadmin place
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   820
 						$local = 'local-';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   821
     					$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   822
	     				$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   823
     					$file = $uploads['path']."/local-".$selectlang.".mo" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   824
     					 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   825
     				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   826
     					if ( is_child_theme() ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   827
							$theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   828
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   829
							$theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   830
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   831
			     		$extract_array [ 'origin' ] = array( $theme_name ); // only if assigned to current theme domain
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   832
     					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   833
     					$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   834
     					$file = $uploads['path']."/".$selectlang.".mo" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   835
		     			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   836
     				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   837
  					$mo = $this->from_cpt_to_POMO_wpmu ( $selectlang, 'mo', true, $extract_array );  // do diff if not superadmin
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   838
  				} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   839
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   840
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   841
			} else { // standalone
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   842
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   843
		     	if ( $filetype == 'updatelocal' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   844
		     		$local = 'local-';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   845
		     		$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   846
		     		$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   847
		     		$file = $this->get_template_directory.$this->langfolder.'local-'.$selectlang.'.mo' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   848
		     		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   849
		     	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   850
		     		if ( is_child_theme() ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   851
						$theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   852
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   853
						$theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   854
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   855
		     		$extract_array [ 'origin' ] = array( $theme_name );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   856
		     		$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   857
		     		$file = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   858
		     	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   859
		     	$mo = $this->from_cpt_to_POMO ( $selectlang, 'mo', $extract_array );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   860
   			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   861
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   862
	     	if ( count ($mo->entries) > 0 ){
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   863
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   864
	     		if ( false === $this->Save_MO_to_file ( $selectlang , $mo, $file ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   865
					$this->msg_action_message = sprintf('<span class="alert">'.__('Error with File %s !', 'xili-dictionary').'</span> ('.$file.')', $local.$selectlang.'.mo');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   866
	     		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   867
	     			$this->msg_action_message = sprintf(__('File %1s updated with %2s msgids', 'xili-dictionary'), $local.$selectlang.'.mo', count ($mo->entries) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   868
	     		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   869
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   870
	     	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   871
	     		$this->msg_action_message = sprintf('<span class="alert">'.__('Nothing modified in %s, file not updated', 'xili-dictionary').'</span>', $local.$selectlang.'.mo');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   872
	     	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   873
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   874
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   875
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   876
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   877
	// the first lang of msgstr or false for msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   878
	function cur_lang ( $post_ID ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   879
		$langs = wp_get_object_terms( $post_ID, TAXONAME);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   880
		if ( ! is_wp_error( $langs ) && ! empty( $langs ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   881
			return $langs[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   882
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   883
		return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   884
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   885
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   886
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   887
	 * Normal metabox : List to display untranslated msgid in target lang like msgstr currently displayed
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   888
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   889
	 * @since 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   890
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   891
	function msg_untranslated_list_box ( $post ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   892
		$post_ID = $post->ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   893
	  	$type  = get_post_meta ( $post_ID, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   894
	  	$msglang = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   895
 		$message = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   896
 		$arraylink = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   897
 		$sortparent = (($this->subselect == '') ? '' : '&amp;tagsgroup_parent_select='.$this->subselect );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   898
		$listlanguages = $this->get_list_languages();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   899
	  	foreach ( $listlanguages as $language ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   900
	  		$arraylink[] = sprintf( '<a href="%s" >'.$language->name.'</a>', 'post.php?post='.$post_ID.'&action=edit&workinglang='.$language->slug );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   901
	  	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   902
	  	$listlink = implode (' ', $arraylink );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   903
	  	$working_lang = ( isset ($_GET['workinglang']) ) ? $_GET['workinglang'] : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   904
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   905
	  	if ( $type == 'msgstr' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   906
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   907
	  		$lang = $this->cur_lang ( $post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   908
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   909
	  		if ( $lang ) $msglang = $lang->slug ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   910
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   911
	  		$this->subselect = ( $working_lang == '' ) ? $msglang : $working_lang ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   912
			$this->searchtranslated = 'not';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   913
			$message = sprintf(__('MSGs not translated in %1$s. <em>Sub-select in %2$s</em>', 'xili-dictionary' ), $this->languages_key_slug[$this->subselect]['name'], $listlink ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   914
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   915
	  	} else { // msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   916
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   917
	  		$this->subselect = $working_lang;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   918
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   919
	  		$message = ( $working_lang == '' ) ? sprintf( __('No selection: Sub-select in %s', 'xili-dictionary' ), $listlink ) : sprintf(__('MSGs not translated in %1$s. <em>Sub-select in %2$s</em>', 'xili-dictionary' ), $_GET['workinglang'], $listlink );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   920
			$this->searchtranslated = ( $working_lang == '' ) ? '' : 'not' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   921
	  	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   922
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   923
	?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   924
		<p><?php echo $message ; ?></p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   925
		<div id="topbanner">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   926
		</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   927
		<div id="tableupdating">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   928
		</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   929
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   930
		<table class="display" id="linestable">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   931
			<thead>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   932
				<tr>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   933
					<th scope="col" class="center colid"><a href="<?php echo $this->xd_settings_page; ?>" ><?php _e('ID') ?></a></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   934
					<th scope="col" class="coltexte"><a href="<?php echo $this->xd_settings_page.'&amp;orderby=name'.$sortparent; ?>"><?php _e('Text') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   935
					</th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   936
					<th scope="col" class="colslug"><?php _e('Metas','xili-dictionary') ?></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   937
					<th scope="col" class="colgroup center"><?php _e('Save status','xili-dictionary') ?></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   938
					<th colspan="2"><?php _e('Action') ?></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   939
				</tr>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   940
			</thead>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   941
			<tbody id="the-list">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   942
					<?php 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   943
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   944
					$this->xili_dict_cpt_row(); /* the lines */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   945
					?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   946
			</tbody>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   947
		</table>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   948
		<div id="bottombanner">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   949
		</div> 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   950
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   951
		$this->insert_js_for_datatable( array('swidth2'=>'50%') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   952
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   953
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   954
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   955
	 * insert js for datatable - used in post and in tools
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   956
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   957
	 * @since 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   958
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   959
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   960
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   961
	function insert_js_for_datatable( $args ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   962
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   963
		<script type="text/javascript">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   964
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   965
			//<![CDATA[
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   966
			jQuery(document).ready( function($) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   967
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   968
				var termsTable = $('#linestable').dataTable( {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   969
					"iDisplayLength": 20,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   970
					"bStateSave": true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   971
					"bAutoWidth": false,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   972
					"sDom": '<"topbanner"ipf>rt<"bottombanner"lp><"clear">',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   973
					"sPaginationType": "full_numbers",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   974
					"aLengthMenu": [[20, 30, 60, -1], [20, 30, 60, "<?php _e('All lines','xili-dictionary') ?>"]],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   975
					"oLanguage": {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   976
						"oPaginate": {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   977
							"sFirst": "<?php _e('First','xili-dictionary') ?>",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   978
							"sLast": "<?php _e('Last page','xili-dictionary') ?>",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   979
							"sNext": "<?php _e('Next','xili-dictionary') ?>",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   980
							"sPrevious": "<?php _e('Previous','xili-dictionary') ?>"
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   981
						},
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   982
						"sInfo": "<?php _e('Showing (_START_ to _END_) of _TOTAL_ entries','xili-dictionary') ?>",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   983
						"sInfoFiltered": "<?php _e('(filtered from _MAX_ total entries)','xili-dictionary') ?>",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   984
						"sLengthMenu": "<?php _e('Show _MENU_ entries','xili-dictionary') ?>",
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   985
						"sSearch": "<?php _e('Filter terms:','xili-dictionary') ?>"
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   986
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   987
					},	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   988
					"aaSorting": [[1,'asc']],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   989
					"aoColumns": [ 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   990
						{ "bSearchable": false, "sWidth" : "30px" },
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   991
						{ "sWidth" : "<?php echo $args['swidth2']; ?>" },
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   992
						{ "bSortable": false, "bSearchable": false  },
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   993
						{ "bSortable": false, "bSearchable": false,  "sWidth" : "105px" },
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   994
						{ "bSortable": false, "bSearchable": false, "sWidth" : "70px" } ]
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   995
				} );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   996
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   997
				// close postboxes that should be closed
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   998
				$('.if-js-closed').removeClass('if-js-closed').addClass('closed');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
   999
				// postboxes setup
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1000
				postboxes.add_postbox_toggles('<?php echo $this->thehook; ?>');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1001
				// for text_area list
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1002
				});
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1003
			//]]>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1004
		</script> 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1005
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1006
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1007
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1008
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1009
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1010
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1011
	function msg_state_box () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1012
	  global $post_ID, $post ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1013
	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1014
	  $type  = get_post_meta ( $post_ID, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1015
	  //error_log (  '----'.$this->langfolder);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1016
	  //$langfolderset = $this->xili_settings['langs_folder'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1017
	  //$this->langfolder = ( $langfolderset !='' )  ? $langfolderset.'/' : '/';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1018
		// doublon 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1019
	  //$this->langfolder = str_replace ("//","/", $this->langfolder ); // upgrading... 2.0 and sub folder sub
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1020
	  $this->mo_files_array (); //error_log( serialize( $this->theme_mos ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1021
	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1022
	  ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1023
<div id="msg-states">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1024
	  <?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1025
	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1026
	  $this->msg_status_display ( $post_ID ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1027
	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1028
	  ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1029
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1030
<div id="msg-states-comments">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1031
	  <?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1032
	  $for_bottom_box = $this->msg_status_comments ( $post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1033
	 	?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1034
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1035
<div id="msg-states-actions" >
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1036
	<strong><?php _e( 'Informations and actions about files .po / mo', 'xili-dictionary' ); echo ':</strong><br />'; ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1037
	<div class="msg-states-actions-left" >
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1038
	<?php echo $for_bottom_box['link'] .'<br />'; ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1039
	<?php $origins = get_the_terms( $post_ID, 'origin' ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1040
	$names = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1041
	if ( $origins ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1042
		foreach ( $origins as $origin ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1043
			$names[] = $origin->name;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1044
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1045
		echo __( 'Come from theme(s):', 'xili-dictionary') .' '. implode (' ', $names).'<br />';;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1046
	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1047
		if ( !$for_bottom_box['state'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1048
			if ( $type == 'msgid' ) _e ( 'Not yet assigned', 'xili-dictionary') ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1049
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1050
	} ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1051
	</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1052
	<div class="msg-states-actions-right" >
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1053
	<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1054
 		$context  = get_post_meta ( $post_ID, $this->ctxt_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1055
 		$res = $this->is_saved_cpt_in_theme( htmlspecialchars_decode ($post->post_content), $type, $context );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1056
		$save_state = '<br />'. ( ( false === strpos ( $res[0], '**</span>' ) ) ? sprintf( __('theme folder %s','xili-dictionary') ,$res[0]) : ''  ) . ( ( false == strpos ( $res[2], '?</span>' ) ) ? ' (local: '.$res[2].')' : '' ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1057
 		if ( is_multisite() ) $save_state .= '<br />'. __('this site','xili-dictionary') . ( ( false === strpos ( $res[1], '**</span>' ) ) ? sprintf( __('folder %s','xili-dictionary') ,$res[1]) : ' ' )  . ( ( false == strpos ( $res[3], '?</span>' ) ) ? ' (local: '.$res[3].')' : '' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1058
 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1059
 		echo $type.' <em>' . $post->post_content . '</em> ' . __('saved in ','xili-dictionary') . $save_state;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1060
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1061
	?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1062
	</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1063
	<p class="xdversion">XD v. <?php echo XILIDICTIONARY_VER; ?></p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1064
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1065
	  <?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1066
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1067
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1068
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1069
	 * test unique content for msgid + context
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1070
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1071
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1072
	 * @return ID is true
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1073
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1074
	function msgid_exists ( $content = "", $ctxt = null ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1075
		global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1076
		if ( $content != "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1077
			if ( null == $ctxt) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1078
				$posts_query = $wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_content = %s AND post_type = %s", $content, XDMSG );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1079
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1080
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1081
				$posts_query = $wpdb->prepare("SELECT ID FROM $wpdb->posts INNER JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id) INNER JOIN $wpdb->postmeta as mt1 ON ($wpdb->posts.ID = mt1.post_id) WHERE post_content = %s AND post_type = %s AND $wpdb->postmeta.meta_key= '{$this->ctxt_meta}' AND mt1.meta_key= '{$this->ctxt_meta}' AND mt1.meta_value = %s ", $content, XDMSG, $ctxt);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1082
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1083
			// 2.2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1084
			$found_posts = $wpdb->get_col($posts_query);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1085
			if ( empty($found_posts) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1086
			   return false;	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1087
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1088
			   return $found_posts;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1089
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1090
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1091
		 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1092
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1093
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1094
	 * test unique content for msgstr + msgid + language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1095
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1096
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1097
	 * @return ID is true
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1098
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1099
	function msgstr_exists ( $content = "", $msgid, $curlang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1100
		global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1101
		if ( "" != $content) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1102
			$posts_query = $wpdb->prepare("SELECT ID FROM $wpdb->posts INNER JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id) INNER JOIN $wpdb->postmeta as mt1 ON ($wpdb->posts.ID = mt1.post_id) WHERE post_content = %s AND post_type = %s AND $wpdb->postmeta.meta_key='{$this->msgidlang_meta}' AND mt1.meta_key='{$this->msgidlang_meta}' AND mt1.meta_value = %s ", $content, XDMSG, $msgid);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1103
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1104
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1105
			$found_posts = $wpdb->get_col($posts_query);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1106
			if ( empty($found_posts) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1107
		   		return false;	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1108
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1109
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1110
				if ( in_array ( $curlang , wp_get_object_terms( $found_posts, TAXONAME, array ( 'fields' => 'names' ) ) ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1111
					// select only this with $curlang 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1112
					return $found_posts ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1113
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1114
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1115
		   			return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1116
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1117
		   		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1118
			}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1119
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1120
		return false;  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1121
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1122
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1123
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1124
	 * import po and mo in cpts series
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1125
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1126
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1127
	 * @return 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1128
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1129
	function from_pomo_to_cpts ( $po, $curlang = 'en_US' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1130
		$nblines = array( 0, 0); // id, str count
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1131
		$this->importing_mode = true ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1132
		foreach ( $po->entries as $pomsgid => $pomsgstr ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1133
			// test if msgid exists
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1134
			$result = $this->msgid_exists ( $pomsgstr->singular, $pomsgstr->context ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1135
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1136
			if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1137
				// create the msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1138
				$type = 'msgid';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1139
				$msgid_post_ID = $this->insert_one_cpt_and_meta( $pomsgstr->singular, $pomsgstr->context, $type, 0, $pomsgstr ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1140
				$nblines[0]++ ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1141
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1142
				$msgid_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1143
				if ( $this->importing_po_comments != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1144
					$this->insert_comments( $msgid_post_ID, $pomsgstr, $this->importing_po_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1145
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1146
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1147
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1148
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1149
			// add origin taxonomy
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1150
			if ( ''!= $this->origin_theme ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1151
				wp_set_object_terms( $msgid_post_ID, $this->origin_theme, 'origin', true ); // true to append to existing
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1152
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1153
			if ( $pomsgstr->is_plural != null ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1154
				// create msgid plural (child of msgid)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1155
				// $pomsgstr->plural, $msgid_post_ID
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1156
				$result = $this->msgid_exists ( $pomsgstr->plural ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1157
				if ( $result === false ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1158
				      $msgid_post_ID_plural = $this->insert_one_cpt_and_meta( $pomsgstr->plural, null, 'msgid_plural' , $msgid_post_ID, $pomsgstr );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1159
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1160
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1161
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1162
			// create msgstr - taxonomy 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1163
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1164
			if ( $pomsgstr->is_plural == null ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1165
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1166
				$msgstr_content = ( isset( $pomsgstr->translations[0]) ) ? $pomsgstr->translations[0] : "" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1167
				if ( $msgstr_content != "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1168
					// test exists with taxo before
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1169
					$result = $this->msgstr_exists ( $msgstr_content, $msgid_post_ID, $curlang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1170
					if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1171
						$msgstr_post_ID = $this->insert_one_cpt_and_meta( $msgstr_content, null, 'msgstr', 0, $pomsgstr );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1172
						wp_set_object_terms( $msgstr_post_ID, $curlang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1173
						$nblines[1]++ ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1174
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1175
						$msgstr_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1176
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1177
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1178
				// create link according lang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1179
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1180
					$res = get_post_meta ( $msgid_post_ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1181
					$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1182
					$thelangs['msgstrlangs'][$curlang]['msgstr'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1183
					update_post_meta ( $msgid_post_ID, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1184
					update_post_meta ( $msgstr_post_ID, $this->msgidlang_meta, $msgid_post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1185
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1186
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1187
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1188
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1189
				// $pomsgstr->translations 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1190
				$i=0; $parentplural = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1191
				foreach ( $pomsgstr->translations as $onetranslation ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1192
					$msgstr_plural = 'msgstr_' . $i ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1193
					$parent = ( $i == 0 ) ? 0 : $parentplural ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1194
					if ( $onetranslation != "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1195
						// test exists with taxo before
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1196
						$result = $this->msgstr_exists ( $onetranslation, $msgid_post_ID, $curlang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1197
						if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1198
					 		$msgstr_post_ID_plural = $this->insert_one_cpt_and_meta( $onetranslation, null, $msgstr_plural , $parent, $pomsgstr );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1199
							wp_set_object_terms( $msgstr_post_ID_plural, $curlang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1200
							$nblines[1]++ ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1201
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1202
							$msgstr_post_ID_plural = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1203
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1204
						update_post_meta ( $msgstr_post_ID_plural, $this->msgidlang_meta, $msgid_post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1205
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1206
			 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1207
					if ( $i == 0 ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1208
						$parentplural = $msgstr_post_ID_plural; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1209
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1210
						// create link according lang in msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1211
						$res = get_post_meta ( $msgid_post_ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1212
						$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1213
						$thelangs['msgstrlangs'][$curlang][$msgstr_plural] = $msgstr_post_ID_plural;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1214
						update_post_meta ( $msgid_post_ID, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1215
												
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1216
					} // only first str
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1217
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1218
					$i++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1219
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1220
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1221
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1222
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1223
		$this->importing_mode = false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1224
		return $nblines;	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  1225
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  1226
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1227
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1228
	 * import a msg line 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1229
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1230
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1231
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1232
	 * @updated 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1233
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1234
	 * @return ID
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1235
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1236
	function insert_one_cpt_and_meta ( $content, $context = null, $type , $parent = 0, $entry = null  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1237
		global $user_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1238
		/* 	if (!empty($entry->translator_comments)) $po[] = PO::comment_block($entry->translator_comments);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1239
				if (!empty($entry->extracted_comments)) $po[] = PO::comment_block($entry->extracted_comments, '.');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1240
				if (!empty($entry->references)) $po[] = PO::comment_block(implode(' ', $entry->references), ':');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1241
				if (!empty($entry->flags)) $po[] = PO::comment_block(implode(", ", $entry->flags), ',');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1242
			*/
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1243
		if ( null != $entry ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1244
			$references = (!empty($entry->references)) ? implode ( ' #: ' ,  $entry->references ) : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1245
			$flags = (!empty($entry->flags)) ? implode ( ', ' ,  $entry->flags ) : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1246
			$extracted_comments =  (!empty($entry->extracted_comments)) ? $entry->extracted_comments : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1247
			$translator_comments = (!empty($entry->translator_comments)) ? $entry->translator_comments : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1248
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1249
			$references = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1250
			$flags = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1251
			$extracted_comments = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1252
			$translator_comments = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1253
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1254
		} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1255
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1256
		$params = array('post_status' => 'publish', 'post_type' => XDMSG, 'post_author' => $user_ID,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1257
		'ping_status' => get_option('default_ping_status'), 'post_parent' => $parent,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1258
		'menu_order' => 0, 'to_ping' =>  '', 'pinged' => '', 'post_password' => '',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1259
		'guid' => '', 'post_content_filtered' => '', 'post_excerpt' => $references, 'import_id' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1260
		'post_content' => $content, 'post_title' => '');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1261
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1262
		$post_id = wp_insert_post( $params ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1263
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1264
		if ( $post_id != 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1265
			if ( $context != null ) // postmeta
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1266
				update_post_meta ( $post_id, $this->ctxt_meta, $context );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1267
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1268
		// type postmeta
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1269
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1270
			update_post_meta ( $post_id, $this->msgtype_meta, $type );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1271
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1272
			if ( $type == 'msgid' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1273
				if ( $extracted_comments != "" ) update_post_meta ( $post_id, $this->msg_extracted_comments, $extracted_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1274
				if ( $translator_comments != "") update_post_meta ( $post_id, $this->msg_translator_comments, $translator_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1275
				if ( $flags != "") 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1276
					update_post_meta ( $post_id, $this->msg_flags, $flags );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1277
				update_post_meta ( $post_id, $this->msglang_meta, array() ); // 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1278
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1279
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1280
			if ( $type == 'msgstr' || $type == 'msgstr_0' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1281
				if ( $translator_comments != "") update_post_meta ( $post_id, $this->msg_translator_comments, $translator_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1282
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1283
		// update postmeta children
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1284
		// create array
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1285
			if ( $parent != 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1286
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1287
				$res = get_post_meta ( $parent, $this->msgchild_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1288
				$thechilds =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1289
				if ( $type == 'msgid_plural' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1290
					$thechilds['msgid']['plural'] = $post_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1291
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1292
				} elseif ( $type != 'msgstr' ){
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1293
					$indices = explode ('_', $type);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1294
					$thechilds['msgstr']['plural'][$indices[1]] = $post_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1295
				}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1296
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1297
				update_post_meta ( $parent, $this->msgchild_meta, $thechilds );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1298
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1299
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1300
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1301
		return $post_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1302
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1303
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1304
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1305
	 * insert comments of msgid / msgstr
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1306
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1307
	 * called by from_pomo_to_cpts
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1308
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1309
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1310
	function insert_comments( $post_id, $entry, $import_comment_mode = 'replace' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1311
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1312
		$references = (!empty($entry->references)) ? implode ( ' #: ' ,  $entry->references ) : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1313
		$flags = (!empty($entry->flags)) ? implode ( ', ' ,  $entry->flags ) : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1314
		$extracted_comments =  (!empty($entry->extracted_comments)) ? $entry->extracted_comments : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1315
		$translator_comments = (!empty($entry->translator_comments)) ? $entry->translator_comments : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1316
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1317
		if ( $import_comment_mode == 'replace' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1318
			// update references in excerpt
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1319
			$postarr = wp_get_single_post( $post_id, ARRAY_A ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1320
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1321
			$postarr['post_excerpt'] = $references;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1322
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1323
			wp_insert_post( $postarr );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1324
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1325
			// update comments in meta
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1326
			if ( $extracted_comments != "" ) update_post_meta ( $post_id, $this->msg_extracted_comments, $extracted_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1327
			if ( $translator_comments != "") update_post_meta ( $post_id, $this->msg_translator_comments, $translator_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1328
			if ( $flags != "") update_post_meta ( $post_id, $this->msg_flags, $flags );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1329
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1330
		} elseif ( $import_comment_mode == 'append' ) { // don't erase existing comments - can be risked
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1331
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1332
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1333
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1334
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1335
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1336
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1337
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1338
	 * new columns in cpt list
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1339
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1340
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1341
	function xili_manage_column_name( $columns ) { // must be verified
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1342
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1343
		if ( isset ( $_GET['post_type'] ) &&  $_GET['post_type'] == XDMSG )   { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1344
		 	$ends = array('author', 'date', 'rel', 'visible');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1345
			$end = array(); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1346
			foreach( $columns AS $k=>$v ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1347
				if ( in_array($k, $ends) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1348
					$end[$k] = $v;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1349
					unset($columns[$k]);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1350
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1351
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1352
			$columns['msgcontent'] = __('Content','xili-dictionary'); // ? sortable ?
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1353
			$columns['msgpostmeta'] = __('Metas','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1354
			if ( !class_exists ( 'xili_language' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1355
				$columns[TAXONAME] = __('Language','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1356
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1357
			$columns = array_merge($columns, $end);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1358
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1359
		return $columns;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1360
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1361
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1362
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1363
	function xili_manage_column_row  ( $column , $id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1364
		global $post;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1365
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1366
		if ($column == 'msgcontent' && $post->post_type == XDMSG ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1367
			echo htmlspecialchars( $post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1368
		if ($column == 'msgpostmeta' && $post->post_type == XDMSG ) {	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1369
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1370
			$this->msg_link_display ( $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1371
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1372
		if ($column == 'language' && $post->post_type == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1373
			if ( !class_exists ( 'xili_language' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1374
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1375
				$lang = $this->cur_lang( $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1376
 				echo $lang->name;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1377
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1378
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1379
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1380
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1381
		return;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1382
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1383
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1384
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1385
	// Register the column as sortable
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1386
	function msgcontent_column_register_sortable( $columns ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1387
		$columns['msgcontent'] = 'msgcontent';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1388
 		$columns['msgpostmeta'] = 'msgpostmeta';	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1389
		return $columns;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1390
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1391
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1392
	function msgcontent_column_orderby( $vars ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1393
		if ( isset( $vars['orderby'] ) && 'msgpostmeta' == $vars['orderby'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1394
			$vars = array_merge( $vars, array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1395
				'meta_key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1396
				'orderby' => 'meta_value'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1397
			) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1398
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1399
 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1400
		return $vars;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1401
	}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1402
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1403
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1404
	 * Add Languages selector in edit.php edit after Category Selector (hook: restrict_manage_posts) only if no XL
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1405
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1406
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1407
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1408
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1409
	function restrict_manage_languages_posts () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1410
		$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1411
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1412
<select name="lang" id="lang" class='postform'>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1413
	<option value=""> <?php _e('View all languages','xili-dictionary') ?> </option>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1414
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1415
			<?php foreach ($listlanguages as $language)  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1416
				$selected = ( isset ( $_GET[QUETAG] ) && $language->slug == $_GET[QUETAG] ) ? "selected=selected" : "" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1417
				echo '<option value="'.$language->slug.'" '.$selected.' >'.__($language->description, 'xili-dictionary').'</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1418
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1419
			?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1420
</select>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1421
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1422
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1423
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1424
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1425
	 * Add Origin selector in edit.php edit 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1426
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1427
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1428
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1429
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1430
	function restrict_manage_origin_posts () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1431
		if ( isset ( $_GET['post_type'] ) && $_GET['post_type'] == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1432
			$listorigins = get_terms('origin', array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1433
			if ( $listorigins != array() )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1434
				$selected = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1435
				if ( isset ( $_GET['origin'] )  ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1436
					$selected = $_GET['origin'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1437
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1438
				$dropdown_options = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1439
						'taxonomy' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1440
						'show_option_all' => __( 'View all origins', 'xili-dictionary' ),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1441
						'hide_empty' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1442
						'hierarchical' => 1,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1443
						'show_count' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1444
						'orderby' => 'name',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1445
						'name' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1446
						'selected' => $selected
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1447
					);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1448
				wp_dropdown_categories( $dropdown_options );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1449
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1450
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1451
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1452
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1453
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1454
	 * Add writer selector in edit.php edit 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1455
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1456
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1457
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1458
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1459
	function restrict_manage_writer_posts () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1460
		if ( isset ( $_GET['post_type'] ) && $_GET['post_type'] == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1461
			$listwriters = get_terms('writer', array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1462
			if ( $listwriters != array() )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1463
				$selected = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1464
				if ( isset ( $_GET['writer_name'] )  ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1465
					$selected = $_GET['writer_name'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1466
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1467
				$dropdown_options = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1468
						'taxonomy' => 'writer',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1469
						'show_option_all' => __( 'View all writers', 'xili-dictionary' ),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1470
						'hide_empty' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1471
						'hierarchical' => 1,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1472
						'show_count' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1473
						'orderby' => 'name',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1474
						'name' => 'writer_name',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1475
						'selected' => $selected
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1476
					);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1477
				wp_dropdown_categories( $dropdown_options );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1478
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1479
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1480
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1481
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1482
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1483
	 * to fixes wp_dropdown_categories id value in option
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1484
	 * thanks to http://wordpress.stackexchange.com/questions/6066/query-custom-taxonomy-by-term-id 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1485
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1486
	function wpse6066_pre_get_posts( &$wp_query ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1487
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1488
    	if ( $wp_query->is_tax ) {  ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1489
        	if ( is_numeric( $wp_query->get( 'writer_name' ) ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1490
            	// Convert numberic terms to term slugs for dropdown
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1491
            	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1492
            	$term = get_term_by( 'term_id', $wp_query->get( 'writer_name' ), 'writer' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1493
         
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1494
            	if ( $term ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1495
                	$wp_query->set( 'writer_name', $term->slug );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1496
            	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1497
        	} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1498
        	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1499
        	if ( is_numeric( $wp_query->get( 'origin' ) ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1500
        		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1501
        		// Convert numberic terms to term slugs for dropdown
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1502
            	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1503
            	$term = get_term_by( 'term_id', $wp_query->get( 'origin' ), 'origin' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1504
         
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1505
            	if ( $term ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1506
                	$wp_query->set( 'origin', $term->slug );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1507
            	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1508
        	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1509
    	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1510
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1511
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1512
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1513
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1514
	 * display msg comments
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1515
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1516
	 * @param post ID 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1517
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1518
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1519
	function msg_status_comments ( $id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1520
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1521
		$type  = get_post_meta ( $id, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1522
		// search msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1523
		if ( $type == 'msgid' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1524
			$target_id = $id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1525
		} elseif ( $type == 'msgid_plural' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1526
			$temp_post = $this->temp_get_post ( $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1527
			$target_id = $temp_post->post_parent;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1528
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1529
			$target_id = get_post_meta ( $id, $this->msgidlang_meta, true);	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1530
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1531
		$for_bottom_box = array('link'=> '','state' => false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1532
		if ( $temp_post = $this->temp_get_post ( $target_id ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1533
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1534
			$ctxt = get_post_meta ( $target_id, $this->ctxt_meta, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1535
			if ( $ctxt != "" && $type != 'msgid' ) printf ( '<strong>ctxt:</strong> %s <br /><br />'  , $ctxt );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1536
			if ( $type == 'msgid' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1537
				if ( isset ($_GET['msgaction'] ) && $_GET['msgaction'] == 'addctxt' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1538
					?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1539
<label for="add_ctxt"><?php _e('Context','xili-dictionary') ; ?></label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1540
<input id="add_ctxt" name="add_ctxt"  value="<?php echo $ctxt; ?>" style="width:80%" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1541
					<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1542
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1543
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1544
					if ( $ctxt != "" ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1545
						printf ( '<strong>ctxt:</strong> %s <br /><br />'  , $ctxt );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1546
						printf( __('&nbsp;<a href="%s" >Edit context</a>', 'xili-dictionary'), 'post.php?post='.$id.'&action=edit&msgaction=addctxt' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1547
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1548
						// link to add ctxt
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1549
						printf( __('&nbsp;<a href="%s" >Create context</a>', 'xili-dictionary'), 'post.php?post='.$id.'&action=edit&msgaction=addctxt' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1550
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1551
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1552
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1553
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1554
			// local or not
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1555
			$linktotax ='';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1556
			$extracted_comments = get_post_meta ( $target_id, $this->msg_extracted_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1557
			if ( $extracted_comments != "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1558
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1559
				$pattern = '/([^local\]].*?)from\s(.*?)\swith/';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1560
				$matches = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1561
				if ( 1 == preg_match($pattern, $extracted_comments, $matches) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1562
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1563
					$search = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1564
					if ( $type == 'msgid' && false !== strpos( $extracted_comments, 'name from' ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1565
						$search = '&s='.str_replace(' ', '+', $temp_post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1566
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1567
					$linktotax = sprintf('<a href="%1s" >%2s</a>', 'edit-tags.php?taxonomy='.$matches[2].'&post_type=post'.$search, sprintf(__('Return to %s list', 'xili-dictionary'), $matches[2] ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1568
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1569
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1570
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1571
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1572
			echo '<p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1573
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1574
				if ( $extracted_comments != "" )  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1575
					printf ( __('Extracted comments: %s', 'xili-dictionary').'<br />', $extracted_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1576
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1577
				$translator_comments = get_post_meta ( $target_id, $this->msg_translator_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1578
				if ( $translator_comments != "") printf ( __('Translator comments: %s', 'xili-dictionary').'<br />', $translator_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1579
				$flags = get_post_meta ( $target_id, $this->msg_flags, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1580
				if ( $flags != "") printf ( __('Flags: %s', 'xili-dictionary').'<br />', $flags );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1581
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1582
			echo '</p>';	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1583
			if ( $type == 'msgstr' || $type == 'msgstr_0' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1584
				$translator_comments = get_post_meta ( $id, $this->msg_translator_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1585
				//if ( $translator_comments != "") printf ( __('Msgstr Translator comments: %s', 'xili-dictionary').'<br />', $translator_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1586
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1587
				?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1588
<label for="add_translator_comments"><?php _e('msgstr Translator comments','xili-dictionary') ; ?></label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1589
<input id="add_translator_comments" name="add_translator_comments"  value="<?php echo $translator_comments; ?>" style="width:80%" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1590
				<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1591
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1592
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1593
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1594
			$lines = $temp_post->post_excerpt;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1595
			if ( $lines != "") {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1596
				echo '<p>'; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1597
				printf ( __('Lines: %s', 'xili-dictionary').'<br />', $lines ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1598
				echo '</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1599
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1600
			echo '<p><strong>'.sprintf(__('Return to <a href="%s" title="Go to msg list">msg list</a>','xili-dictionary'), $this->xd_settings_page).'</strong> '.$linktotax.'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1601
			echo ( $this->create_line_lang != "" ) ? '<p><strong>'.$this->create_line_lang.'</strong></p>' : "-";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1602
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1603
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1604
			if ( $type == 'msgid' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1605
				if ( ( $extracted_comments == "" ) ||  ( $extracted_comments != "" && false === strpos( $extracted_comments, $this->local_tag .' ' ) ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1606
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1607
					$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=setlocal', 'xd-setlocal'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1608
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1609
 					$for_bottom_box['link'] = sprintf( __('Set in theme (<a href="%s" >set local</a>)', 'xili-dictionary'), $nonce_url );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1610
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1611
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1612
					$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=unsetlocal', 'xd-setlocal'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1613
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1614
					$for_bottom_box['link'] = sprintf( __('Set in local (<a href="%s" >unset</a>)', 'xili-dictionary'), $nonce_url );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1615
					$for_bottom_box['state'] = true; // false by default
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1616
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1617
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1618
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1619
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1620
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1621
			printf ( __('The msgid (%d) was deleted. The msg series must be recreated and commented.','xili-dictionary' ), $target_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1622
			echo '<p><strong>'.sprintf(__('Return to <a href="%s" title="Go to msg list">msg list</a>','xili-dictionary'), $this->xd_settings_page).'</strong></p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1623
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1624
		return $for_bottom_box ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1625
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1626
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1627
	function update_msg_comments ( $post_id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1628
		if ( get_post_type( $post_id ) == XDMSG ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1629
			// only visible if msgstr
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1630
			$translator_comments = ( isset ( $_POST['add_translator_comments'] )) ? $_POST['add_translator_comments'] : "" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1631
			if ( '' != $translator_comments ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1632
				update_post_meta ( $post_id, $this->msg_translator_comments, $translator_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1633
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1634
			// add_ctxt
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1635
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1636
			if ( isset ( $_POST['add_ctxt'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1637
				$ctxt = $_POST['add_ctxt'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1638
				if ( '' != $ctxt ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1639
					update_post_meta ( $post_id, $this->ctxt_meta, $ctxt );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1640
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1641
					delete_post_meta ( $post_id, $this->ctxt_meta);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1642
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1643
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1644
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1645
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1646
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1647
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1648
	 * msg dashboard left
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1649
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1650
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1651
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1652
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1653
	function msg_status_display ( $id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1654
		global $post;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1655
		$spanred = '<span class="alert">';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1656
		$spanend = '</span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1657
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1658
		$type  = get_post_meta ( $id, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1659
		// search msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1660
		if ( $type == 'msgid' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1661
			$msgid_id = $id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1662
		} elseif ( $type == 'msgid_plural' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1663
			$temp_post_msg_id_plural = $this->temp_get_post ( $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1664
			$msgid_id = $temp_post_msg_id_plural->post_parent;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1665
			$temp_post_msg_id = $this->temp_get_post ( $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1666
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1667
			$msgid_id = get_post_meta ( $id, $this->msgidlang_meta, true);	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1668
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1669
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1670
		if ( $temp_post_msg_id = $this->temp_get_post ( $msgid_id ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1671
			if ( defined ('WP_DEBUG') &&  WP_DEBUG == true ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1672
				//echo '<div class="msg-saved" >';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1673
				//printf( __('%s saved as: <em>%s</em>', 'xili-dictionary'), $this->msg_str_labels[$type], $post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1674
				//echo '</div>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1675
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1676
			$res = get_post_meta ( $msgid_id, $this->msgchild_meta, false ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1677
			$thechilds =  ( is_array ( $res ) &&  array() != $res  ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1678
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1679
			$res = get_post_meta ( $msgid_id, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1680
			$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1681
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1682
			if ( isset ($_GET['msgaction'] ) && isset ($_GET['langstr']) ) { // action to create child and default line - single or plural...
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1683
				check_admin_referer( 'xd-langstr' );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1684
				$target_lang = $_GET['langstr'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1685
				if ( $_GET['msgaction'] == 'msgstr'  && !isset( $thelangs['msgstrlangs'][$target_lang] ) )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1686
				// create post
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1687
					if ( !isset ( $thechilds['msgid']['plural'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1688
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1689
						$msgstr_post_ID = $this->insert_one_cpt_and_meta ( __('XD say to translate:', 'xili-dictionary').$temp_post_msg_id->post_content , null, 'msgstr' , 0 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1690
						wp_set_object_terms( $msgstr_post_ID, $target_lang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1691
						$thelangs['msgstrlangs'][$target_lang]['msgstr'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1692
						update_post_meta ( $msgid_id, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1693
						update_post_meta ( $msgstr_post_ID, $this->msgidlang_meta, $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1694
					 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1695
					 	$translated_post_ID = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1696
						//printf( 'msgstr created in %s <br/>', $target_lang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1697
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1698
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1699
						// create msgstr_0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1700
						$msgstr_post_ID = $this->insert_one_cpt_and_meta ( __('XD say to translate (msgstr[0]): ', 'xili-dictionary').$temp_post_msg_id->post_content , null, 'msgstr_0' , 0 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1701
						wp_set_object_terms( $msgstr_post_ID, $target_lang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1702
						$thelangs['msgstrlangs'][$target_lang]['msgstr_0'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1703
						update_post_meta ( $msgid_id, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1704
						update_post_meta ( $msgstr_post_ID, $this->msgidlang_meta, $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1705
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1706
						$translated_post_ID = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1707
						//printf( 'msgstr[0] created in %s <br/>', $target_lang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1708
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1709
						// create msgstr_1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1710
						$temp_post_msg_id_plural = $this->temp_get_post ( $thechilds['msgid']['plural']  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1711
						$content_plural = htmlspecialchars( $temp_post_msg_id_plural->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1712
						$msgstr_1_post_ID = $this->insert_one_cpt_and_meta ( __('XD say to translate (msgstr[1]): ', 'xili-dictionary'). $content_plural , null, 'msgstr_1' , $msgstr_post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1713
						wp_set_object_terms( $msgstr_1_post_ID, $target_lang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1714
						$thelangs['msgstrlangs'][$target_lang]['plural'][1] = $msgstr_1_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1715
						update_post_meta ( $msgid_id, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1716
						update_post_meta ( $msgstr_1_post_ID, $this->msgidlang_meta, $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1717
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1718
						//printf( 'msgstr[1] created in %s <br/>', $target_lang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1719
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1720
					// redirect
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1721
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1722
					//if ( $translated_post_ID > 0 && $this->xili_settings['creation_redirect'] == 'redirect') {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1723
					$url_redir = admin_url().'post.php?post='.$translated_post_ID.'&action=edit';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1724
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1725
				?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1726
   <script type="text/javascript">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1727
   <!--
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1728
      window.location= <?php echo "'" . $url_redir . "'"; ?>;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1729
   //-->
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1730
   </script>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1731
<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1732
				//}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1733
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1734
			}  elseif ( isset ($_GET['msgaction']) && $_GET['msgaction'] == 'msgid_plural'  && !isset( $thelangs['msgstrlangs'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1735
				check_admin_referer( 'xd-plural' );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1736
					$msgid_plural_post_ID = $this->insert_one_cpt_and_meta ( __('XD say id to plural: ', 'xili-dictionary').$temp_post_msg_id->post_content , null, 'msgid_plural' , $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1737
					$res = get_post_meta ( $msgid_id, $this->msgchild_meta, false ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1738
					$thechilds =  ( is_array ( $res ) &&  array() != $res  ) ? $res[0]  : array();	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1739
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1740
			} elseif ( $type == 'msgid' && isset ($_GET['msgaction']) &&  $_GET['msgaction'] == 'setlocal' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1741
				check_admin_referer( 'xd-setlocal' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1742
				$extracted_comments = get_post_meta ( $msgid_id, $this->msg_extracted_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1743
				$extracted_comments = $this->local_tag .' '. $extracted_comments;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1744
				update_post_meta ( $msgid_id, $this->msg_extracted_comments, $extracted_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1745
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1746
			} elseif ( $type == 'msgid' && isset ($_GET['msgaction']) &&  $_GET['msgaction'] == 'unsetlocal' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1747
				check_admin_referer( 'xd-setlocal' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1748
				$extracted_comments = get_post_meta ( $msgid_id, $this->msg_extracted_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1749
				$extracted_comments = str_replace ( $this->local_tag .' ', '', $extracted_comments);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1750
				update_post_meta ( $msgid_id, $this->msg_extracted_comments, $extracted_comments );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1751
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1752
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1753
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1754
			// display current saved content
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1755
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1756
			//if ( $type != "msgid" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1757
				$line = __('msgid:', 'xili-dictionary'); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1758
				$line .=  '&nbsp;<strong>'. htmlspecialchars($temp_post_msg_id->post_content ) . '</strong>' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1759
				if ( $post->ID != $msgid_id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1760
					$line .= sprintf( __('( <a href="%s" title="link to:%d" >%s</a> )<br />', 'xili-dictionary'),'post.php?post='.$msgid_id.'&action=edit', $msgid_id, __('Edit') ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1761
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1762
					$line .= '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1763
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1764
				$this->hightlight_line ( $line, $type, 'msgid' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1765
			//}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1766
			if ( isset ( $thechilds['msgid']['plural'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1767
				$post_status = get_post_status ( $thechilds['msgid']['plural'] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1768
				$line = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1769
				if ( $post_status == "trash" || $post_status === false ) $line .= $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1770
				$line .= '<span class="msgid_plural">'. __('msgid_plural:', 'xili-dictionary') . '</span>&nbsp;';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1771
				if ( $post_status == "trash" || $post_status === false ) $line .= $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1772
				$temp_post_msg_id_plural = $this->temp_get_post ( $thechilds['msgid']['plural']  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1773
				$content_plural = htmlspecialchars( $temp_post_msg_id_plural->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1774
				$line .= '<strong>'. $content_plural . '</strong> ' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1775
				if ( $post->ID != $thechilds['msgid']['plural'] ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1776
					$line .= sprintf( __('( <a href="%s" title="link to:%d" >%s</a> )<br />', 'xili-dictionary'),'post.php?post='.$thechilds['msgid']['plural'].'&action=edit', $thechilds['msgid']['plural'], __('Edit') ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1777
				$this->hightlight_line ( $line, $type, 'msgid_plural'  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1778
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1779
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1780
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1781
				if ( !isset ( $thelangs['msgstrlangs'] ) && !isset ( $thechilds['msgid']['plural'] ) ) { // not yet translated
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1782
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1783
					$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=msgid_plural', 'xd-plural'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1784
					printf( __('&nbsp;<a href="%s" >Create msgid_plural</a>', 'xili-dictionary'), $nonce_url );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1785
					echo '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1786
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1787
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1788
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1789
			// display series
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1790
			$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1791
			if (isset ( $thelangs['msgstrlangs'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1792
				$translated_langs = array ();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1793
				echo '<br /><table class="widefat"><thead><tr><th class="column-msgtrans">';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1794
				_e( 'translated in', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1795
				echo '</th><th>‟msgstr”</th></tr></thead><tbody>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1796
				foreach ( $thelangs['msgstrlangs'] as $curlang => $msgtr ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1797
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1798
					$strid = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1799
					if ( isset ( $msgtr['msgstr'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1800
						$strid = $msgtr['msgstr'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1801
						$str_plural = false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1802
						$translated_langs[] = $curlang;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1803
						$typeref = 'msgstr';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1804
					} elseif ( isset ( $msgtr['msgstr_0'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1805
						$strid = $msgtr['msgstr_0'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1806
						$str_plural = true ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1807
						$translated_langs[] = $curlang;  // detect content empty
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1808
						$typeref = 'msgstr_0';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1809
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1810
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1811
					if ( $strid != 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1812
						$target_lang = implode ( ' ', wp_get_object_terms( $id, TAXONAME, $args = array( 'fields' => 'names')) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1813
						echo '<tr class="lang-'.strtolower($curlang).'" ><th><span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1814
						printf( '%s : ', $curlang );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1815
						echo '</span></th><td>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1816
						$temp_post = $this->temp_get_post ( $strid  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1817
						$content = htmlspecialchars( $temp_post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1818
						$line = "";			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1819
						if ( $str_plural ) $line .= "[0] ";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1820
									
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1821
						$line .= '‟<strong>'. $content . '</strong>”' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1822
						$post_status = get_post_status ( $strid );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1823
						if ( $post_status == "trash" || $post_status === false ) $line .= $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1824
						if ( $post->ID != $strid ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1825
							$line .= sprintf( ' ( <a href="%s" title="link to:%d">%s</a> )<br />', 'post.php?post='.$strid.'&action=edit', $strid, __('Edit') ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1826
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1827
							$line .= '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1828
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1829
						if ( $post_status == "trash" || $post_status === false ) $line .= $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1830
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1831
						$this->hightlight_line_str ( $line, $type, $typeref, $curlang, $target_lang ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1832
									
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1833
						if ( $str_plural ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1834
							$res = get_post_meta ( $strid, $this->msgchild_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1835
							$strthechilds =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1836
							foreach ( $strthechilds['msgstr']['plural'] as $key => $strchildid ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1837
								$temp_post = $this->temp_get_post ( $strchildid  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1838
								$content = htmlspecialchars( $temp_post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1839
								$line = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1840
								$post_status = get_post_status ( $strchildid ); // fixed 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1841
								if ( $post_status == "trash" || $post_status === false ) $line .= $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1842
								$line .= sprintf ( '[%s] ', $key );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1843
								if ( $post_status == "trash" || $post_status === false ) $line .= $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1844
								if ( $post->ID != $strchildid ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1845
									$line .= sprintf ( '‟<strong>%s</strong>” ( %s )', $content, '<a href="post.php?post='.$strchildid.'&action=edit" title="link to:'.$strchildid.'">'.__('Edit').'</a>'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1846
								} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1847
									$line .= sprintf ( '‟<strong>%s</strong>”', $content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1848
								}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1849
								$this->hightlight_line_str ( $line, $type, 'msgstr_'.$key, $curlang, $target_lang );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1850
								echo '<br />';		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1851
							}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1852
										// if possible against current lang add links - compare to count of $strthechilds['msgstr']['plural']
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1853
											
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1854
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1855
						echo '</td></tr>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1856
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1857
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1858
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1859
				echo '</tbody></table>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1860
				$this->create_line_lang = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1861
				if ( count ($translated_langs) !=  count ($listlanguages) )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1862
							//echo '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1863
					$this->create_line_lang = __('Create msgstr in: ', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1864
					foreach ( $listlanguages as $tolang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1865
						if ( !in_array ( $tolang->name , $translated_langs )  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1866
							$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=msgstr&langstr='.$tolang->name, 'xd-langstr'  ) ;					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1867
							$this->create_line_lang .= sprintf( '&nbsp; <a class="lang-'. strtolower($tolang->name).'" href="%s" >'.$tolang->name.'</a>', $nonce_url );			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1868
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1869
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1870
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1871
				$this->create_line_lang = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1872
				if ( !isset ($_POST['msgaction'] ) || ( isset ($_GET['msgaction'] ) && $_GET['msgaction'] == 'msgid_plural' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1873
					 _e( 'not yet translated.', 'xili-dictionary'); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1874
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1875
					$this->create_line_lang = __('Create msgstr in: ', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1876
					 foreach ( $listlanguages as $tolang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1877
					 	$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=msgstr&langstr='.$tolang->name, 'xd-langstr'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1878
					 	$this->create_line_lang .= sprintf( '&nbsp; <a class="lang-'. strtolower( $tolang->name).'" href="%s" >'.$tolang->name.'</a>', $nonce_url  );					 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1879
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1880
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1881
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1882
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1883
			printf ( __('The msgid (%d) was deleted. The msg series must be recreated.','xili-dictionary' ), $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1884
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1885
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1886
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1887
	function hightlight_line ( $line, $cur_type, $type ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1888
		if ( $cur_type == $type) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1889
			echo '<span class="editing msgidstyle">'. $line .'</span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1890
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1891
			echo '<span class="msgidstyle">'. $line .'</span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1892
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1893
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1894
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1895
	function hightlight_line_str ( $line, $cur_type, $type, $cur_lang, $lang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1896
		if ( $cur_type == $type && $cur_lang == $lang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1897
			echo '<span class="editing msgstrstyle">'.$line.'</span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1898
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1899
			echo '<span class="msgstrstyle">'. $line .'</span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1900
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1901
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1902
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1903
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1904
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1905
	 * display msg series linked together
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1906
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1907
	 * @param post ID, display (true for single edit)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1908
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1909
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1910
	function msg_link_display ( $id , $display = false, $thepost = null ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1911
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1912
			if ( $thepost != null ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1913
				$post = $thepost ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1914
			} else { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1915
				global $post ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1916
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1917
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1918
			$spanred = '<span class="alert">';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1919
			$spanend = '</span>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1920
		// type
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1921
			$type  = get_post_meta ( $id, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1922
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1923
			$res = get_post_meta ( $id, $this->msgchild_meta, false ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1924
			$thechilds =  ( is_array ( $res ) &&  array() != $res  ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1925
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1926
			$res = get_post_meta ( $id, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1927
			$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1928
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1929
			if ( $type == 'msgid' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1930
				$ctxt = get_post_meta ( $id, $this->ctxt_meta, true ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1931
				if ( $post->post_status == "trash" )  echo $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1932
				if ( $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1933
					echo '<div class="msg-saved" >';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1934
					printf( __('msgid saved as: <em>%s</em>', 'xili-dictionary'), ( $post->post_content ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1935
					echo '</div>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1936
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1937
					echo 'msgid';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1938
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1939
				if ( $post->post_status == "trash" ) echo $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1940
				echo '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1941
				if ( $ctxt != "" && !$display ) printf ( 'ctxt: %s <br />'  , $ctxt ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1942
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1943
				if ( isset ( $thechilds['msgid']['plural'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1944
					$post_status = get_post_status ( $thechilds['msgid']['plural'] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1945
					if ( !$display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1946
						if ( $post_status == "trash" || $post_status === false ) echo $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1947
						printf( __('has plural: <a href="%s" >%d</a><br />', 'xili-dictionary'),'post.php?post='.$thechilds['msgid']['plural'].'&action=edit', $thechilds['msgid']['plural'] ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1948
						if ( $post_status == "trash" || $post_status === false ) echo $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1949
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1950
						if ( $post_status == "trash" || $post_status === false ) echo $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1951
						_e('has plural:', 'xili-dictionary'); echo '&nbsp;';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1952
						if ( $post_status == "trash" || $post_status === false ) echo $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1953
						$temp_post = $this->temp_get_post ( $thechilds['msgid']['plural']  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1954
						$content_plural = htmlspecialchars( $temp_post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1955
						echo '<strong>'. $content_plural . '</strong> ' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1956
						printf( __('( <a href="%s" title="link to:%d" >%s</a> )<br />', 'xili-dictionary'),'post.php?post='.$thechilds['msgid']['plural'].'&action=edit', $thechilds['msgid']['plural'], __('Edit') ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1957
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1958
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1959
					if ( $display && !isset ( $thelangs['msgstrlangs'] ) && !isset ( $thechilds['msgid']['plural'] ) ) { // not yet translated
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1960
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1961
				 		printf( __('&nbsp;<a href="%s" >Create msgid_plural</a>', 'xili-dictionary'), 'post.php?post='.$id.'&action=edit&msgaction=msgid_plural' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1962
				 		echo '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1963
				 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1964
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1965
				$res = get_post_meta ( $id, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1966
				$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1967
				// action to create child and default line - single or plural...
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1968
				if ( isset ($_GET['msgaction'] ) && isset ($_GET['langstr']) && $display) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1969
					$target_lang = $_GET['langstr'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1970
					if ( $_GET['msgaction'] == 'msgstr'  && !isset( $thelangs['msgstrlangs'][$target_lang] ) )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1971
					// create post
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1972
						if ( !isset ( $thechilds['msgid']['plural'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1973
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1974
							$msgstr_post_ID = $this->insert_one_cpt_and_meta ( __('XD say to translate: ', 'xili-dictionary').$post->post_content , null, 'msgstr' , 0 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1975
							wp_set_object_terms( $msgstr_post_ID, $target_lang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1976
							$thelangs['msgstrlangs'][$target_lang]['msgstr'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1977
							update_post_meta ( $id, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1978
							update_post_meta ( $msgstr_post_ID, $this->msgidlang_meta, $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1979
						 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1980
							sprintf( 'msgstr created in %s <br/>', $target_lang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1981
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1982
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1983
							// create msgstr_0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1984
							$msgstr_post_ID = $this->insert_one_cpt_and_meta ( __('XD say to translate (msgstr[0]): ', 'xili-dictionary').$post->post_content , null, 'msgstr_0' , 0 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1985
							wp_set_object_terms( $msgstr_post_ID, $target_lang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1986
							$thelangs['msgstrlangs'][$target_lang]['msgstr_0'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1987
							update_post_meta ( $id, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1988
							update_post_meta ( $msgstr_post_ID, $this->msgidlang_meta, $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1989
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1990
							sprintf( 'msgstr[0] created in %s <br/>', $target_lang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1991
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1992
							// create msgstr_1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1993
							$msgstr_1_post_ID = $this->insert_one_cpt_and_meta ( __('XD say to translate (msgstr[1]): ', 'xili-dictionary'). $content_plural , null, 'msgstr_1' , $msgstr_post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1994
							wp_set_object_terms( $msgstr_1_post_ID, $target_lang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1995
							$thelangs['msgstrlangs'][$target_lang]['plural'][1] = $msgstr_1_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1996
							update_post_meta ( $id, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1997
							update_post_meta ( $msgstr_1_post_ID, $this->msgidlang_meta, $msgid_id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1998
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  1999
							sprintf( 'msgstr[1] created in %s <br/>', $target_lang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2000
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2001
					} elseif ( $_GET['msgaction'] == 'msgid_plural'  && !isset( $thelangs['msgstrlangs'][$target_lang] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2002
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2003
						$msgid_plural_post_ID = $this->insert_one_cpt_and_meta ( __('XD say id to plural: ', 'xili-dictionary').$post->post_content , null, 'msgid_plural' , $id );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2004
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2005
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2006
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2007
				$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2008
				if (isset ( $thelangs['msgstrlangs'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2009
					//$thelangs['msgstrlangs'][$curlang]['msgstr'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2010
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2011
					$translated_langs = array ();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2012
					if ( $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2013
						echo '<br /><table class="widefat"><thead><tr><th class="column-msgtrans">';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2014
						_e( 'translated in', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2015
						echo '</th><th>msgstr</th></tr></thead><tbody>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2016
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2017
						echo ( __( 'translated in', 'xili-dictionary').':<br />');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2018
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2019
					foreach ( $thelangs['msgstrlangs'] as $curlang => $msgtr ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2020
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2021
						$strid = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2022
						if ( isset ( $msgtr['msgstr'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2023
							$strid = $msgtr['msgstr'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2024
							$str_plural = false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2025
							$translated_langs[] = $curlang;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2026
						} elseif ( isset ( $msgtr['msgstr_0'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2027
							$strid = $msgtr['msgstr_0'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2028
							$str_plural = true ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2029
							$translated_langs[] = $curlang;  // detect content empty
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2030
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2031
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2032
						if ( $strid != 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2033
							if ( !$display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2034
							// get strid status  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2035
								$post_status = get_post_status ( $strid );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2036
								if ( $post_status == "trash" || $post_status === false ) echo $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2037
							 	printf( '- %s : <a href="%s" >%d</a><br />', $curlang, 'post.php?post='.$strid.'&action=edit', $strid ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2038
								if ( $post_status == "trash" || $post_status === false ) echo $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2039
							} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2040
								echo '<tr><th>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2041
								printf( '%s : ', $curlang );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2042
								echo '</th><td>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2043
								$temp_post = $this->temp_get_post ( $strid  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2044
								$content = htmlspecialchars( $temp_post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2045
								
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2046
								if ( $str_plural ) echo "[0] ";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2047
								
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2048
								echo '<strong>'. $content . '</strong>' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2049
								$post_status = get_post_status ( $strid );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2050
								if ( $post_status == "trash" || $post_status === false ) echo $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2051
							 		printf( ' ( <a href="%s" title="link to:%d">%s</a> )<br />', 'post.php?post='.$strid.'&action=edit', $strid, __('Edit') ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2052
								if ( $post_status == "trash" || $post_status === false ) echo $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2053
								
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2054
								if ( $str_plural ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2055
									$res = get_post_meta ( $strid, $this->msgchild_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2056
									$strthechilds =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2057
									foreach ( $strthechilds['msgstr']['plural'] as $key => $strchildid ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2058
										$temp_post = $this->temp_get_post ( $strchildid  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2059
										$content = htmlspecialchars( $temp_post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2060
										$post_status = get_post_status ( $strchildid );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2061
										if ( $post_status == "trash" || $post_status === false ) echo $spanred;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2062
										printf ( '[%s] ', $key );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2063
										if ( $post_status == "trash" || $post_status === false ) echo $spanend;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2064
										printf ( '<strong>%s</strong> ( %s )<br />', $content, '<a href="post.php?post='.$strchildid.'&action=edit" title="link to:'.$strchildid.'">'.__('Edit').'</a>' ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2065
									
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2066
									}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2067
									// if possible against current lang add links - compare to count of $strthechilds['msgstr']['plural']
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2068
										
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2069
								}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2070
								echo '</td></tr>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2071
							}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2072
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2073
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2074
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2075
					if ( $display )  echo '</tbody></table>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2076
					$this->create_line_lang = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2077
					if ( $display && ( count ($translated_langs) !=  count ($listlanguages) ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2078
						//echo '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2079
						$this->create_line_lang = __('Create msgstr in: ', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2080
						foreach ( $listlanguages as $tolang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2081
							if ( !in_array ( $tolang->name , $translated_langs )  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2082
								$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=msgstr&langstr='.$tolang->name, 'xd-langstr'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2083
				 				$this->create_line_lang .= sprintf( '&nbsp;<a href="%s" >'.$tolang->name.'</a>', $nonce_url );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2084
							}				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2085
				 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2086
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2087
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2088
				} else { // no translation
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2089
					if ( !isset ($_POST['msgaction'] ) || ( isset ($_GET['msgaction'] ) && $_GET['msgaction'] == 'msgid_plural' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2090
				 		_e( 'not yet translated.', 'xili-dictionary'); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2091
				 		echo '&nbsp';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2092
				 		if ( $display ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2093
				 			_e('Create msgstr in: ', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2094
				 				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2095
				 			foreach ( $listlanguages as $tolang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2096
				 				$nonce_url = wp_nonce_url ('post.php?post='.$id.'&action=edit&msgaction=msgstr&langstr='.$tolang->name, 'xd-langstr'  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2097
				 				printf( '&nbsp;<a href="%s" >'.$tolang->name.'</a>', $nonce_url );				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2098
				 			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2099
				 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2100
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2101
				}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2102
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2103
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2104
			} elseif (  $type != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2105
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2106
				$msgid_ID = get_post_meta ( $id, $this->msgidlang_meta , true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2107
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2108
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2109
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2110
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2111
				if ( $display  && ( $type == 'msgid_plural' || ( false !== strpos( $type, 'msgstr_' ) && substr( $type, -1 ) !='0')  ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2112
					$temp_post = $this->temp_get_post ( $post->post_parent  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2113
					$content = htmlspecialchars( $temp_post->post_content ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2114
					$target_lang = implode ( ' ', wp_get_object_terms( $id, TAXONAME, $args = array( 'fields' => 'names')) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2115
					$is_plural = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2116
				} elseif ( $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2117
					$temp_post = $this->temp_get_post ( $msgid_ID  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2118
					$content = htmlspecialchars( $temp_post->post_content ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2119
					$target_lang = implode ( ' ', wp_get_object_terms( $id, TAXONAME, $args = array( 'fields' => 'names')) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2120
					$is_plural = false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2121
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2122
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2123
				$span_msgid = ( get_post_status ( $msgid_ID ) == "trash" || get_post_status ( $msgid_ID ) === false ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2124
				$span_parent = ( get_post_status ( $post->post_parent ) == "trash" || get_post_status ( $post->post_parent ) === false ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2125
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2126
				if ( $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2127
					echo '<div class="msg-saved" >';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2128
					printf( __('%s saved as: <em>%s</em>', 'xili-dictionary'), $this->msg_str_labels[$type], $post->post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2129
					echo '</div>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2130
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2131
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2132
				switch ( $type ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2133
					case 'msgid_plural':
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2134
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2135
						if ( $span_parent ) echo $spanred ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2136
						if ( $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2137
							printf( __('msgid plural of: <strong>%s</strong> ( <a href="%s" title="link to:%d" >%s</a> )<br />', 'xili-dictionary'), $content,'post.php?post='.$post->post_parent.'&action=edit', $post->post_parent, __('Edit')  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2138
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2139
							printf( __('msgid plural of: <a href="%s" >%d</a><br />', 'xili-dictionary'),'post.php?post='.$post->post_parent.'&action=edit',$post->post_parent ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2140
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2141
						if ( $span_parent ) echo $spanend ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2142
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2143
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2144
						break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2145
					case 'msgstr':
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2146
						if ( $display  ) echo '<strong>'.$target_lang."</strong> translation of: <strong>" . $content . '</strong> ';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2147
						if ( $span_msgid ) echo $spanred ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2148
						if ( $display  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2149
							printf( __('( <a href="%s" title = "link of:%d">%s</a> )<br />', 'xili-dictionary'), 'post.php?post='.$msgid_ID.'&action=edit', $msgid_ID, __('Edit') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2150
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2151
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2152
							printf( __('msgstr of: <a href="%s" >%d</a><br />', 'xili-dictionary'), 'post.php?post='.$msgid_ID.'&action=edit', $msgid_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2153
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2154
						if ( $span_msgid ) echo $spanend ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2155
						//if ( $display ) echo  '<strong>'.$content .'</strong>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2156
						break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2157
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2158
					default:
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2159
						if ( false !== strpos( $type, 'msgstr_' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2160
							$indices = explode ('_', $type);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2161
							$indice = $indices[1];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2162
							$edit_id = ( $indice == 0 ) ? $msgid_ID : $post->post_parent ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2163
							
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2164
							if ( $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2165
								if ( $is_plural ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2166
									printf(__( '<strong>%s</strong> plural of: <strong>%s</strong>( <a href="%s" title="link to:%d">%s</a> )<br />', ''),$target_lang,  $content, 'post.php?post='.$edit_id.'&action=edit' , $edit_id, __('Edit') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2167
								} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2168
									printf(__( '<strong>%s</strong> translation of: <strong>%s</strong>( <a href="%s" title="link to:%d">%s</a> )<br />', ''),$target_lang,  $content, 'post.php?post='.$edit_id.'&action=edit' , $edit_id, __('Edit') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2169
								}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2170
							} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2171
								if ( $indice == 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2172
									if ( $span_msgid ) echo $spanred ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2173
									printf( __('msgstr of: <a href="%s" >%d</a><br />', 'xili-dictionary'), 'post.php?post='.$msgid_ID.'&action=edit', $msgid_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2174
									if ( $span_msgid ) echo $spanend ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2175
								} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2176
									if ( $span_parent ) echo $spanred ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2177
									printf( __('msgstr[%d] plural of: <a href="%s" >%d</a><br />', 'xili-dictionary'), $indice, 'post.php?post='.$post->post_parent.'&action=edit', $post->post_parent ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2178
									if ( $span_parent ) echo $spanend ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2179
								}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2180
							}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2181
							if ( $display && $indice > 0) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2182
								printf(__('go to <a href="%s" title="link to:%d">msgid</a>', 'xili-dictionary'), 'post.php?post='.$msgid_ID.'&action=edit', $msgid_ID ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2183
							}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2184
						}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2185
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2186
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2187
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2188
		return $type;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2189
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2190
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2191
	function temp_get_post ( $post_id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2192
		global $wpdb ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2193
		$res = $wpdb->get_row($wpdb->prepare("SELECT * FROM $wpdb->posts WHERE ID = %d LIMIT 1", $post_id)); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2194
		if ( $res && !is_wp_error($res) ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2195
			return $res;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2196
		else
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2197
			return false;		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2198
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2199
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2200
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2201
	 * unset autosave for msg
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2202
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2203
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2204
	function auto_save_unsetting() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2205
		global $hook_suffix, $post ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2206
		$type = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2207
		if ( isset($_GET['post_type']) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2208
			$type = $_GET['post_type'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2209
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2210
		if ( ( $hook_suffix == 'post-new.php' && $type == XDMSG ) || ( $hook_suffix == 'post.php' && $post->post_type == XDMSG  )) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2211
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2212
						wp_dequeue_script('autosave');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2213
						//wp_deregister_script('autosave');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2214
						//$wp_scripts->queue = array_diff( $wp_scripts->queue , array('autosave')  );		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2215
		}				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2216
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2217
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2218
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2219
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2220
	 * Reset values when theme was changed... updated by previous function
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2221
	 * @since 1.0.5
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2222
	 */ 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2223
	function xd_theme_switched ($theme) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2224
		$this->xili_settings['langs_folder'] ="unknown";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2225
		/* to force future search in new theme */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2226
		update_option('xili_dictionary_settings', $this->xili_settings);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2227
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2228
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2229
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2230
	 * @since 1.3.0 for js in tools list
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2231
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2232
	function admin_enqueue_scripts() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2233
		wp_enqueue_script( 'datatables', plugins_url('js/jquery.dataTables.min.js', __FILE__ ) , array( 'jquery' ), '1.7.4', true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2234
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2235
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2236
	function admin_enqueue_styles() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2237
		wp_enqueue_style('table_xdstyle'); // style of js table
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2238
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2239
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2240
	function admin_init() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2241
        /* Register our script. */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2242
        wp_register_script( 'datatables', plugins_url('js/jquery.dataTables.min.js', __FILE__ ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2243
        wp_register_style( 'table_xdstyle', plugins_url('/css/xd_table.css', __FILE__ ), array(), XILIDICTIONARY_VER, 'screen' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2244
    }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2245
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2246
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2247
	 *add admin menu and associated page 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2248
	 */
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2249
	function xili_add_dict_pages() {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2250
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2251
		//$this->thehook = add_management_page(__('Xili Dictionary','xili-dictionary'), __('xili Dictionary','xili-dictionary'), 'import', 'dictionary_page', array(&$this,'xili_dictionary_settings'));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2252
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2253
		$this->thehook = add_submenu_page( 'edit.php?post_type='.XDMSG, __('Xili Dictionary','xili-dictionary'), __('Tools, Files po mo','xili-dictionary'), 'import', 'dictionary_page', array(&$this,'xili_dictionary_settings') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2254
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2255
		 add_action('load-'.$this->thehook, array(&$this,'on_load_page'));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2256
		  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2257
		 add_action( 'admin_print_scripts-'.$this->thehook, array(&$this,'admin_enqueue_scripts') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2258
		 add_action( 'admin_print_styles-'.$this->thehook, array(&$this,'admin_enqueue_styles') );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2259
		 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2260
		 // Add to end of admin_menu action function
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2261
		global $submenu;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2262
		$submenu['edit.php?post_type='.XDMSG][5][0] = __('Msg list','xili-dictionary'); // sub menu
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2263
		$post_type_object = get_post_type_object(XDMSG);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2264
		$post_type_object->labels->name = __('XD Msg list','xili-dictionary'); // title list screen
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2265
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2266
		$this->insert_news_pointer ( 'xd_new_version' ); // pointer in menu for updated version
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2267
		add_action( 'admin_print_footer_scripts', array(&$this, 'print_the_pointers_js') );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2268
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2269
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2270
	function on_load_page() {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2271
			wp_enqueue_script('common');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2272
			wp_enqueue_script('wp-lists');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2273
			wp_enqueue_script('postbox');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2274
			
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2275
			add_meta_box('xili-dictionary-sidebox-message', __('Message','xili-dictionary'), array(&$this,'on_sidebox_message_content'), $this->thehook , 'side', 'core');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2276
			add_meta_box('xili-dictionary-sidebox-info', __('Info','xili-dictionary'), array(&$this,'on_sidebox_info_content'), $this->thehook , 'side', 'core');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2277
			add_meta_box('xili-dictionary-sidebox-style', __('XD style settings','xili-dictionary'), array(&$this,'on_sidebox_style_content'), $this->thehook , 'side', 'core');		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2278
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2279
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2280
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2281
	 * Add action link(s) to plugins page
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2282
	 * 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2283
	 * @since 0.9.3
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2284
	 * @author MS
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2285
	 * @copyright Dion Hulse, http://dd32.id.au/wordpress-plugins/?configure-link and scripts@schloebe.de
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2286
	 */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2287
	function xilidict_filter_plugin_actions($links, $file){
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2288
		static $this_plugin;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2289
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2290
		if (!$this_plugin ) $this_plugin = plugin_basename(__FILE__);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2291
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2292
		if ($file == $this_plugin ) {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2293
			$settings_link = '<a href="'.$this->xd_settings_page.'">' . __('Settings') . '</a>';
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2294
			$links = array_merge( array($settings_link), $links); // before other links
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2295
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2296
		return $links;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2297
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2298
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2299
	function init_textdomain() {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2300
	/*multilingual for admin pages and menu*/
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2301
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2302
		load_plugin_textdomain('xili-dictionary', false, 'xili-dictionary/languages' );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2303
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2304
		if ( class_exists('xili_language') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2305
			global $xili_language ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2306
			$langs_folder = $xili_language->xili_settings['langs_folder']; // set by override_load_textdomain filter
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2307
			if ( $this->xili_settings['langs_folder'] != $langs_folder ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2308
		 		$this->xili_settings['langs_folder'] = $langs_folder ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2309
		 		update_option('xili_dictionary_settings', $this->xili_settings);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2310
		 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2311
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2312
			if ( file_exists( $this->get_template_directory ) ) // when theme was unavailable
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2313
				$this->find_files($this->get_template_directory, '/^.*\.(mo|po|pot)$/', array(&$this,'searchpath'));
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2314
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2315
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2316
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2317
	/* call by findfiles */
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2318
	function searchpath($path, $filename) { 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2319
		 $langs_folder = str_replace($this->get_template_directory,'',$path); // updated 1.2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2320
		 if ( $this->xili_settings['langs_folder'] != $langs_folder ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2321
		 	$this->xili_settings['langs_folder'] = $langs_folder ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2322
		 	update_option('xili_dictionary_settings', $this->xili_settings);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2323
		 }
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2324
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2325
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2326
	function xililanguage_state() {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2327
	/* test if xili-language is present or was present */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2328
		if (class_exists('xili_language')) {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2329
			
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2330
			$this->xililanguage = 'isactive';
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2331
			
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2332
		} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2333
			/* test if language taxonomy relationships are present */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2334
			$xl_settings = get_option('xili_language_settings');
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2335
			if ( empty($xl_settings) ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2336
				$this->xililanguage = 'neveractive';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2337
			} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2338
				$this->xililanguage = 'wasactive';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2339
			}			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2340
		}	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2341
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2342
	/** * @since 1.02 */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2343
	function fill_default_languages_list() {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2344
		if ( $this->xililanguage == 'neveractive' || $this->xililanguage == 'wasactive' ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2345
			
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2346
			if 	( !isset( $this->xili_settings['xl-dictionary-langs'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2347
				
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2348
				$default_langs_array = array( 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2349
					'en_us' => array('en_US', 'english'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2350
					'fr_fr' => array('fr_FR', 'french'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2351
					'de_de' => array('de_DE', 'german'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2352
					'es_es' => array('es_ES', 'spanish'),
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2353
					'it_it' => array('it_IT', 'italian'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2354
					'pt_pt' => array('pt_PT', 'portuguese'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2355
					'ru_ru' => array('ru_RU', 'russian'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2356
					'zh_cn' => array('zh_CN', 'chinese'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2357
					'ja' => array('ja', 'japanese'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2358
					'ar_ar' => array('ar_AR', 'arabic')
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2359
				);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2360
				/* add wp admin lang */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2361
				if ( defined ('WPLANG') ) { 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2362
					$lkey = strtolower(WPLANG);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2363
					if (!array_key_exists($lkey, $default_langs_array)) $default_langs_array[$lkey] = array (WPLANG, WPLANG);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2364
				}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2365
				$this->xili_settings['xl-dictionary-langs'] = $default_langs_array;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2366
				update_option('xili_dictionary_settings', $this->xili_settings);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2367
			}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2368
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2369
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2370
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2371
	/**
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2372
	 * for slug with 5 (_fr_fr) or 2 letters (as japanese)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2373
	 * 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2374
	 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2375
 	function extract_extend ( $line_slug ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2376
 		$end = substr($line_slug, -6 ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2377
 		if ( substr($end, 0, 1) == '_' && substr($end, 3, 1) == '_' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2378
 			return substr($line_slug, -5 );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2379
 		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2380
 			return substr($line_slug, -2 ); // as ja
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2381
 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2382
 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2383
 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2384
 	function popupmenu_language_list ( $action = "" ) { ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2385
<select name="target_lang" ><?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2386
	   			$extend = WPLANG;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2387
	   			$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP, TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2388
	   			if ( $listlanguages ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2389
					foreach ($listlanguages as $reflanguage) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2390
		     			echo '<option value="'.$reflanguage->name.'"'; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2391
		     			if ($extend == $reflanguage->name) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2392
		     				echo ' selected="selected"';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2393
		     			} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2394
		     				echo ">".__($reflanguage->description,'xili-dictionary').'</option>';	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2395
		     			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2396
		     		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2397
	   			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2398
	     		if ( $action=='import' ) { // to import .pot of current domain 1.0.5
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2399
	     			if ( function_exists('is_child_theme') && is_child_theme() ) { // 1.8.1 and WP 3.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2400
						$theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2401
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2402
						$theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2403
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2404
	     			if (function_exists('the_theme_domain')) {// in new xili-language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2405
	     				echo '<option value="'.the_theme_domain().'" >'.the_theme_domain().'.pot</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2406
	    			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2407
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2408
						echo '<option value="'.$theme_name.'" >'.$theme_name.'.pot</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2409
					}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2410
	     		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2411
	     		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2412
</select>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2413
 	<?php 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2414
 	}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2415
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2416
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2417
	 * private functions for dictionary_settings
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2418
	 * @since 0.9.3
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2419
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2420
	 * fill the content of the boxes (right side and normal)
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2421
	 * 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2422
	 */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2423
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2424
	function  on_sidebox_message_content($data) { 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2425
		extract($data);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2426
		?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2427
<h4><?php _e('Note:','xili-dictionary') ?></h4>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2428
<p><?php echo $message; ?></p>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2429
		<?php
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2430
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2431
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2432
	function get_theme_name () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2433
		if ( function_exists('is_child_theme') && is_child_theme() ) { // 1.8.1 and WP 3.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2434
			$theme_name = get_option("stylesheet").' '.__('child of','xili-dictionary').' '.get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2435
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2436
			$theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2437
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2438
		return $theme_name;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2439
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2440
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2441
	function  on_sidebox_info_content() { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2442
		$template_directory = $this->get_template_directory;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2443
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2444
		$theme_name = $this->get_theme_name ();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2445
		if ( $this->xililanguage_ms ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2446
	   		echo '<p><em>'.__('xili-language-ms is active !','xili-dictionary').'</em></p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2447
	   	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2448
	    } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2449
	   		switch ( $this->xililanguage ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2450
	   			case 'neveractive';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2451
	   				echo '<p>'.__('xili-language plugin is not present !','xili-dictionary').'</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2452
	   				break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2453
	   			case 'wasactive';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2454
	   				echo '<p>'.__('xili-language plugin is not activated !','xili-dictionary').'</p><br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2455
	   				break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2456
	   			} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2457
	   	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2458
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2459
<p><?php _e('xili-dictionary is a plugin (compatible with xili-language) to build a multilingual dictionary saved in the taxonomy tables of WordPress. With this dictionary, it is possible to create and update .mo file in the current theme folder. And more...','xili-dictionary') ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2460
</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2461
<fieldset style="margin:2px; padding:12px 6px; border:1px solid #ccc;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2462
	<legend><?php echo __("Theme's informations:",'xili-dictionary').' ('. $theme_name .')'; ?></legend>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2463
	<p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2464
				<?php $langfolder = $this->xili_settings['langs_folder'];
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2465
				echo __("Languages sub-folder:",'xili-dictionary').' '. $langfolder; ?><br />
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2466
	 			<?php 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2467
	 			if ( $langfolder == 'unknown' ) { ?><span style='color:red'><?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2468
	 			_e("No languages files are present in theme's folder or theme's sub-folder: <strong>add at least a .po or a .mo inside.</strong><br /> Errors will occur if you try to import or export!",'xili-dictionary'); echo '<br />';	?></span> <?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2469
	 			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2470
	 			_e('Available MO files:','xili-dictionary'); echo '<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2471
	 			if ( file_exists( $this->get_template_directory ) ) // when theme was unavailable
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2472
	 				$this->find_files($this->get_template_directory, '/.mo$/', array(&$this,'available_mo_files')) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2473
	 			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2474
	 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2475
	 			?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2476
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2477
</fieldset>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2478
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2479
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2480
		<?php
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2481
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2482
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2483
	function  on_sidebox_style_content() { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2484
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2485
	<p> <?php _e( 'External file xd-style.css for dashboard (flags, customization)','xili-dictionary' ); ?></p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2486
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2487
		if ( ! $this->exists_style_ext ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2488
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2489
			echo '<p>'. __( 'There is no style for dashboard','xili-dictionary' ) .' ('.$this->style_message . ' )</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2490
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2491
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2492
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2493
			echo '<p>'. $this->style_message . '</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2494
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2495
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2496
		if ( $this->xili_settings['external_xd_style'] == "on" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2497
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2498
			$style_action = __( 'No style for dashboard','xili-dictionary' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2499
			$what = 'off';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2500
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2501
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2502
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2503
			$style_action = __( 'Activate style for dashboard','xili-dictionary' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2504
			$what = 'on';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2505
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2506
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2507
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2508
		<fieldset style="margin:2px; padding:6px 6px; "><strong><?php _e('Dictionary Styles','xili-dictionary') ;?></strong><br /><br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2509
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2510
			$url = "?post_type=xdmsg&action=setstyle&what=".$what."&amp;page=dictionary_page";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2511
			$nonce_url = wp_nonce_url( $url, 'xdsetstyle' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2512
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2513
   		<a class="action-button grey-button" href="<?php echo $nonce_url ?>" title="<?php _e( 'Change style mode', 'xili-dictionary') ?>"><?php _e( $style_action ) ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2514
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2515
	</fieldset> <?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2516
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2517
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2518
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2519
	 * @since 2.0 with datatables js (ex widefat)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2520
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2521
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2522
	function on_normal_cpt_content_list( $data ) { 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2523
		extract($data); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2524
		$sortparent = (($this->subselect == '') ? '' : '&amp;tagsgroup_parent_select='.$this->subselect );
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2525
		?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2526
<div id="topbanner">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2527
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2528
<div id="tableupdating">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2529
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2530
<table class="display" id="linestable">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2531
	<thead>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2532
		<tr>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2533
			<th scope="col" class="center colid"><a href="<?php echo $this->xd_settings_page; ?>" ><?php _e('ID') ?></a></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2534
			<th scope="col" class="coltexte"><a href="<?php echo $this->xd_settings_page.'&amp;orderby=name'.$sortparent; ?>"><?php _e('Text') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2535
			</th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2536
			<th scope="col" class="colslug"><?php _e('Metas','xili-dictionary') ?></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2537
			<th scope="col" class="colgroup center"><?php _e('Save status','xili-dictionary') ?></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2538
			<th colspan="2"><?php _e('Action') ?></th>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2539
		</tr>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2540
	</thead>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2541
	<tbody id="the-list">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2542
			<?php $this->xili_dict_cpt_row( $orderby, $tagsnamelike, $tagsnamesearch ); /* the lines */
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2543
			?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2544
	</tbody>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2545
</table>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2546
<div id="bottombanner">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2547
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2548
			<?php	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2549
	}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2550
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2551
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2552
	 * metabox shared by dialogs before actions with XD list
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2553
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2554
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2555
	 function on_normal_2_files_dialog ( $data ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2556
		extract( $data ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2557
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2558
<div style="background:#f5f5fe;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2559
	<div class="dialogcontainer" >
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2560
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2561
		<p id="add_edit"><?php _e( $formhow, 'xili-dictionary') ?></p>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2562
		<?php 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2563
		if ( $action=='export' || $action=='importmo' || $action=='import' || $action=='exportpo' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2564
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2565
		 	$theme_name = $this->get_theme_name(); 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2566
			
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2567
			// left column ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2568
			<div class="dialoglang">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2569
				<label for="language_file">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2570
					<select name="language_file" ><?php
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2571
	   			$extend = WPLANG;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2572
	   			$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' );//get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2573
				if ( $listlanguages ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2574
	     			foreach ($listlanguages as $reflanguage) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2575
	     				echo '<option value="'.$reflanguage->name.'"'; 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2576
	     				if ($extend == $reflanguage->name) { 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2577
	     					echo ' selected="selected"';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2578
	     				} 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2579
	     				echo ">".__($reflanguage->description,'xili-dictionary').'</option>';	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2580
	     			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2581
	     			}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2582
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2583
	     		if ( $action=='import' ) { // to import .pot of current domain 1.0.5
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2584
	     			if ( function_exists('the_theme_domain') ) {// in new xili-language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2585
	     				echo '<option value="'.the_theme_domain().'" >'.the_theme_domain().'.pot</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2586
	    			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2587
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2588
						echo '<option value="'.$theme_name.'" >'.$theme_name.'.pot</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2589
					}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2590
	     		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2591
	     		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2592
						</select>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2593
					</label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2594
				</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2595
		<div class="dialogfile">&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2596
	<?php // middle column
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2597
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2598
				if ( $action == 'import' ) {	// import po comment option 2.0-rc2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2599
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2600
				?>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2601
				
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2602
				<label for="importing_po_comments">&nbsp;<?php _e( 'What about comments', 'xili-dictionary' ); ?>:&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2603
				<select name="importing_po_comments" id="importing_po_comments">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2604
					<option value="" ><?php _e('No change','xili-dictionary'); ?></option>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2605
					<option value="replace" ><?php _e('Imported comments replace those in list','xili-dictionary'); ?></option>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2606
					<option value="append" ><?php _e('Imported comments be appended...','xili-dictionary'); ?></option>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2607
				</select>	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2608
				</label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2609
				<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2610
				} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2611
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2612
	     		if ( ($action=='export' || $action=='exportpo' ) && is_multisite() && is_super_admin() && $this->xililanguage_ms ) { ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2613
	<p><?php printf (__('Verify before that you are authorized to write in languages folder in theme named: %s','xili-dictionary'), $theme_name ) ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2614
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2615
	     		<?php }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2616
		     	if (  ( $action=='export' || $action=='exportpo' ) && is_multisite() && is_super_admin() && !$this->xililanguage_ms ) { ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2617
	<label for="only-theme">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2618
		     	<?php 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2619
		     		if ( $action == 'export' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2620
		             	printf ( __('SuperAdmin: %sonly as theme .mo','xili-dictionary'), '<br />') ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2621
		            } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2622
		             	printf ( __('SuperAdmin: %sonly as theme .po','xili-dictionary'), '<br />') ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2623
		            }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2624
		             ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2625
		<input id="only-theme" name="only-theme" type="checkbox" value="only" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2626
	</label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2627
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2628
	     	<?php } 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2629
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2630
	     	if ( $action=='export' || $action=='exportpo' ) { ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2631
				<br /><br /><label for="only-local">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2632
		     	<?php 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2633
		     	if ( $action == 'export' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2634
		     		_e('Save only local-xx_XX.mo sub-selection','xili-dictionary'); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2635
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2636
		     	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2637
		     		_e('Save only local-xx_XX.po sub-selection','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2638
		     	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2639
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2640
		     	?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2641
				<input id="only-local" name="only-local" type="checkbox" value="local" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2642
				</label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2643
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2644
	     	<?php }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2645
	     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2646
	     	?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2647
		</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2648
		<?php 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2649
		if ( $action=='import' || $action=='importmo' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2650
			echo '<div class="dialogorigin">';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2651
			echo '<label><input type="checkbox" id="local-import" name="local-import" value="local-import" />&nbsp;' . sprintf(__('import terms from local-xx_YY.%s', 'xili-dictionary'), ( ($action=='import') ? 'po' : 'mo' ) ) . '</label>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2652
			echo '</div>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2653
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2654
	// check origin theme
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2655
		if ( $action=='export' || $action=='exportpo' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2656
			if ( function_exists('is_child_theme') && is_child_theme() ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2657
				$cur_theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2658
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2659
				$cur_theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2660
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2661
			$listterms = get_terms( 'origin', array('hide_empty' => false) );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2662
			echo '<div class="dialogorigin">'; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2663
				if ( $listterms ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2664
	 				$checkline = __ ( 'Check Origin(s) to be exported', 'xili-dictionary' ).':<br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2665
	 				$i = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2666
	 				echo '<table class="checktheme" ><tr>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2667
	 			foreach ( $listterms as $onetheme) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2668
	 				$checked = ( $onetheme->name == $cur_theme_name ) ? 'checked="checked"'  : '' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2669
	 				$checkline .= '<td><input type="checkbox" '. $checked .' id="theme-'.$onetheme->term_id.'" name="theme-'.$onetheme->term_id.'" value="'.$onetheme->slug.'" />&nbsp;' . $onetheme->name .'</td>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2670
	 				$i++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2671
	 				if ( ($i % 2) == 0 ) $checkline .= '</tr><tr>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2672
	 			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2673
	 			echo $checkline.'</tr></table>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2674
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2675
	 	echo '</div>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2676
	} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2677
	// end container ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2678
	</div>    	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2679
	<div class="dialogbbt">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2680
		<input class="button" type="submit" name="reset" value="<?php echo $cancel_text ?>" />&nbsp;&nbsp;&nbsp;&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2681
		<input class="button-primary" type="submit" name="submit" value="<?php echo $submit_text ?>" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2682
	</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2683
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2684
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2685
		} elseif ($action=='importbloginfos' || $action=='importtaxonomy' || $action=='erasedictionary' || $action=='importcurthemeterms') {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2686
			
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2687
			if ( $action == 'importtaxonomy' ) { ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2688
		<label for="taxonomy_name"><?php _e('Slug:','xili-dictionary') ?></label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2689
		<input name="taxonomy_name" id="taxonomy_name" type="text" value="<?php echo ( $selecttaxonomy != '') ? $selecttaxonomy : 'category'; ?>" /><br />
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2690
			<?php }
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2691
			?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2692
		<br />&nbsp;<br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2693
		<input class="button" type="submit" name="reset" value="<?php echo $cancel_text ?>" />&nbsp;&nbsp;&nbsp;&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2694
		<input class="button-primary" type="submit" name="submit" value="<?php echo $submit_text ?>" /><br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2695
	</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2696
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2697
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2698
	// nothing inside	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2699
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2700
			echo '<p>'.__( 'This box is used for input dialog, leave it opened and visible…', 'xili-dictionary' ).'</p></div></div>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2701
		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2702
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2703
<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2704
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2705
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2706
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2707
	 * @since 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2708
	 * built checked themes array
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2709
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2710
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2711
	function checked_themes_array( ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2712
		$checked_themes = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2713
		$listterms = get_terms( 'origin', array('hide_empty' => false) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2714
		if ( $listterms ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2715
			foreach ( $listterms as $onetheme) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2716
				$idcheck = 'theme-'.$onetheme->term_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2717
				if ( isset ( $_POST[$idcheck] ) ) $checked_themes[] = $onetheme->name;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2718
			}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2719
		}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2720
		return $checked_themes;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2721
	}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2722
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2723
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2724
	 * @updated 1.0.2 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2725
	 * manage files 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2726
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2727
	function on_normal_3_content( $data ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2728
		extract( $data );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2729
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2730
<h4 id="manage_file"><?php _e('The files','xili-dictionary') ;?></h4>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2731
<a class="action-button blue-button" href="<?php echo $this->xd_settings_page.'&amp;action=export'; ?>" title="<?php _e('Create or Update mo file in current theme folder','xili-dictionary') ?>"><?php _e('Export mo file','xili-dictionary') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2732
&nbsp;<br /><?php _e('Import po/mo file','xili-dictionary') ?>:<a class="small-action-button" href="<?php echo $this->xd_settings_page.'&amp;action=import'; ?>" title="<?php _e('Import an existing .po file from current theme folder','xili-dictionary') ?>">PO</a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2733
<a class="small-action-button" href="<?php echo $this->xd_settings_page.'&amp;action=importmo'; ?>" title="<?php _e('Import an existing .mo file from current theme folder','xili-dictionary') ?>">MO</a><br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2734
&nbsp;<br /><a class="action-button grey-button" href="<?php echo $this->xd_settings_page.'&amp;action=exportpo'; ?>" title="<?php _e('Create or Update po file in current theme folder','xili-dictionary') ?>"><?php _e('Export po file','xili-dictionary') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2735
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2736
<h4 id="manage_categories"><?php _e('The taxonomies','xili-dictionary') ;?></h4>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2737
<a class="action-button blue-button" href="<?php echo $this->xd_settings_page.'&amp;action=importtaxonomy'; ?>" title="<?php _e('Import name and description of taxonomy','xili-dictionary') ?>"><?php _e('Import terms of taxonomy','xili-dictionary') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2738
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2739
<h4 id="manage_website_infos"><?php _e('The website infos (title, sub-title and more…)','xili-dictionary') ;?></h4>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2740
	   	<?php if ( class_exists ('xili_language') && XILILANGUAGE_VER > '2.3.9'	) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2741
	   		_e ( '…and comment, locale, date terms.', 'xili-dictionary' ); echo '<br /><br />';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2742
	   	} ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2743
<a class="action-button blue-button" href="<?php echo $this->xd_settings_page.'&amp;action=importbloginfos'; ?>" title="<?php _e('Import infos of web site and more','xili-dictionary') ?>"><?php _e("Import terms of website's infos",'xili-dictionary') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2744
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2745
	<h4 id="manage_dictionary"><?php _e('Dictionary','xili-dictionary') ;?></h4>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2746
   		<a class="action-button grey-button" href="?post_type=xdmsg&action=erasedictionary&amp;page=dictionary_page" title="<?php _e('Erase all terms of dictionary ! (but not .mo or .po files)','xili-dictionary') ?>"><?php _e('Erase all terms','xili-dictionary') ?></a>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2747
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2748
	<?php // erase and import theme 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2749
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2750
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2751
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2752
	 * @since 090423 - 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2753
	 * Sub selection box
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2754
	 */
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2755
	function on_normal_4_content($data=array()) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2756
		extract($data);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2757
		?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2758
<fieldset style="margin:2px; padding:3px; border:1px solid #ccc;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2759
	<legend><?php _e('Sub list of terms','xili-dictionary'); ?></legend>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2760
	<label for="tagsnamelike"><?php _e('Starting with:','xili-dictionary') ?></label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2761
	<input name="tagsnamelike" id="tagsnamelike" type="text" value="<?php echo $tagsnamelike; ?>" /><br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2762
	<label for="tagsnamesearch"><?php _e('Containing:','xili-dictionary') ?></label>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2763
	<input name="tagsnamesearch" id="tagsnamesearch" type="text" value="<?php echo $tagsnamesearch; ?>" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2764
	<p class="submit">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2765
		<input type="submit" id="tagssublist" name="tagssublist" value="<?php _e('Sub select…','xili-dictionary'); ?>" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2766
		<input type="submit" id="notagssublist" name="notagssublist" value="<?php _e('No select…','xili-dictionary'); ?>" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2767
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2768
</fieldset>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2769
<fieldset style="margin:2px; padding:3px; border:1px solid #ccc;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2770
	<legend><?php _e('Selection by language','xili-dictionary'); ?></legend>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2771
	<select name="tagsgroup_parent_select" id="tagsgroup_parent_select" style="width:100%;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2772
		<option value="no_select" ><?php _e('No sub-selection','xili-dictionary'); ?></option>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2773
		  				<?php $checked = ($this->subselect == "msgid") ? 'selected="selected"' :'' ; 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2774
		  				echo '<option value="msgid" '.$checked.' >'.__('Only MsgID (en_US)','xili-dictionary').'</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2775
		  				$checked = ($this->subselect == "msgstr") ? 'selected="selected"' :'' ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2776
		  				echo '<option value="msgstr" '.$checked.' >'.__('Only Msgstr','xili-dictionary').'</option>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2777
		  				$checked = ($this->subselect == "msgstr_0") ? 'selected="selected"' :'' ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2778
		  				echo '<option value="msgstr_0" '.$checked.' >'.__('Only Msgstr plural','xili-dictionary').'</option>';  		  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2779
		  				echo $this->build_grouplist();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2780
		  				echo $this->build_grouplist('nottransin_');	// 2.1.2 - not translated in	  				
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2781
		  				?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2782
	</select>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2783
	<br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2784
	<p class="submit">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2785
		<input type="submit" id="subselection" name="subselection" value="<?php _e('Sub select…','xili-dictionary'); ?>" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2786
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2787
</fieldset>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2788
		<?php
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2789
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2790
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2791
	 * @since 1.0.2 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2792
	 * only if xili-language plugin is absent 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2793
	 */ 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2794
	function on_normal_5_content($data=array()) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2795
		extract($data);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2796
		?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2797
<fieldset style="margin:2px; padding:3px; border:1px solid #ccc;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2798
	<legend><?php _e('Language to delete','xili-dictionary'); ?></legend>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2799
	<p><?php _e('Only the languages list is here modified (but not the dictionary\'s contents)','xili-dictionary'); ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2800
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2801
	<select name="langs_list" id="langs_list" style="width:100%;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2802
		<option value="no_select" ><?php _e('Select...','xili-dictionary'); ?></option>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2803
		  				<?php echo $this->build_grouplist('');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2804
		  				?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2805
	</select>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2806
	<br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2807
	<p class="submit">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2808
		<input type="submit" id="lang_delete" name="lang_delete" value="<?php _e('Delete a language','xili-dictionary'); ?>" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2809
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2810
</fieldset><br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2811
<fieldset style="margin:2px; padding:3px; border:1px solid #ccc;">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2812
	<legend><?php _e('Language to add','xili-dictionary'); ?></legend>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2813
	<label for="lang_ISO"><?php _e('ISO (xx_YY)','xili-dictionary') ?></label>:&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2814
	<input name="lang_ISO" id="lang_ISO" type="text" value="" size="5"/><br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2815
	<label for="lang_name"><?php _e('Name (eng.)','xili-dictionary') ?></label>:&nbsp;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2816
	<input name="lang_name" id="lang_name" type="text" value="" size="20" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2817
	<br />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2818
	<p class="submit">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2819
		<input type="submit" id="lang_add" name="lang_add" value="<?php _e('Add a language','xili-dictionary'); ?>" />
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2820
	</p>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2821
</fieldset>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2822
	<?php }
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2823
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2824
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2825
	 * build the list of group of languages for dictionary
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2826
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2827
	 * @updated 1.0.2
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2828
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2829
	 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2830
	 function build_grouplist ($left_line = '') {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2831
	 	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2832
	 		$listdictlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2833
	 		$optionlist = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2834
	 		$lefttext = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2835
	 		if ( $left_line == 'nottransin_' ) $lefttext = __('not translated in','xili-dictionary').' ';
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2836
	 		foreach($listdictlanguages as $dictlanguage) {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2837
	 			$checked = ($this->subselect == $left_line.$dictlanguage->slug) ? 'selected="selected"' :'' ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2838
		  		$optionlist .= '<option value="'.$left_line.$dictlanguage->slug.'" '.$checked.' >'.$lefttext.$dictlanguage->name .' ('.$dictlanguage->description.')</option>'; 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2839
	 		}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2840
	 	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2841
	 	return $optionlist;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2842
	 }
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2843
	 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2844
	 /**
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2845
	  * @since 1.3.3
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2846
	  * 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2847
	  *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2848
	  */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2849
	 function xd_wp_set_object_terms( $term_id, $lang_slug, $taxo_dictgroup , $bool = false) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2850
	 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2851
	 	// check if lang_slug exists in this dict taxonomy
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2852
	 	if ( ! $term_info = term_exists($lang_slug, $taxo_dictgroup) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2853
			// Skip if a non-existent term ID is passed.
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2854
			if ( is_int( $term_info ) ) 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2855
				continue;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2856
			$args = array( 'alias_of' => '', 'description' => 'Dictionary Group in '.$lang_slug );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2857
			$term_info = wp_insert_term($lang_slug, $taxo_dictgroup, $args); //print_r ($term_info);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2858
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2859
	 	wp_set_object_terms( $term_id, $lang_slug, $taxo_dictgroup, $bool );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2860
	 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2861
	 }
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2862
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2863
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2864
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2865
	 * Dashboard - Manage - Dictionary
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2866
	 *  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2867
	 * @since 0.9
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2868
	 * @updated 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2869
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2870
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2871
	function xili_dictionary_settings() { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2872
		$action = "";
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2873
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2874
		$term_id = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2875
		$formtitle = __('Dialog box','xili-dictionary');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2876
		$formhow = " ";
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2877
		$submit_text = __('Do &raquo;','xili-dictionary');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2878
		$cancel_text = __('Cancel');
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2879
		$langfolderset = $this->xili_settings['langs_folder'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2880
		$this->langfolder = ( $langfolderset !='' )  ? $langfolderset.'/' : '/';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2881
		// doublon 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2882
		$this->langfolder = str_replace ("//","/", $this->langfolder ); // upgrading... 2.0 and sub folder sub
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2883
		$selecttaxonomy = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2884
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2885
		$tagsnamelike = ( isset ( $_POST['tagsnamelike'] ) ) ? $_POST['tagsnamelike'] : '';
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2886
		if (isset($_GET['tagsnamelike']))
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2887
		    $tagsnamelike = $_GET['tagsnamelike']; /* if link from table */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2888
		$tagsnamesearch = ( isset ( $_POST['tagsnamesearch'] ) ) ? $_POST['tagsnamesearch'] : '';
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2889
		if (isset($_GET['tagsnamesearch']))
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2890
			$tagsnamesearch = $_GET['tagsnamesearch'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2891
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2892
		if (isset($_POST['reset'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2893
			$action=$_POST['reset'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2894
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2895
		} elseif (isset($_POST['action'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2896
			$action=$_POST['action'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2897
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2898
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2899
		if (isset($_GET['action'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2900
			$action=$_GET['action'];
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2901
			
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2902
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2903
		/* language delete or add */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2904
		if (isset($_POST['lang_delete'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2905
			$action='lang_delete';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2906
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2907
		if (isset($_POST['lang_add'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2908
			$action='lang_add';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2909
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2910
		/* sub lists */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2911
		if (isset($_POST['notagssublist'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2912
			$action='notagssublist';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2913
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2914
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2915
		if (isset($_POST['tagssublist'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2916
			$action='tagssublist';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2917
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2918
		if (isset($_GET['orderby'])) :
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2919
			$orderby = $_GET['orderby'] ;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2920
		else :
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2921
			$orderby = 't.term_id'; /* 0.9.8 */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2922
		endif;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2923
		if ( isset($_POST['tagsgroup_parent_select']) && $_POST['tagsgroup_parent_select'] != 'no_select') {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2924
				$this->subselect = $_POST['tagsgroup_parent_select'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2925
			} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2926
				$this->subselect = '';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2927
			}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2928
		if ( isset($_GET['tagsgroup_parent_select']))
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2929
			$this->subselect = $_GET['tagsgroup_parent_select'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2930
				
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2931
		if (isset($_POST['subselection'])) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2932
			$action='subselection';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2933
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2934
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2935
		if ( function_exists('is_child_theme') && is_child_theme() ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2936
			$cur_theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2937
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2938
			$cur_theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2939
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2940
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2941
		$message = ''; //$action." = " ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2942
		$msg = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2943
		switch($action) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2944
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2945
		case 'setstyle'; // external xd-style.css
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2946
			check_admin_referer( 'xdsetstyle' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2947
			if ( isset ( $_GET['what'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2948
				$what = 'off';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2949
				if ( $_GET['what'] == 'on' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2950
					$what = 'on';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2951
				} else if ( $_GET['what'] == 'off' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2952
					$what = 'off';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2953
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2954
			   	$this->xili_settings['external_xd_style'] = $what ;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2955
			   	update_option('xili_dictionary_settings', $this->xili_settings);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2956
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2957
			$actiontype = "add";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2958
			break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2959
			
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2960
		case 'lang_delete';
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2961
			$reflang = $_POST['langs_list'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2962
			$wp_lang = (defined('WPLANG')) ? strtolower(WPLANG) : 'en_us'; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2963
			if ($reflang != 'no_select' &&  $reflang != 'en_us' &&  $reflang != $wp_lang) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2964
				$ids = term_exists($reflang, TAXONAME);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2965
				if ( $ids ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2966
					if ( is_wp_error( $ids )  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2967
						$message .= ' '.$reflang.' error';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2968
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2969
						$t_id = $ids['term_id'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2970
						wp_delete_term( $t_id, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2971
						$message .= ' '.$reflang.' deleted';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2972
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2973
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2974
					$message .= ' '.$reflang.' not exist';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2975
				}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2976
				
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2977
			} else { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2978
				$message .= ' nothing to delete';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2979
			}				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2980
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2981
			$actiontype = "add";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2982
			break;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2983
								
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2984
		case 'lang_add';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2985
				$reflang = ('' != $_POST['lang_ISO'] ) ? $_POST['lang_ISO'] : "???";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2986
				$reflangname = ('' !=$_POST['lang_name']) ? $_POST['lang_name'] : $reflang; 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2987
				if ($reflang != '???' && ( ( strlen($reflang) == 5 && substr($reflang,2,1) == '_') ) || ( strlen($reflang) == 2 ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2988
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2989
					$args = array( 'alias_of' => '', 'description' => $reflangname, 'parent' => 0, 'slug' =>strtolower( $reflang ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2990
					$theids = $this->safe_lang_term_creation ( $reflang, $args );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  2991
					wp_set_object_terms($theids['term_id'], 'the-langs-group', TAXOLANGSGROUP);
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2992
					$message .= ' '.$reflang.$msg;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2993
				} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2994
					$message .= ' error ('.$reflang.') ! no add';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2995
				}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2996
				
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2997
				$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2998
				break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  2999
				
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3000
		case 'subselection';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3001
				$tagsnamelike = $_POST['tagsnamelike'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3002
				$tagsnamesearch = $_POST['tagsnamesearch'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3003
				$message .= ' selection of '.$_POST['tagsgroup_parent_select'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3004
				$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3005
				break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3006
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3007
		case 'notagssublist';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3008
				$tagsnamelike = '';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3009
				$tagsnamesearch = '';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3010
				$message .= ' no sub list of terms';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3011
				$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3012
				break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3013
			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3014
		case 'tagssublist';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3015
				$message .= ' sub list of terms starting with '.$_POST['tagsnamelike'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3016
				$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3017
				break;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3018
				    
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3019
		case 'export';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3020
			 $actiontype = "exporting";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3021
			 $formtitle = __('Export mo file','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3022
			 $formhow = __('To create a .mo file, choose language and click below.','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3023
			 $submit_text = __('Export &raquo;','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3024
		     break;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3025
		     
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3026
		case 'exporting'; // MO
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3027
			check_admin_referer( 'xilidicoptions' );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3028
			$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3029
			$selectlang = $_POST['language_file'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3030
		     if ("" != $selectlang){
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3031
		     	//$this->xili_create_mo_file(strtolower($selectlang));
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3032
		     	$file = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3033
		     	$extract_array = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3034
		     	$checked_themes = $this->checked_themes_array(); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3035
		     	if ( is_multisite() ) { /* complete theme's language with db structure languages (cats, desc,…) in uploads */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3036
					//global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3037
    				//$thesite_ID = $wpdb->blogid;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3038
   					$superadmin = ( isset ( $_POST['only-theme'] ) && $_POST['only-theme'] == 'only') ? true : false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3039
   					$message .= ( isset ( $_POST['only-theme'] ) && $_POST['only-theme'] == 'only') ? "- exported only in theme - " : "- exported in uploads - " ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3040
   					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3041
   					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3042
   					if (($uploads = xili_upload_dir()) && false === $uploads['error'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3043
   						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3044
   						if ( $superadmin === true )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3045
   							if ( isset ( $_POST['only-local'] ) && $_POST['only-local'] == 'local' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3046
   								$local = 'local';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3047
		     					$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3048
			     				$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3049
		     					$file = $this->get_template_directory.$this->langfolder.'local-'.$selectlang.'.mo' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3050
		     				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3051
		     					$extract_array [ 'origin' ] = $checked_themes;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3052
		     					$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3053
		     					$file = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3054
		     				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3055
   						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3056
   							if ( isset ( $_POST['only-local'] ) && $_POST['only-local'] == 'local' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3057
   								$local = 'local';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3058
		     					$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3059
			     				$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3060
		     					$file = $uploads['path']."/local-".$selectlang.".mo" ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3061
		     				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3062
		     					$extract_array [ 'origin' ] = $checked_themes;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3063
		     					$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3064
		     					$file = $uploads['path']."/".$selectlang.".mo" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3065
		     				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3066
   						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3067
   						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3068
   						$mo = $this->from_cpt_to_POMO_wpmu ( $selectlang, 'mo', $superadmin, $extract_array );  // do diff if not superadmin
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3069
   					} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3070
    			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3071
		     		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3072
		     		if ( isset ( $_POST['only-local'] ) && $_POST['only-local'] == 'local' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3073
		     			$local = 'local';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3074
		     			$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3075
			     		$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3076
		     			$file = $this->get_template_directory.$this->langfolder.'local-'.$selectlang.'.mo' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3077
		     		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3078
		     			$extract_array [ 'origin' ] = $checked_themes;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3079
		     			$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3080
		     			$file = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3081
		     		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3082
		     		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3083
		     		$mo = $this->from_cpt_to_POMO ( $selectlang, 'mo', $extract_array );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3084
		     	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3085
		     	if ( count ($mo->entries) > 0 ){ // 2.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3086
		     		if ( false === $this->Save_MO_to_file ($selectlang , $mo, $file ) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3087
		     			$message .= $file.' '.sprintf(__('error during exporting in %2s %1s.mo file.','xili-dictionary'), $selectlang, $local);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3088
		     		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3089
		     			$message .= ' '.sprintf(__('exported in %2s %1s.mo file with %3s msgids.','xili-dictionary'),$selectlang, $local, count ($mo->entries));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3090
		     		}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3091
		     	} else {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3092
	     			$message .= sprintf('<span class="alert">'.__('Nothing in %s, not updated', 'xili-dictionary').'</span>', $local.$selectlang.'.mo');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3093
	     		}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3094
		     }	else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3095
		     	$message .= ' : error "'.$selectlang.'"';
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3096
		     }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3097
		     $msg = 6 ;	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3098
		     break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3099
		     
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3100
		case 'exportpo';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3101
			 $actiontype = "exportingpo";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3102
			 $formtitle = __('Export po file','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3103
			 $formhow = __('To export terms in a .po file, choose language and click below.','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3104
			 $submit_text = __('Export &raquo;','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3105
		     break;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3106
		     
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3107
		case 'exportingpo'; // PO
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3108
			check_admin_referer( 'xilidicoptions' );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3109
			$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3110
			$selectlang = $_POST['language_file'];
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3111
		     if ("" != $selectlang){
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3112
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3113
		     	$extract_array = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3114
		     	$checked_themes = $this->checked_themes_array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3115
		     	if ( is_multisite() ) { /* complete theme's language with db structure languages (cats, desc,…) in uploads */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3116
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3117
   					$superadmin = ( isset ( $_POST['only-theme'] ) && $_POST['only-theme'] == 'only') ? true : false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3118
   					$message .= ( isset ( $_POST['only-theme'] ) && $_POST['only-theme'] == 'only') ? "- exported only in theme - " : "- exported in uploads - " ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3119
   					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3120
   					if (($uploads = xili_upload_dir()) && false === $uploads['error'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3121
   						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3122
   						if ( $superadmin === true )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3123
   							if ( isset ( $_POST['only-local'] ) && $_POST['only-local'] == 'local' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3124
		     					$local = 'local';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3125
			     				$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3126
			     				$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3127
		     					$file = $this->get_template_directory.$this->langfolder.'local-'.$selectlang.'.po' ; // theme folder
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3128
		     				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3129
		     					$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3130
		     					$file = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3131
		     				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3132
   						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3133
   							if ( isset ( $_POST['only-local'] ) && $_POST['only-local'] == 'local' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3134
		     					$local = 'local';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3135
			     				$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3136
			     				$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3137
		     					$file = $uploads['path']."/local-".$selectlang.".po" ; // blogs.dir folder
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3138
		     				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3139
		     					$extract_array [ 'origin' ] = $checked_themes;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3140
			     				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3141
		     					$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3142
		     					$file = $uploads['path']."/".$selectlang.".po" ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3143
		     				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3144
   						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3145
   						  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3146
   					} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3147
    			} else { // standalone
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3148
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3149
			     	if ( isset ( $_POST['only-local'] ) && $_POST['only-local'] == 'local' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3150
			     		$local = 'local';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3151
			     		$extract_array [ $this->msg_extracted_comments ] = $this->local_tag;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3152
			     		$extract_array [ 'like-'.$this->msg_extracted_comments ] = true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3153
			     		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3154
			     		$file = $this->get_template_directory.$this->langfolder.'local-'.$selectlang.'.po' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3155
			     	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3156
			     		$extract_array [ 'origin' ] = $checked_themes;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3157
			     		$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3158
			     		$file = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3159
			     	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3160
    			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3161
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3162
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3163
		     	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3164
		     	$po = $this->from_cpt_to_POMO ( $selectlang, 'po', $extract_array );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3165
		     	if ( count ($po->entries) > 0 ){ // 2.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3166
		     		if ( false === $this->Save_PO_to_file ( $selectlang , $po, $file ) ) {	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3167
		     			$message .= ' '.sprintf(__('error during exporting in %2s  %1s.po file.','xili-dictionary'), $selectlang, $local );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3168
		     		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3169
		     			$message .= ' '.sprintf(__('exported in %2s %1s.po file with %3s msgids.','xili-dictionary'), $selectlang, $local, count ($po->entries));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3170
		     		}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3171
		     	} else {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3172
	     			$message .= sprintf('<span class="alert">'.__('Nothing saved in %s, not updated', 'xili-dictionary').'</span>', $local.$selectlang.'.po');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3173
	     		}	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3174
		     } else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3175
		     	$message .= ' : error "'.$selectlang.'"';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3176
		     }	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3177
		     break; 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3178
		         
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3179
		case 'import';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3180
			$actiontype = "importing";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3181
		    $formtitle = __('Import po file','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3182
		    $formhow = __('To import terms of the current .po, choose language and click below.','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3183
			$submit_text = __('Import &raquo;','xili-dictionary'); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3184
		    break;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3185
		    
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3186
		case 'importmo';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3187
			$actiontype = "importingmo";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3188
		    $formtitle = __('Import mo file','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3189
		    $formhow = __('To import terms of the current .mo, choose language and click below.','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3190
			$submit_text = __('Import &raquo;','xili-dictionary'); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3191
		    break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3192
		    
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3193
		case 'importing';  // PO
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3194
			$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3195
		    $message .= ' '.__('line imported from po file: ','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3196
		    $selectlang = $_POST['language_file'];
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3197
		    $this->importing_po_comments = $_POST['importing_po_comments']; // 2.0-rc2 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3198
		    
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3199
		    if ( isset ( $_POST['local-import'] ) && $_POST['local-import'] == 'local-import' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3200
		    	$local = 'local-';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3201
		    	if ( is_multisite() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3202
		    		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3203
		    		$po = $this->pomo_import_PO ( $selectlang, true ); // temp - only in theme if model
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3204
		    	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3205
		    	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3206
		    		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3207
		    		$po = $this->pomo_import_PO ( $selectlang, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3208
		    	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3209
		    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3210
		    } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3211
		    	$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3212
		    	$po = $this->pomo_import_PO ( $selectlang ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3213
		    }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3214
		    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3215
		    if (false !== $po ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3216
		    	$this->origin_theme = $cur_theme_name ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3217
				$nblines = $this->from_pomo_to_cpts ( $po, $selectlang ) ; //echo "new method"; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3218
		    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3219
				$message .= ' - '. __('id lines = ','xili-dictionary').$nblines[0].' & ' .__('str lines = ','xili-dictionary').$nblines[1] ;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3220
			} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3221
				
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3222
		    	$readfile = $this->get_template_directory.$this->langfolder.$local.$selectlang.'.po';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3223
				$message .= ' '.$readfile.' > '.__('po file is not present.','xili-dictionary');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3224
			}	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3225
		    break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3226
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3227
		case 'importingmo';  // MO
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3228
			$actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3229
		    $message .= ' '.__('line imported from mo file: ','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3230
		    $selectlang = $_POST['language_file'];
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3231
		    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3232
		    if ( isset ( $_POST['local-import'] ) && $_POST['local-import'] == 'local-import' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3233
		    	$local = 'local-';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3234
		    	if ( is_multisite() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3235
		    		if ( ( $uploads = wp_upload_dir() ) && false === $uploads['error'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3236
						$folder = $uploads['basedir']."/languages";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3237
	 				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3238
	 				$folder_file = $folder . '/local-' . $selectlang . '.mo';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3239
		    		$mo = $this->pomo_import_MO ( $selectlang, $folder_file, false ); // - only in local site if saved - false because folder_file
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3240
		    	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3241
		    	} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3242
		    		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3243
		    		$mo = $this->pomo_import_MO ( $selectlang, '', true ); // file set in function
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3244
		    	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3245
		    } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3246
		    	$local = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3247
		    	$mo = $this->pomo_import_MO ( $selectlang ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3248
		    }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3249
		   
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3250
		    if (false !== $mo ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3251
		    	$this->origin_theme = $cur_theme_name ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3252
		    	$nblines = $this->from_pomo_to_cpts ( $mo, $selectlang ) ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3253
		    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3254
				$message .= ' - '.__('id lines = ','xili-dictionary').$nblines[0].' & ' .__('str lines = ','xili-dictionary').$nblines[1];
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3255
		    } else {				
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3256
		    	$readfile = $this->get_template_directory.$this->langfolder.$local.$selectlang.'.mo';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3257
				$message .= ' '.$readfile.' > '.__('mo file is not present.','xili-dictionary');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3258
			}	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3259
		    break;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3260
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3261
		case 'importbloginfos'; // bloginfos and others since 1.1.0 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3262
			$actiontype = "importingbloginfos";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3263
		    $formtitle = __('Import terms of blog info and others…','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3264
		    $formhow = __('To import terms of blog info and others…, click below.','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3265
			$submit_text = __('Import blog info terms &raquo;','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3266
			break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3267
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3268
		case 'importingbloginfos'; // bloginfos and others since 1.1.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3269
		  	check_admin_referer( 'xilidicoptions' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3270
			$actiontype = "add";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3271
		    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3272
		    $infosterms = $this->xili_import_infosterms_cpt (); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3273
			 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3274
			$msg = 4;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3275
			if ($infosterms[1] > 0) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3276
				$message .= ' ('.$infosterms[1].'/'.$infosterms[0].') '.__('imported with success','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3277
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3278
				$message .= ' '.__('already imported','xili-dictionary') . ' (' .$infosterms[0].') ';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3279
			}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3280
		    break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3281
		  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3282
		case 'importtaxonomy';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3283
			$actiontype = "importingtax";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3284
		    $formtitle = __('Import terms of taxonomy','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3285
		    $formhow = __('To import terms of the current taxonomy named, click below.', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3286
			$submit_text = __('Import taxonomy’s terms &raquo;', 'xili-dictionary'); 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3287
		    break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3288
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3289
		case 'importingtax';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3290
			check_admin_referer( 'xilidicoptions' );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3291
			$actiontype = "add";
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3292
		    $selecttaxonomy = $_POST['taxonomy_name']; // 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3293
		    if ( taxonomy_exists( $selecttaxonomy ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3294
		    	$nbterms = $this->xili_read_catsterms_cpt( $selecttaxonomy, $this->local_tag ); //$this->xili_read_catsterms();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3295
		    	$msg = 4;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3296
				if ( is_array($nbterms) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3297
				//$nbterms = $this->xili_importcatsterms_in_tables($catterms); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3298
					$message .= __('names = ','xili-dictionary').$nbterms[0].' & ' .__('descs = ','xili-dictionary').$nbterms[1];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3299
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3300
					$message .= ' '.sprintf(__('taxonomy -%s- terms pbs!', 'xili-dictionary'), $selecttaxonomy );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3301
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3302
		    } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3303
		    	$msg = 8;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3304
		    	$message .= ' '.sprintf(__('taxonomy -%s- do not exists', 'xili-dictionary'), $selecttaxonomy );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3305
		    }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3306
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3307
		    break;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3308
		    
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3309
		 case 'erasedictionary';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3310
			$actiontype = "erasingdictionary";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3311
		    $formtitle = __('Erase all terms','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3312
		    $formhow = __('To erase terms of the dictionary, click below. (before, create a .po if necessary!)');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3313
			$submit_text = __('Erase all terms &raquo;','xili-dictionary'); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3314
		    break;
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3315
		    
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3316
		 case 'erasingdictionary';
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3317
		 	check_admin_referer( 'xilidicoptions' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3318
		 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3319
		 	$selection = ""; // $selecttaxonomy = $_POST['erasing_selection'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3320
		 	$this->erase_dictionary( $selection );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3321
		 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3322
		 	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3323
			$actiontype = "add";
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3324
		    $message .= ' '.__('All terms erased !','xili-dictionary'); $msg = 7;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3325
		    // for next update
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3326
		    break; 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3327
		    
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3328
		 case 'importcurthemeterms';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3329
		 	$actiontype = "importingcurthemeterms";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3330
		    $formtitle = __('Import all terms from current theme','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3331
		    $formhow = __('To import terms of the current theme, click below.','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3332
			$submit_text = __('Import all terms &raquo;','xili-dictionary'); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3333
			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3334
			$this->tempoutput = '<strong>'.__('List of scanned files:','xili-dictionary').'</strong><br />';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3335
			$themeterms = $this->scan_import_theme_terms(array(&$this,'build_scanned_files'),2);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3336
			$formhow = $this->tempoutput.'<br /><br /><strong>'.$formhow .'</strong>';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3337
			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3338
		    break;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3339
		 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3340
		 case 'importingcurthemeterms';   // temporary inactive 2.1
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3341
		    $actiontype = "add";
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3342
		    $message .= ' '.__('All terms imported !','xili-dictionary'); $msg = 5 ;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3343
		    	$themeterms = $this->scan_import_theme_terms(array(&$this,'build_scanned_files'),0);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3344
		    if (is_array($themeterms)) {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3345
				//$nbterms = $this->xili_importthemeterms_in_tables($themeterms); 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3346
				$message .= __('terms = ','xili-dictionary').$nbterms;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3347
			} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3348
				$message .= ' '.$readfile.__('theme’s terms pbs!','xili-dictionary');
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3349
			}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3350
		    break;  
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3351
	     case 'reset';    
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3352
			    $actiontype = "add";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3353
			    break;    
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3354
		default:
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3355
		    $actiontype = "add";
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3356
		    $message .= ' '.__('Find below the list of terms.','xili-dictionary');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3357
		        
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3358
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3359
		/* register the main boxes always available */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3360
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3361
		add_meta_box('xili-dictionary-sidebox-3', __('Import & export','xili-dictionary'), array(&$this,'on_normal_3_content'), $this->thehook , 'side', 'core'); /* files */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3362
		add_meta_box('xili-dictionary-sidebox-4', __('Terms list management','xili-dictionary'), array(&$this,'on_normal_4_content'), $this->thehook , 'side', 'core'); /* files */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3363
		if ($this->xililanguage != 'isactive')
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3364
				add_meta_box('xili-dictionary-sidebox-5', __('Languages list management','xili-dictionary'), array(&$this,'on_normal_5_content'), $this->thehook , 'side', 'core'); /* Languages list when xili-language is absent */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3365
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3366
		add_meta_box('xili-dictionary-normal-1', __( $formtitle, 'xili-dictionary'), array(&$this,'on_normal_2_files_dialog'), $this->thehook , 'normal', 'core'); /* input form */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3367
		add_meta_box('xili-dictionary-normal-cpt', __('Multilingual Terms','xili-dictionary'), array(&$this,'on_normal_cpt_content_list'), $this->thehook , 'normal', 'core'); /* list of terms*/
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3368
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3369
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3370
		// since 1.2.2 - need to be upgraded...
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3371
		if ($msg == 0 && $message != '' ) $msg = 6 ; //by temporary default
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3372
		$themessages[1] = __('A new term was added.','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3373
		$themessages[2] = __('A term was updated.','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3374
		$themessages[3] = __('A term was deleted.','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3375
		$themessages[4] = __('terms imported from WP: ','xili-dictionary') . $message;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3376
		$themessages[5] = __('All terms imported !','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3377
		$themessages[6] = 'beta testing log: '.$message ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3378
		$themessages[7] = __('All terms erased !','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3379
		$themessages[8] = __('Error when adding !','xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3380
		$themessages[9] = __('Error when updating !','xili-dictionary');
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3381
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3382
		/* form datas in array for do_meta_boxes() */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3383
		$data = array('message'=>$message, 'action'=>$action, 'formtitle'=>$formtitle, 'submit_text'=>$submit_text,'cancel_text'=>$cancel_text, 'formhow'=>$formhow, 'orderby'=>$orderby,'term_id'=>$term_id, 'tagsnamesearch'=>$tagsnamesearch, 'tagsnamelike'=>$tagsnamelike, 'selecttaxonomy' =>$selecttaxonomy);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3384
		if ( isset ( $dictioline ) )  $data['dictioline'] = $dictioline ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3385
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3386
		?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3387
<div id="xili-dictionary-settings" class="wrap columns-2" style="min-width:850px">
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3388
			<?php screen_icon('tools'); ?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3389
	<h2><?php _e('Dictionary','xili-dictionary') ?></h2>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3390
			<?php if (0!= $msg ) { // 1.2.2 ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3391
	<div id="message" class="updated fade"><p><?php echo $themessages[$msg]; ?></p></div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3392
			<?php }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3393
			 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3394
			global $wp_version;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3395
		if ( version_compare($wp_version, '3.3.9', '<') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3396
			$poststuff_class = 'class="metabox-holder has-right-sidebar"';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3397
			$postbody_class = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3398
			$postleft_id = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3399
			$postright_id = "side-info-column";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3400
			$postleft_class = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3401
			$postright_class = "inner-sidebar";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3402
		} else { // 3.4
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3403
			$poststuff_class = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3404
			$postbody_class = 'class="metabox-holder columns-2"';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3405
			$postleft_id = 'id="postbox-container-2"';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3406
			$postright_id = "postbox-container-1";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3407
			$postleft_class = 'class="postbox-container"';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3408
			$postright_class = "postbox-container";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3409
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3410
			?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3411
	<form name="add" id="add" method="post" action="<?php echo $this->xd_settings_page; ?>">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3412
		<input type="hidden" name="action" value="<?php echo $actiontype ?>" />
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3413
				<?php wp_nonce_field('xili-dictionary-settings'); ?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3414
				<?php wp_nonce_field('xilidicoptions'); ?>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3415
				<?php wp_nonce_field('closedpostboxes', 'closedpostboxesnonce', false ); ?>
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3416
				<?php wp_nonce_field('meta-box-order', 'meta-box-order-nonce', false ); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3417
				/* 0.9.6 add has-right-sidebar for next wp 2.8*/ ?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3418
		<div id="poststuff"  <?php echo $poststuff_class; ?> >
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3419
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3420
			<div id="post-body" <?php echo $postbody_class; ?> >
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3421
				<div id="<?php echo $postright_id; ?>" class="<?php echo $postright_class; ?>">
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3422
						<?php do_meta_boxes($this->thehook, 'side', $data); ?>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3423
				</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3424
				<div id="post-body-content" >
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3425
					<div <?php echo $postleft_id; ?> <?php echo $postleft_class; ?> style="min-width:360px">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3426
	   					<?php do_meta_boxes($this->thehook, 'normal', $data); ?>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3427
					</div>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3428
					<h4><a href="http://dev.xiligroup.com/xili-dictionary" title="Plugin page and docs" target="_blank" style="text-decoration:none" ><img style="vertical-align:middle" src="<?php echo plugins_url( 'images/xilidico-logo-32.jpg', __FILE__ ) ; ?>" alt="xili-dictionary logo"/></a> - © <a href="http://dev.xiligroup.com" target="_blank" title="<?php _e('Author'); ?>" >xiligroup.com</a>™ - msc 2007-12 - v. <?php echo XILIDICTIONARY_VER; ?></h4>
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3429
				</div>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3430
			</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3431
			<br class="clear" />
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3432
		</div>
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3433
	</form>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3434
</div>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3435
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3436
		<?php	//end settings div 
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3437
		$this->insert_js_for_datatable( array('swidth2'=>'60%') );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3438
		}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3439
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3440
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3441
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3442
	 * delete lines of dictionary
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3443
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3444
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3445
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3446
	 function erase_dictionary ( $selection = "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3447
	 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3448
	 	if ( $selection == "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3449
	 		// select all ids
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3450
	 		$listdictiolines = get_posts( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3451
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3452
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3453
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3454
				'exclude' => array(), 'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3455
				'suppress_filters' => true
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3456
			) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3457
	 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3458
	 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3459
	 	} else { // to improve soon
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3460
	 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3461
	 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3462
	 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3463
	 	if ( $listdictiolines ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3464
	 		// loop
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3465
	 		foreach ( $listdictiolines as $oneline ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3466
	 			wp_delete_post( $oneline->ID, false ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3467
	 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3468
	 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3469
	 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3470
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3471
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3472
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3473
	 * create an array of mo content of theme (maintained by super-admin)	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3474
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3475
	 * @since 1.1.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3476
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3477
	 function get_pomo_from_theme( $local = false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3478
	 	$theme_mos = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3479
	 	if ( defined ('TAXONAME') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3480
	 		$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3481
	 		foreach ($listlanguages as $reflanguage) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3482
	     		$res = $this->pomo_import_MO ( $reflanguage->name, '', $local);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3483
	     		if (false !== $res) $theme_mos[$reflanguage->slug] = $res->entries;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3484
	 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3485
	 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3486
	 	return $theme_mos;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3487
	 }	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3488
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3489
	 /** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3490
	 * create an array of mo content of theme (maintained by admin of current site)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3491
	 * currently contains the msgid which are not in theme mo
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3492
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3493
	 * @since 1.2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3494
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3495
	 function get_pomo_from_site( $local = false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3496
	 	$theme_mos = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3497
	 	if ( defined ('TAXONAME') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3498
	 		$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3499
	 		foreach ($listlanguages as $reflanguage) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3500
	     		$res = $this->import_mo_file_wpmu ( $reflanguage->name, false, $local ); // of current site
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3501
	     		if (false !== $res) $theme_mos[$reflanguage->slug] = $res->entries;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3502
	 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3503
	 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3504
	 	return $theme_mos;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3505
	 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3506
	 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3507
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3508
	 * private function for admin page : one line of taxonomy
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3509
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3510
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3511
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3512
	function xili_dict_cpt_row( $listby='name', $tagsnamelike='', $tagsnamesearch='' ) { /* the lines */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3513
 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3514
 		// select msg
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3515
 		$special_query = false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3516
 		switch ( $this->subselect ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3517
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3518
 			case 'msgid' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3519
 				$meta_key_val = $this->msgtype_meta;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3520
 				$meta_value_val = 'msgid';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3521
 				break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3522
 			case 'msgstr' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3523
 				$meta_key_val = $this->msgtype_meta;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3524
 				$meta_value_val = 'msgstr';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3525
 				break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3526
 			case 'msgstr_0' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3527
 				$meta_key_val = $this->msgtype_meta;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3528
 				$meta_value_val = 'msgstr_0';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3529
 				break;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3530
 			case '' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3531
 				$meta_key_val = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3532
 				$meta_value_val = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3533
 				break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3534
 			default;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3535
 				if ( false !== strpos ( $this->subselect, 'only=' ) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3536
 					$exps = explode ('=', $this->subselect);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3537
 					$special_query = 'strlang' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3538
 					$curlang = $exps[1];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3539
 					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3540
 				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3541
 					if ( false !== strpos ( $this->subselect, 'nottransin_' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3542
 						$exps = explode ('_', $this->subselect);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3543
 						$special_query = 'idlang' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3544
 						$curlang = $exps[1];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3545
 						$this->searchtranslated = 'not'; // 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3546
 					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3547
 						// msgid + language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3548
 						$curlang = $this->subselect;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3549
 						$special_query = 'idlang' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3550
 					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3551
 				}		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3552
 		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3553
 		if ( $special_query ==  'idlang' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3554
 			if ( $this->searchtranslated != 'not' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3555
 				$listdictiolines = $this->get_cpt_msgids( $curlang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3556
 			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3557
 				$listdictiolines = $this->get_cpt_msgids( $curlang, 'mo', array(), true ) ; // search not translated in target language
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3558
 			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3559
 		} elseif ( $special_query ==  'strlang' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3560
 			$listdictiolines = get_posts( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3561
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3562
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3563
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3564
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3565
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3566
				'suppress_filters' => true, 's' => $tagsnamesearch,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3567
				'tax_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3568
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3569
							'taxonomy' => TAXONAME,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3570
							'field' => 'name',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3571
							'terms' => $curlang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3572
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3573
				),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3574
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3575
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3576
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3577
							'value' => array( 'msgstr', 'msgstr_0', 'msgstr_1' ),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3578
							'compare' => 'IN'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3579
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3580
				)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3581
			) );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3582
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3583
 		} else {	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3584
 			$listdictiolines = get_posts( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3585
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3586
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3587
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3588
				'exclude' => array(), 'meta_key' => $meta_key_val,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3589
				'meta_value' =>$meta_value_val, 'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3590
				'suppress_filters' => true, 's' => $tagsnamesearch
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3591
			) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3592
 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3593
 		$class = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3594
 		$this->mo_files_array (); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3595
 		//print_r( $this->file_site_mos );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3596
 		foreach ( $listdictiolines as $dictioline ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3597
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3598
			$class = (( defined( 'DOING_AJAX' ) && DOING_AJAX ) || " class='alternate'" == $class ) ? '' : " class='alternate'";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3599
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3600
 			$type  = get_post_meta ( $dictioline->ID, $this->msgtype_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3601
 			$context  = get_post_meta ( $dictioline->ID, $this->ctxt_meta, true);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3602
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3603
 			$res = $this->is_saved_cpt_in_theme( $dictioline->post_content, $type, $context );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3604
 			$save_state = $res[0] . ' (local: '.$res[2].')'; // improve for str and multisite
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3605
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3606
 			if ( is_multisite() ) $save_state .= '<br />'.__('this site', 'xili-dictionary').': '.$res[1] . ' (local: '.$res[3].')';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3607
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3608
 			$edit = "<a href='post.php?post=$dictioline->ID&action=edit' >".__( 'Edit' )."</a></td>";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3609
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3610
			$line = "<tr id='cat-$dictioline->ID'$class>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3611
				<td scope='row' style='text-align: center'>$dictioline->ID</td>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3612
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3613
				<td>". htmlspecialchars( $dictioline->post_content ) ."</td>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3614
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3615
				<td>";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3616
			echo $line;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3617
			$this->msg_link_display ( $dictioline->ID, false, $dictioline ) ;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3618
			$line = "</td>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3619
				<td class='center'>$save_state</td>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3620
				  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3621
				<td class='center'>$edit</td>\n\t</tr>\n"; /*to complete*/
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3622
			echo $line;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3623
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3624
 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3625
	}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3626
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3627
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3628
	 * return count of msgid (local or theme domain)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3629
	 * @since
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3630
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3631
	function count_msgids ( $curlang, $local = true, $theme_domain = '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3632
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3633
		if ( $local ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3634
			// msg id with lang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3635
			$the_query = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3636
			'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3637
			'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3638
			'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3639
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3640
					'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3641
					'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3642
					'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3643
					),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3644
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3645
					'key' => $this->msglang_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3646
					'value' => $curlang,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3647
					'compare' => 'LIKE' // 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3648
					),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3649
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3650
					'key' => $this->msg_extracted_comments,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3651
					'value' => $this->local_tag,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3652
					'compare' => 'LIKE'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3653
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3654
			)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3655
		);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3656
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3657
		} else if (  $theme_domain == '') {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3658
			$the_query = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3659
			'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3660
			'tax_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3661
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3662
					'taxonomy' => TAXONAME,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3663
					'field' => 'name',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3664
					'terms' => $curlang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3665
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3666
				)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3667
			);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3668
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3669
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3670
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3671
			$the_query = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3672
			'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3673
			'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3674
				'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3675
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3676
					'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3677
					'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3678
					'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3679
					),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3680
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3681
					'key' => $this->msglang_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3682
					'value' => $curlang,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3683
					'compare' => 'LIKE' // 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3684
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3685
				),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3686
			'tax_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3687
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3688
				array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3689
					'taxonomy' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3690
					'field' => 'slug',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3691
					'terms' => array($theme_domain),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3692
					'operator' => 'IN'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3693
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3694
				)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3695
			);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3696
			
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3697
		}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3698
		
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3699
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3700
		$query_4_test = new WP_Query( $the_query ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3701
		return $query_4_test->found_posts;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3702
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3703
	}		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3704
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3705
	 * test if line is in entries
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3706
	 * @since
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3707
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3708
	function is_intheme_mos ( $msg, $type, $entries, $context ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3709
		foreach ($entries as $entry) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3710
			$diff = 1;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3711
			switch ( $type ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3712
		 		case 'msgid' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3713
		 			$diff = strcmp( $msg , $entry->singular );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3714
		 			if ( $context != "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3715
		 				if ( $entry->context != null ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3716
		 					$diff += strcmp( $context , $entry->context ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3717
		 				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3718
		 			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3719
					break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3720
				case 'msgid_plural' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3721
					$diff = strcmp( $msg , $entry->plural );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3722
					break;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3723
				case 'msgstr' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3724
				 if ( isset ( $entry->translations[0] ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3725
					$diff = strcmp( $msg , $entry->translations[0] );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3726
					break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3727
				default:
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3728
					if ( false !== strpos ( $type, 'msgstr_'  ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3729
						$indice = (int) substr ( $type, -1) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3730
						if ( isset ( $entry->translations[$indice] ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3731
							$diff = strcmp( $msg , $entry->translations[$indice] );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3732
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3733
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3734
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3735
			//if ( $diff != 0) { echo $msg.' i= '.strlen($msg); echo $entry->singular.') e= '.strlen($entry->singular); }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3736
			if ( $diff == 0) return true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3737
		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3738
	return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3739
	}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3740
	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3741
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3742
	 * Detect if cpt are saved in theme's languages folder
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3743
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3744
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3745
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3746
	function is_saved_cpt_in_theme( $msg, $type, $context = "" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3747
		$thelist = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3748
		$thelistsite = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3749
		$thelist_local = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3750
		$thelistsite_local = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3751
		$outputsite = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3752
		$localfile_site = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3753
		$output = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3754
		$localfile="";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3755
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3756
		if ( defined ('TAXONAME') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3757
			$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP, TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3758
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3759
		 	foreach ($listlanguages as $reflanguage) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3760
		 		if ( isset( $this->theme_mos[$reflanguage->slug]) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3761
		 			if ( $this->is_intheme_mos ( $msg, $type, $this->theme_mos[$reflanguage->slug], $context ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3762
		 				$thelist[] = $reflanguage->name.".mo";		 							 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3763
		 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3764
		 		// local data
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3765
		 		if ( isset( $this->local_mos[$reflanguage->slug]) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3766
		 			if ( $this->is_intheme_mos ( $msg, $type, $this->local_mos[$reflanguage->slug], $context ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3767
		 				$thelist_local[] = $reflanguage->name.".mo";		 							 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3768
		 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3769
		 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3770
		 		if ( is_multisite() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3771
		 			if ( isset($this->file_site_mos[$reflanguage->slug]) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3772
		 				if ( $this->is_intheme_mos ( $msg, $type, $this->file_site_mos[$reflanguage->slug], $context ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3773
		 					$thelistsite[] = $reflanguage->name.".mo";		 							 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3774
		 			} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3775
		 			// local data
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3776
		 			if ( isset($this->file_site_local_mos[$reflanguage->slug]) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3777
		 				if ( $this->is_intheme_mos ( $msg, $type, $this->file_site_local_mos[$reflanguage->slug], $context ) )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3778
		 					$thelistsite_local[] = $reflanguage->name.".mo";		 							 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3779
		 			} 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3780
		 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3781
		 		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3782
		 	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3783
		 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3784
			$output = ($thelist == array()) ? '<br /><small><span style="color:black" title="'.__("No translations saved in theme's .mo files","xili-dictionary").'">**</span></small>' : '<br /><small><span style="color:green" title="'.__("Original with translations saved in theme's files: ","xili-dictionary").'" >'. implode(', ',$thelist).'</small></small>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3785
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3786
			$localfile = ($thelist_local == array()) ? '<small><span style="color:black" title="'.__("No translations saved in local-xx_XX .mo files","xili-dictionary").'">?</span></small>' : '<small><span style="color:green" title="'.__("Original with translations saved in local-xx_XX files: ","xili-dictionary").'" >'. implode(', ', $thelist_local ).'</small></small>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3787
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3788
			if ( is_multisite() ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3789
				
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3790
				$outputsite = ($thelistsite == array()) ? '<br /><small><span style="color:black" title="'.__("No translations saved in site's .mo files","xili-dictionary").'">**</span></small>' : '<br /><small><span style="color:green" title="'.__("Original with translations saved in site's files: ","xili-dictionary").'" >'. implode(', ',$thelistsite).'</small></small>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3791
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3792
				$localfile_site = ($thelistsite_local == array()) ? '<small><span style="color:black" title="' . __("No translations saved in site's local .mo files","xili-dictionary").'">?</span></small>' : '<small><span style="color:green" title="'.__("Original with translations saved in site's local files: ","xili-dictionary").'" >'. implode(', ',$thelistsite_local).'</small></small>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3793
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3794
			}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3795
			
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3796
			return array ( $output, $outputsite, $localfile, $localfile_site ) ;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3797
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3798
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3799
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3800
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3801
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3802
	 * Import PO file in class PO 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3803
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3804
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3805
	 * @since 1.0 - only WP >= 2.8.4
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3806
	 * @updated 1.05 - import .pot if domain name - fixed 1.3.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3807
	 * @updated 2.1 - local-xx_XX
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3808
	 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3809
	function pomo_import_PO ( $lang = "", $local = false ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3810
		$po = new PO();
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3811
		$t = "";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3812
		if ( function_exists('the_theme_domain') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3813
				$t = ($lang == the_theme_domain()) ? 't': ''; /* from UI to select .pot */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3814
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3815
				if ( function_exists('is_child_theme') && is_child_theme() ) { // 1.8.1 and WP 3.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3816
					$theme_name = get_option("stylesheet"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3817
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3818
					$theme_name = get_option("template"); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3819
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3820
				$t = ( $lang == $theme_name ) ? 't': ''; /* from UI to select .pot */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3821
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3822
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3823
		if ( $local == false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3824
			$pofile = $this->get_template_directory.$this->langfolder.$lang.'.po'.$t;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3825
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3826
			$pofile = $this->get_template_directory.$this->langfolder.'local-'.$lang.'.po'; // fixed 2.1.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3827
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3828
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3829
		if ( file_exists( $pofile ) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3830
			if ( !$po->import_from_file( $pofile ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3831
				return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3832
			} else { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3833
				return $po;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3834
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3835
		} else {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3836
			return false;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3837
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3838
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3839
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3840
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3841
	 * Import MO file in class PO 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3842
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3843
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3844
	 * @since 1.0.2 - only WP >= 2.8.4
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3845
	 * @updated 1.0.5 - for wp-net
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3846
	 * @param lang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3847
	 * @param $mofile since 1.0.5
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3848
	 * @updated 2.1 - local-xx_XX
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3849
	 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3850
	function pomo_import_MO ($lang = "", $mofile = "", $local = false ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3851
		$mo = new MO();
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3852
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3853
		if ( $mofile == "" &&  $local == true ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3854
			$mofile = $this->get_template_directory.$this->langfolder.'local-'.$lang.'.mo';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3855
		} else if ( '' == $mofile ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3856
			$mofile = $this->get_template_directory.$this->langfolder.$lang.'.mo';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3857
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3858
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3859
		if ( file_exists( $mofile ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3860
			if ( !$mo->import_from_file( $mofile ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3861
				return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3862
			} else { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3863
				return $mo;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3864
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3865
		} else {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3866
			return false;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3867
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3868
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3869
	/**
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3870
	 * import mo for temporary diff mo files or check if saved
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3871
	 *
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3872
	 * @since 1.0.6
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3873
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3874
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3875
	function import_mo_file_wpmu ($lang = "", $istheme = true, $local = false ){
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3876
	  if ($istheme == true) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3877
	  	return $this->pomo_import_MO ( $lang, "", $local );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3878
	  } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3879
	  		global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3880
    			$thesite_ID = $wpdb->blogid; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3881
    			if ( ($uploads = wp_upload_dir()) && false === $uploads['error'] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3882
					//if ($thesite_ID > 1) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3883
						if ( $local == true ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3884
							$mofile = $uploads['basedir']."/languages/local-".$lang.'.mo';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3885
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3886
							$mofile = $uploads['basedir']."/languages/".$lang.'.mo'; //normally inside theme's folder if root wp-net
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3887
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3888
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3889
						return $this->pomo_import_MO ( $lang, $mofile, $local );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3890
					//} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3891
						//return false; // normally inside theme's folder if root wp-net
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3892
					//}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3893
    			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3894
    				return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3895
    			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3896
	  }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3897
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3898
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3899
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3900
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3901
	 * convert twinlines (msgid - msgstr) to MOs in wp-net
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3902
	 * @since 1.0.4
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3903
	 * @updated 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3904
	 * @params as from_twin_to_POMO and $superadmin 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3905
	 */	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3906
	function from_cpt_to_POMO_wpmu ($curlang, $obj='mo', $superadmin = false, $extract = array() )	{
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3907
		global $user_identity,$user_url,$user_email;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3908
	    // the table array
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3909
	    $table_mo = $this->from_cpt_to_POMO( $curlang, $obj, $extract ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3910
	    $site_mo = new MO () ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3911
	    $translation ='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3912
	Project-Id-Version: theme: '.get_option("template").'\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3913
	Report-Msgid-Bugs-To: contact@xiligroup.com\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3914
	POT-Creation-Date: '.date("c").'\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3915
	PO-Revision-Date: '.date("c").'\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3916
	Last-Translator: '.$user_identity.' <'.$user_email.'>\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3917
	Language-Team: xili-dictionary WP plugin and '.$user_url.' <'.$user_email.'>\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3918
	MIME-Version: 1.0\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3919
	Content-Type: text/plain; charset=utf-8\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3920
	Content-Transfer-Encoding: 8bit\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3921
	Plural-Forms: '.$this->plural_forms_rule($curlang).'\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3922
	X-Poedit-Language: '.$curlang.'\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3923
	X-Poedit-Country: '.$curlang.'\n
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3924
	X-Poedit-SourceCharset: utf-8\n';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3925
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3926
		$site_mo->set_headers($site_mo->make_headers($translation));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3927
	   	// array diff
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3928
	   	if (false  === $superadmin) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3929
	   		// special for superadmin who don't need diff.
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3930
			// the pomo array available in theme's folder 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3931
	   		$theme_mo = $this->import_mo_file_wpmu ( $curlang, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3932
	   	  	if ( false !== $theme_mo ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3933
	   	  		// without keys available in theme' mo
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3934
	   			$site_mo->entries =  array_diff_key ( $table_mo->entries, $theme_mo->entries  ); // those differents ex. categories
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3935
	   			// those with same keys but translations[0] diff
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3936
	   			$diff_mo_trans = array_uintersect_assoc ( $table_mo->entries, $theme_mo->entries, array(&$this,'test_translations')  ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3937
	   			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3938
	   			$site_mo->entries += $diff_mo_trans ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3939
	   			//print_r ( array_keys ( $diff_mo_trans ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3940
	   			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3941
	   		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3942
	   		return $site_mo;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3943
	   	} elseif ( $extract != '' ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3944
	   		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3945
	   		return $table_mo;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3946
	   	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3947
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3948
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3949
	function test_translations ( $table, $theme ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3950
		if ( $table->translations[0] != $theme->translations[0] ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3951
			if ( $table->singular == $theme->singular ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3952
				//echo '--tQuote--not'.$table->translations[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3953
				return 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3954
				
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3955
			} else {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3956
				return 1;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3957
			}	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3958
		}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3959
		if ( $table->singular > $theme->singular ) return 1;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3960
		return -1;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3961
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3962
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3963
	/**
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3964
	 * return array of msgid objects 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3965
	 * @since 2.0
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  3966
	 *
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3967
	 * @updated 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3968
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3969
	function get_cpt_msgids( $curlang, $pomo = "mo", $extract_array = array(), $not = false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3970
		global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3971
		$like = ($not === true ) ? 'NOT LIKE' : 'LIKE' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3972
		if ( $pomo == "mo" ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3973
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3974
			if ( $extract_array == array() ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3975
				//$posts_query = $wpdb->prepare("SELECT $wpdb->posts.* FROM $wpdb->posts INNER JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id) INNER JOIN $wpdb->postmeta as mt1 ON ($wpdb->posts.ID = mt1.post_id) INNER JOIN $wpdb->postmeta as mt2 ON ($wpdb->posts.ID = mt2.post_id) INNER JOIN $wpdb->postmeta as mt3 ON ($wpdb->posts.ID = mt3.post_id)  WHERE post_status = %s AND post_type = %s AND $wpdb->postmeta.meta_key='{$this->msgtype_meta}' AND mt1.meta_key='{$this->msgtype_meta}' AND mt1.meta_value = %s AND mt2.meta_key='{$this->msglang_meta}' AND mt3.meta_key='{$this->msglang_meta}' AND mt3.meta_value LIKE %s ", 'publish', XDMSG ,'msgid', '%'.$curlang.'%' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3976
				//return $wpdb->get_results($posts_query);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3977
				return get_posts( array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3978
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3979
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3980
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3981
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3982
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3983
				'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3984
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3985
						'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3986
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3987
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3988
							'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3989
							'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3990
						),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3991
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3992
							'key' => $this->msglang_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3993
							'value' => $curlang,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3994
							'compare' => $like // 2.1.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3995
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3996
					)	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3997
				 ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3998
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  3999
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4000
			} else if ( isset ( $extract_array [ $this->msg_extracted_comments ] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4001
				$extract = 	$extract_array [ $this->msg_extracted_comments ];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4002
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4003
				//$posts_query = $wpdb->prepare("SELECT $wpdb->posts.* FROM $wpdb->posts INNER JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id) INNER JOIN $wpdb->postmeta as mt1 ON ($wpdb->posts.ID = mt1.post_id) INNER JOIN $wpdb->postmeta as mt2 ON ($wpdb->posts.ID = mt2.post_id) INNER JOIN $wpdb->postmeta as mt3 ON ($wpdb->posts.ID = mt3.post_id)  INNER JOIN $wpdb->postmeta as mt4 ON ($wpdb->posts.ID = mt4.post_id) INNER JOIN $wpdb->postmeta as mt5 ON ($wpdb->posts.ID = mt5.post_id)  WHERE post_status = %s AND post_type = %s AND $wpdb->postmeta.meta_key='{$this->msgtype_meta}' AND mt1.meta_key='{$this->msgtype_meta}' AND mt1.meta_value = %s AND mt2.meta_key='{$this->msglang_meta}' AND mt3.meta_key='{$this->msglang_meta}' AND mt3.meta_value LIKE %s AND mt4.meta_key='{$this->msg_extracted_comments}' AND mt5.meta_key='{$this->msg_extracted_comments}' AND mt5.meta_value LIKE %s ", 'publish', XDMSG ,'msgid', '%'.$curlang.'%', '%'.$extract.'%' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4004
				//return $wpdb->get_results($posts_query);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4005
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4006
				return get_posts( array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4007
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4008
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4009
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4010
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4011
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4012
				'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4013
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4014
						'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4015
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4016
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4017
							'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4018
							'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4019
						),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4020
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4021
							'key' => $this->msglang_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4022
							'value' => $curlang,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4023
							'compare' => 'LIKE'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4024
						),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4025
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4026
							'key' => $this->msg_extracted_comments,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4027
							'value' => $extract,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4028
							'compare' => 'LIKE'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4029
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4030
					)	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4031
				 ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4032
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4033
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4034
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4035
			} else if ( isset ( $extract_array [ 'origin' ] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4036
			//error_log ( '------------' . serialize ( $extract_array [ 'origin' ] ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4037
				if ( !is_array( $extract_array [ 'origin' ] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4038
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4039
				 $array_tax = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4040
							'taxonomy' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4041
							'field' => 'slug',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4042
							'terms' => $extract_array [ 'origin' ]
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4043
						);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4044
				 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4045
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4046
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4047
					$array_tax = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4048
							'taxonomy' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4049
							'field' => 'slug',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4050
							'terms' => $extract_array [ 'origin' ],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4051
							'operator' => 'IN'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4052
						);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4053
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4054
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4055
				if ( $extract_array [ 'origin' ] == '' || $extract_array [ 'origin' ] == array() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4056
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4057
					return get_posts( array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4058
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4059
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4060
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4061
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4062
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4063
				'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4064
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4065
						'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4066
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4067
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4068
							'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4069
							'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4070
						),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4071
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4072
							'key' => $this->msglang_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4073
							'value' => $curlang,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4074
							'compare' => 'LIKE'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4075
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4076
					)	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4077
				 ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4078
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4079
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4080
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4081
				return get_posts( array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4082
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4083
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4084
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4085
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4086
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4087
				'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4088
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4089
						'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4090
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4091
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4092
							'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4093
							'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4094
						),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4095
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4096
							'key' => $this->msglang_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4097
							'value' => $curlang,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4098
							'compare' => 'LIKE'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4099
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4100
					),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4101
				'tax_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4102
						$array_tax
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4103
					)	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4104
				 ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4105
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4106
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4107
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4108
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4109
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4110
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4111
		} else { // po 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4112
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4113
			if ( $extract_array == array() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4114
				// to have also empty translation
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4115
				$meta_key_val = $this->msgtype_meta; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4116
				$meta_value_val = 'msgid';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4117
				return get_posts( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4118
					'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4119
					'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4120
					'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4121
					'exclude' => array(), 'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4122
					'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4123
					'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4124
						array (
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4125
							'meta_key' => $meta_key_val,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4126
							'meta_value' =>$meta_value_val
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4127
							)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4128
						), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4129
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4130
				);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4131
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4132
			} else if ( isset ( $extract_array [ 'origin' ] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4133
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4134
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4135
				if ( !is_array( $extract_array [ 'origin' ] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4136
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4137
				 $array_tax = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4138
							'taxonomy' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4139
							'field' => 'slug',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4140
							'terms' => $extract_array [ 'origin' ]
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4141
						);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4142
				 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4143
				} else { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4144
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4145
					$array_tax = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4146
							'taxonomy' => 'origin',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4147
							'field' => 'slug',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4148
							'terms' => $extract_array [ 'origin' ],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4149
							'operator' => 'IN'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4150
						);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4151
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4152
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4153
				return get_posts( array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4154
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4155
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4156
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4157
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4158
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4159
				'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4160
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4161
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4162
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4163
							'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4164
							'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4165
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4166
					),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4167
				'tax_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4168
						$array_tax
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4169
					)	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4170
				 ) );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4171
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4172
			} else {  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4173
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4174
				$extract = 	$extract_array [ $this->msg_extracted_comments ];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4175
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4176
				$like_or_not = ( $extract_array [ 'like-'. $this->msg_extracted_comments ] == true )? 'LIKE' : 'NOT LIKE' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4177
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4178
				return get_posts( array( 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4179
				'numberposts' => -1, 'offset' => 0,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4180
				'category' => 0, 'orderby' => 'ID',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4181
				'order' => 'ASC', 'include' => array(),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4182
				'exclude' => array(), 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4183
				'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4184
				'suppress_filters' => true,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4185
				'meta_query' => array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4186
						'relation' => 'AND',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4187
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4188
							'key' => $this->msgtype_meta,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4189
							'value' => 'msgid',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4190
							'compare' => '='
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4191
						),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4192
						array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4193
							'key' => $this->msg_extracted_comments,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4194
							'value' => $extract ,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4195
							'compare' => $like_or_not
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4196
						)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4197
					)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4198
				 ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4199
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4200
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4201
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4202
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4203
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4204
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4205
	 * return msgstr object (array translation)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4206
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4207
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4208
	function get_cpt_msgstr( $cur_msgid_ID, $curlang, $plural = false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4209
		$res = get_post_meta ( $cur_msgid_ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4210
		$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4211
			if ( $plural ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4212
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4213
				$cur_msgstr_ID = $thelangs['msgstrlangs'][$curlang]['msgstr_0'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4214
				// get_parent (msgstr_0)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4215
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4216
				$msgstr_array = array ( get_post( $cur_msgstr_ID ) ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4217
 				// get_children
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4218
 				$args = array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4219
							'numberposts' => -1, 'post_type' => XDMSG,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4220
							'post_status' => 'publish', 'post_parent' => $cur_msgstr_ID
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4221
				);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4222
				$children = get_posts( $args );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4223
				return array_merge($msgstr_array, $children); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4224
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4225
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4226
				if ( isset ( $thelangs['msgstrlangs'][$curlang]['msgstr'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4227
					$cur_msgstr_ID = $thelangs['msgstrlangs'][$curlang]['msgstr'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4228
				// get_content
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4229
				//echo ' - '.$cur_msgstr_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4230
 					return get_post( $cur_msgstr_ID  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4231
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4232
					return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4233
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4234
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4235
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4236
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4237
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4238
	 * convert cpt (msgid - msgstr) to MO or PO
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4239
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4240
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4241
	 * 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4242
	 */	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4243
	function from_cpt_to_POMO ( $curlang, $obj='mo', $extract = array() ) {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4244
		global $user_identity,$user_url,$user_email;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4245
		if ($obj == 'mo') {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4246
			$mo = new MO(); /* par default */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4247
		} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4248
			$mo = new PO();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4249
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4250
		/* header */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4251
		$translation ='
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4252
	Project-Id-Version: theme: '.get_option("template").'\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4253
	Report-Msgid-Bugs-To: contact@xiligroup.com\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4254
	POT-Creation-Date: '.date("c").'\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4255
	PO-Revision-Date: '.date("c").'\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4256
	Last-Translator: '.$user_identity.' <'.$user_email.'>\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4257
	Language-Team: xili-dictionary WP plugin and '.$user_url.' <'.$user_email.'>\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4258
	MIME-Version: 1.0\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4259
	Content-Type: text/plain; charset=utf-8\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4260
	Content-Transfer-Encoding: 8bit\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4261
	Plural-Forms: '.$this->plural_forms_rule($curlang).'\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4262
	X-Poedit-Language: '.$curlang.'\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4263
	X-Poedit-Country: '.$curlang.'\n
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4264
	X-Poedit-SourceCharset: utf-8\n';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4265
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4266
		$mo->set_headers($mo->make_headers($translation));
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4267
		/* entries */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4268
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4269
		$list_msgids = $this->get_cpt_msgids( $curlang, $obj, $extract ); // msgtype = msgid && $curlang in 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4270
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4271
		//error_log ( 'list_msgids ='.count ( $list_msgids ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4272
		//print_r( $list_msgids );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4273
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4274
		foreach ( $list_msgids as $cur_msgid ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4275
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4276
			if ( $cur_msgid->post_content == '++' ) continue; // no empty msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4277
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4278
			$getctxt = get_post_meta( $cur_msgid->ID , $this->ctxt_meta, true ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4279
			$cur_msgid->ctxt = ( $getctxt == "" ) ? false : $getctxt;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4280
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4281
			$cur_msgid->plural = false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4282
			$res = get_post_meta ( $cur_msgid->ID, $this->msgchild_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4283
 			$thechilds =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4284
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4285
 			if ( $thechilds ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4286
 				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4287
 				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4288
 				if ( isset ( $thechilds['msgid']['plural'] ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4289
 					$cur_msgid->plural = true ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4290
 					$plural_ID = $thechilds['msgid']['plural'];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4291
 				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4292
 					$post_child_msgid = get_post( $plural_ID ); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4293
 					$cur_msgid->plural_post_content = $post_child_msgid -> post_content ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4294
 				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4295
 			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4296
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4297
			//$res = get_post_meta ( $cur_msgid->ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4298
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4299
				/* select child in curlang */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4300
			$list_msgstr = $this->get_cpt_msgstr( $cur_msgid->ID, $curlang, $cur_msgid->plural ); // array of objects if plural
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4301
					 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4302
			$noentry = true; /* to create po with empty translation */ 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4303
			if ( false !== $list_msgstr ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4304
 				if ($obj == 'mo') { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4305
					if ( $cur_msgid->plural === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4306
						if ( false === $cur_msgid->ctxt ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4307
							$original = $cur_msgid->post_content;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4308
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4309
							$original = $cur_msgid->ctxt . chr(4) . $cur_msgid->post_content ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4310
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4311
						$mo->add_entry( $mo->make_entry( $original, $list_msgstr->post_content ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4312
										
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4313
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4314
						$list_msgstr_plural_post_content = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4315
						foreach ( $list_msgstr as $one_msgstr ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4316
							$list_msgstr_plural_post_content[] = $one_msgstr->post_content ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4317
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4318
						if ( false === $cur_msgid->ctxt ) {  // PLURAL
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4319
							$original = $cur_msgid->post_content . chr(0) . $cur_msgid->plural_post_content ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4320
							$translation = implode( chr(0), $list_msgstr_plural_post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4321
							$mo->add_entry($mo->make_entry($original, $translation));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4322
						} else { // CONTEXT + PLURAL
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4323
							$original = $cur_msgid->ctxt .chr(4). $cur_msgid->post_content . chr(0) . $cur_msgid->plural_post_content ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4324
							$translation = implode( chr(0), $list_msgstr_plural_post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4325
							$mo->add_entry( $mo->make_entry($original, $translation) );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4326
						}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4327
					}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4328
										
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4329
				} else { /* po */ 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4330
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4331
					// comments prepare
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4332
					// * 	- translator_comments (string) -- comments left by translators
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4333
	 				// * 	- extracted_comments (string) -- comments left by developers
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4334
	 				// * 	- references (array) -- places in the code this strings is used, in relative_to_root_path/file.php:linenum form
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4335
					// * 	- flags (array) -- flags like php-format
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4336
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4337
					$comment_array = array(); // $list_msgstr because in msgstr (20120318)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4338
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4339
					if ( $cur_msgid->plural === false ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4340
					 	$translator_comments = get_post_meta ( $list_msgstr->ID, $this->msg_translator_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4341
						if ( $translator_comments != '' )  $comment_array['translator_comments'] = $translator_comments;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4342
					} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4343
						$translator_comments = get_post_meta ( $list_msgstr[0]->ID, $this->msg_translator_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4344
						if ( $translator_comments != '' )  $comment_array['translator_comments'] = $translator_comments;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4345
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4346
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4347
					$extracted_comments = get_post_meta ( $cur_msgid->ID, $this->msg_extracted_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4348
					if ( $extracted_comments != '' )  $comment_array['extracted_comments'] = $extracted_comments;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4349
					if ( $cur_msgid->post_excerpt != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4350
						$references = explode ('#: ', $cur_msgid->post_excerpt );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4351
						$comment_array['references'] = $references;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4352
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4353
					$flags = get_post_meta ( $cur_msgid->ID, 'flags', true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4354
					if ( $flags != '' )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4355
						$comment_array['flags'] = explode (', ', $flags );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4356
					}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4357
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4358
					if ( $cur_msgid->plural === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4359
						if ( false === $cur_msgid->ctxt ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4360
							$entry_array = array('singular'=>$cur_msgid->post_content,'translations'=> array( $list_msgstr ->post_content ) ) ; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4361
						} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4362
							$entry_array = array('context'=>$cur_msgid->ctxt, 'singular'=>$cur_msgid->post_content, 'translations'=> array($list_msgstr ->post_content) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4363
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4364
					} else { // PLURAL
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4365
						$list_msgstr_plural_post_content = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4366
						foreach ( $list_msgstr as $one_msgstr ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4367
							$list_msgstr_plural_post_content[] = $one_msgstr->post_content ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4368
						}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4369
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4370
						if ( false === $cur_msgid->ctxt ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4371
							$entry_array = array('singular' => $cur_msgid->post_content,'plural' => $cur_msgid->plural_post_content, 'is_plural' =>1, 'translations' => $list_msgstr_plural_post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4372
						} else { // CONTEXT + PLURAL 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4373
							$entry_array = array('context'=>$cur_msgid->ctxt, 'singular' => $cur_msgid->post_content, 'plural' => $cur_msgid->plural_post_content, 'is_plural' =>1, 'translations' => $list_msgstr_plural_post_content );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4374
						}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4375
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4376
					$entry = & new Translation_Entry( array_merge ( $entry_array, $comment_array ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4377
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4378
					$mo->add_entry($entry); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4379
					$noentry = false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4380
				}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4381
			}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4382
			/* to create po with empty translations */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4383
			if ($obj == 'po' && $noentry == true) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4384
				$comment_array = array(); // $list_msgstr because in msgstr (20120318)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4385
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4386
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4387
				$extracted_comments = get_post_meta ( $cur_msgid->ID, $this->msg_extracted_comments, true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4388
				if ( $extracted_comments != '' )  $comment_array['extracted_comments'] = $extracted_comments;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4389
				if ( $cur_msgid->post_excerpt != '' ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4390
					$references = explode ('#: ', $cur_msgid->post_excerpt );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4391
					$comment_array['references'] = $references;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4392
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4393
				$flags = get_post_meta ( $cur_msgid->ID, 'flags', true );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4394
				if ( $flags != '' )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4395
					$comment_array['flags'] = explode (', ', $flags );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4396
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4397
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4398
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4399
				$entry = & new Translation_Entry( array_merge ( array('singular'=>$cur_msgid->post_content,'translations'=> ""), $comment_array ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4400
				$mo->add_entry($entry);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4401
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4402
		}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4403
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4404
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4405
			
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4406
		return $mo;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4407
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4408
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4409
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4410
	 * Save MO object to file
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4411
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4412
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4413
	 * @since 1.0 - only WP >= 2.8.4
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4414
	 * @updated 1.0.5 - wp-net 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4415
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4416
	 * @updated 2.1
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4417
	 */	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4418
	function Save_MO_to_file ($curlang , $mo, $createfile = "" )	{
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4419
		$filename = ( strlen ($curlang) == 5 ) ? substr($curlang,0,3).strtoupper(substr($curlang,-2)) : $curlang;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4420
		$filename .= '.mo';
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4421
		if ("" == $createfile)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4422
			$createfile = $this->get_template_directory.$this->langfolder.$filename;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4423
		//echo $createfile;	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4424
		if (false === $mo->export_to_file($createfile)) return false;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4425
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4426
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4427
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4428
	 * Save PO object to file
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4429
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4430
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4431
	 * @since 1.0 - only WP >= 2.8.4
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4432
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4433
	 * @updated 2.1
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4434
	 */	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4435
	function Save_PO_to_file ($curlang , $po, $createfile = ""  )	{
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4436
		$filename = ( strlen ($curlang) == 5 ) ? substr($curlang,0,3).strtoupper(substr($curlang,-2)) : $curlang;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4437
		$filename .= '.po';
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4438
		if ( "" == $createfile)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4439
			$createfile = $this->get_template_directory.$this->langfolder.$filename;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4440
			if ( defined ('WP_DEBUG') &&  WP_DEBUG != true ) error_log ( '---- po file ------- '.$createfile );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4441
		if ( false === $po->export_to_file( $createfile ) ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4442
			return false;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4443
		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4444
			return true;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4445
		}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4446
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4447
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4448
	/** 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4449
	 * thanks to http://urbangiraffe.com/articles/translating-wordpress-themes-and-plugins/2/#plural_forms
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4450
	 * @since 1.0 - only WP >= 2.8
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4451
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4452
	 * called when creating po
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4453
	 */	
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4454
	function plural_forms_rule( $curlang ) {	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4455
		$curlang = ( strlen ($curlang) == 5 ) ? substr($curlang,0,3).strtoupper(substr($curlang,-2)) : $curlang;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4456
		$rulesarrays = array(
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4457
		'nplurals=1; plural=0' => array('tr_TR','ja_JA','ja'),
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4458
		'nplurals=2; plural=1' => array('zh_ZH'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4459
		'nplurals=2; plural=n != 1' => array('en_US','en_UK','es_ES','da_DA'), 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4460
		'nplurals=2; plural=n>1' => array('fr_FR','fr_CA','fr_BE','pt_BR'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4461
		'nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2' => array('lv_LV'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4462
		'nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2' => array('gd_GD'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4463
		'nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2' => array('lt_LT'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4464
		'nplurals=3; plural=n%100/10==1 ? 2 : n%10==1 ? 0 : (n+9)%10>3 ? 2 : 1' => array('hr_HR','cs_CS','ru_RU','uk_UK'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4465
		'nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0' => array('sk_SK'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4466
		'nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2' => array('pl_PL'),
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4467
		'nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3' => array('sl_SL')
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4468
		);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4469
		foreach ($rulesarrays as $rule => $langs) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4470
			if (in_array($curlang, $langs)) return $rule;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4471
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4472
		return 'nplurals=2; plural=n != 1'; /* english and most... */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4473
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4474
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4475
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4476
	 * bloginfo term and others in cpt 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4477
	 * @since 2.0
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4478
	 * 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4479
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4480
	function xili_import_infosterms_cpt () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4481
		$this->importing_mode = true ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4482
		$nbname = array ( 0, 0 ); // to import, imported
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4483
		$terms_to_import = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4484
		$temp = array ();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4485
		$temp['msgid'] = get_bloginfo( 'blogname', 'display' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4486
		$temp['extracted_comments'] = $this->local_tag.' bloginfo - blogname';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4487
		$terms_to_import[] = $temp ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4488
		$temp['msgid'] = get_bloginfo( 'description', 'display' );	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4489
		$temp['extracted_comments'] = $this->local_tag.' bloginfo - description';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4490
		$terms_to_import[] = $temp ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4491
		$temp['msgid'] = addslashes ( get_option('time_format') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4492
		$temp['extracted_comments'] = $this->local_tag.' bloginfo - time_format';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4493
		$terms_to_import[] = $temp ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4494
		$temp['msgid'] = addslashes ( get_option('date_format') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4495
		$temp['extracted_comments'] = $this->local_tag.' bloginfo - date_format';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4496
		$terms_to_import[] = $temp ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4497
		$nbname[0] += 4;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4498
		if ( class_exists ('xili_language') ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4499
			global $xili_language;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4500
			foreach ( $xili_language->comment_form_labels as $key => $label) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4501
				$temp['msgid'] =  $label ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4502
				$temp['extracted_comments'] = $this->local_tag.' comment_form_labels '.$key;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4503
				$terms_to_import[] = $temp ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4504
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4505
			$nbname[0] += count( $xili_language->comment_form_labels );
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4506
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4507
			$listlanguages = $this->get_terms_of_groups_lite ( $this->langs_group_id, TAXOLANGSGROUP,TAXONAME, 'ASC' ); //get_terms(TAXONAME, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4508
	 		foreach ($listlanguages as $reflanguage) { // 2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4509
	 			$temp['msgid'] =  $reflanguage->description ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4510
				$temp['extracted_comments'] = $this->local_tag.' language with ISO '.$reflanguage->name;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4511
				$terms_to_import[] = $temp ;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4512
	 		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4513
	 		$nbname[0] += count( $listlanguages );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4514
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4515
			if ( XILILANGUAGE_VER > '2.3.9' ) { // msgid and msgstr
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4516
				global $wp_locale;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4517
				 $wp_locale_array_trans = array (
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4518
					'Sunday' => $wp_locale->weekday[0], 'Monday' => $wp_locale->weekday[1], 'Tuesday' => $wp_locale->weekday[2], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4519
					'Wednesday' => $wp_locale->weekday[3], 'Thursday' => $wp_locale->weekday[4], 'Friday' => $wp_locale->weekday[5], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4520
					'Saturday' => $wp_locale->weekday[6],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4521
					'S_Sunday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[0]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4522
					'M_Monday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[1]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4523
					'T_Tuesday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[2]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4524
					'W_Wednesday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[3]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4525
					'T_Thursday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[4]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4526
					'F_Friday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[5]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4527
					'S_Saturday_initial' => $wp_locale->weekday_initial[$wp_locale->weekday[6]],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4528
					'Sun' => $wp_locale->weekday_abbrev[$wp_locale->weekday[0]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4529
					'Mon' => $wp_locale->weekday_abbrev[$wp_locale->weekday[1]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4530
					'Tue' => $wp_locale->weekday_abbrev[$wp_locale->weekday[2]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4531
					'Wed' => $wp_locale->weekday_abbrev[$wp_locale->weekday[3]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4532
					'Thu' => $wp_locale->weekday_abbrev[$wp_locale->weekday[4]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4533
					'Fri' => $wp_locale->weekday_abbrev[$wp_locale->weekday[5]], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4534
					'Sat' => $wp_locale->weekday_abbrev[$wp_locale->weekday[6]],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4535
					'January' => $wp_locale->month['01'], 'February' => $wp_locale->month['02'], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4536
					'March' => $wp_locale->month['03'], 'April' => $wp_locale->month['04'], 'May' => $wp_locale->month['05'], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4537
					'June' => $wp_locale->month['06'], 'July' => $wp_locale->month['07'], 'August' => $wp_locale->month['08'], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4538
					'September' => $wp_locale->month['09'], 'October' => $wp_locale->month['10'], 'November' => $wp_locale->month['11'], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4539
					'December' => $wp_locale->month['12'],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4540
					'Jan_January_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['01']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4541
					'Feb_February_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['02']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4542
					'Mar_March_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['03']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4543
					'Apr_April_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['04']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4544
					'May_May_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['05']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4545
					'Jun_June_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['06']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4546
					'Jul_July_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['07']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4547
					'Aug_August_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['08']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4548
					'Sep_September_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['09']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4549
					'Oct_October_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['10']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4550
					'Nov_November_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['11']], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4551
					'Dec_December_abbreviation' => $wp_locale->month_abbrev[$wp_locale->month['12']],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4552
					'am' => $wp_locale->meridiem['am'], 'pm' => $wp_locale->meridiem['pm'], 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4553
					'AM' => $wp_locale->meridiem['AM'], 'PM' => $wp_locale->meridiem['PM'],
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4554
					'number_format_thousands_sep' => $wp_locale->number_format['thousands_sep'], 'number_format_decimal_point' => $wp_locale->number_format['decimal_point']
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4555
					);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4556
				if ( isset ( $wp_locale->text_direction) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4557
					$wp_locale_array_trans['text_direction'] = $wp_locale->text_direction; //_x( 'ltr', 'text direction', $theme_domain ) ))  ) 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4558
				}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4559
				if ( 'en_US' == get_locale() ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4560
					foreach ( $wp_locale_array_trans as $key => $value ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4561
						$temp['msgid'] =  $key ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4562
						$temp['extracted_comments'] = $this->local_tag.' wp_locale '.$key;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4563
						$terms_to_import[] = $temp ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4564
					}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4565
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4566
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4567
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4568
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4569
		foreach ( $terms_to_import as $term )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4570
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4571
			if ( $term['msgid'] == 'text_direction' )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4572
				$the_context = 'text direction';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4573
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4574
				$the_context = null;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4575
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4576
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4577
			$result = $this->msgid_exists ( $term['msgid'], $the_context ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4578
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4579
			$t_entry = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4580
			$t_entry['extracted_comments'] = $term['extracted_comments'] ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4581
			$entry = (object) $t_entry ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4582
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4583
			if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4584
				// create the msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4585
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4586
				$msgid_post_ID = $this->insert_one_cpt_and_meta( $term['msgid'], $the_context, 'msgid', 0, $entry ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4587
				$nbname[1]++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4588
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4589
				$msgid_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4590
				// add comment in existing ?
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4591
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4592
			$nbname[0]++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4593
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4594
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4595
		$curlang = get_locale() ; // admin language of config - import id and str
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4596
		if ( class_exists ('xili_language') && XILILANGUAGE_VER > '2.3.9' && 'en_US' != $curlang ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4597
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4598
			foreach ( $wp_locale_array_trans as $key => $value ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4599
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4600
				$t_entry = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4601
				$t_entry['extracted_comments'] = $this->local_tag.' wp_locale '.$key ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4602
				// add context for this wp_locale
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4603
				if ( $key == 'text_direction' )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4604
					$the_context = 'text direction';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4605
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4606
					$the_context = null;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4607
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4608
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4609
				$entry = (object) $t_entry ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4610
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4611
				$result = $this->msgid_exists ( $key, $the_context ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4612
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4613
				if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4614
					// create the msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4615
					
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4616
					$msgid_post_ID = $this->insert_one_cpt_and_meta( $key, $the_context, 'msgid', 0, $entry ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4617
					$nbname[1]++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4618
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4619
					$msgid_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4620
					// add comment
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4621
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4622
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4623
				$result = $this->msgstr_exists ( $value, $msgid_post_ID, $curlang ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4624
				if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4625
					$msgstr_post_ID = $this->insert_one_cpt_and_meta( $value, $the_context, 'msgstr', 0, $entry );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4626
					$nbname[1]++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4627
					wp_set_object_terms( $msgstr_post_ID, $curlang, TAXONAME );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4628
				} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4629
					$msgstr_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4630
				}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4631
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4632
				// create link according lang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4633
				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4634
				$res = get_post_meta ( $msgid_post_ID, $this->msglang_meta, false );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4635
				$thelangs =  ( is_array ( $res ) &&  array() != $res ) ? $res[0]  : array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4636
				$thelangs['msgstrlangs'][$curlang]['msgstr'] = $msgstr_post_ID;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4637
				update_post_meta ( $msgid_post_ID, $this->msglang_meta, $thelangs );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4638
				update_post_meta ( $msgstr_post_ID, $this->msgidlang_meta, $msgid_post_ID );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4639
						
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4640
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4641
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4642
			$nbname[0] += count( $wp_locale_array_trans ) ; 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4643
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4644
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4645
		$this->importing_mode = false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4646
		return $nbname;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4647
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4648
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4649
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4650
	/** 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4651
	 * taxonomy's terms in array (name - description)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4652
	 * by default taxonomy
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4653
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4654
	 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4655
	function xili_read_catsterms_cpt( $taxonomy = 'category', $local_tag = '[local]' ){
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4656
		$this->importing_mode = true ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4657
		$nbnames = array ( 0, 0 ); // term, description
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4658
		$listcategories = get_terms( $taxonomy, array('hide_empty' => false));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4659
		foreach ($listcategories as $category) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4660
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4661
			$result = $this->msgid_exists ( $category->name ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4662
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4663
			$t_entry = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4664
			$t_entry['extracted_comments'] = sprintf ( $local_tag.' name from %s with slug %s', $taxonomy, $category->slug ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4665
			$entry = (object) $t_entry ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4666
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4667
			if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4668
				// create the msgid 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4669
				$msgid_post_ID = $this->insert_one_cpt_and_meta( $category->name, null, 'msgid', 0, $entry ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4670
				$nbnames[0]++;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4671
			} else {
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4672
				$msgid_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4673
				// add comment in existing ?
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4674
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4675
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4676
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4677
			$result = $this->msgid_exists ( $category->description ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4678
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4679
			$t_entry = array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4680
			$t_entry['extracted_comments'] = sprintf ( $this->local_tag.' desc from %s with slug %s', $taxonomy, $category->slug ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4681
			$entry = (object) $t_entry ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4682
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4683
			if ( $result === false ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4684
				// create the msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4685
				$msgid_post_ID = $this->insert_one_cpt_and_meta( $category->description, null, 'msgid', 0, $entry ) ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4686
				$nbnames[1]++;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4687
			} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4688
				$msgid_post_ID = $result[0];
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4689
				// add comment in existing ?
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4690
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4691
			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4692
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4693
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4694
		$this->importing_mode = false ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4695
		return $nbnames;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4696
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4697
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4698
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4699
	 * Scan terms in themes files
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4700
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4701
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4702
	function scan_import_theme_terms( $callback, $display ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4703
		$path = $this->get_template_directory ;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4704
		$themefiles = array();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4705
		 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4706
		$dir_handle = @opendir($path) or die("Unable to open $path"); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4707
	 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4708
		while ($file = readdir($dir_handle)) { 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4709
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4710
			if (substr($file,0,1) == "_" || substr($file,0,1) == "." || substr($file,-4) != ".php") 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4711
					continue; 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4712
			 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4713
			$themefiles[] = $file;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4714
		} 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4715
	
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4716
		 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4717
		closedir($dir_handle); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4718
		 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4719
		$resultterms = array();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4720
		foreach ($themefiles as $themefile) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4721
		
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4722
			if( ! is_file( $path.'/'.$themefile) ) 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4723
				{ 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4724
	    			$dualtexts = __('error'); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4725
				} elseif ($themefile != 'functions.php'){  
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4726
					$lines = @file( $path.'/'.$themefile); 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4727
		 			$t=0;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4728
					foreach ($lines as $line) { 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4729
						$i = preg_match_all("/_[_e]\('(.*)', ?'/Ui", $line, $matches,PREG_PATTERN_ORDER);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4730
	 					if ($i > 0) { 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4731
							$resultterms = array_merge ($resultterms, $matches[1]);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4732
							$t += $i; 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4733
						}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4734
			 		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4735
					if ($display >= 1) 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4736
						call_user_func($callback, $themefile, $t);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4737
				} 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4738
		 }
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4739
		if ($display == 2) 
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4740
			call_user_func($callback, $themefile, $t, $resultterms);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4741
			
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4742
		return $resultterms;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4743
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4744
	function build_scanned_files ($themefile, $t, $resultterms = array()) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4745
		if ($resultterms == array()) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4746
			$this->tempoutput .= "- ".$themefile." (".$t.") ";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4747
		} else {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4748
			$this->tempoutput .= "<br /><strong>".__('List of found terms','xili-dictionary').": </strong><br />";
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4749
			$this->tempoutput .= implode (', ',$resultterms);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4750
		}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4751
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4752
	
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4753
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4754
	 * Recursive search of files in a path
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4755
	 * @since 1.0
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4756
	 *
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4757
	 */
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4758
	 function find_files($path, $pattern, $callback) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4759
		  //$path = rtrim(str_replace("\\", "/", $path), '/') . '/';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4760
		  $matches = Array();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4761
		  $entries = Array();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4762
		  $dir = dir($path);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4763
		  while (false !== ($entry = $dir->read())) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4764
		    $entries[] = $entry;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4765
		  }
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4766
		  $dir->close();
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4767
		  foreach ($entries as $entry) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4768
		    $fullname = $path .$this->ossep. $entry;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4769
		    if ($entry != '.' && $entry != '..' && is_dir($fullname)) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4770
		      $this->find_files($fullname, $pattern, $callback);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4771
		    } else if (is_file($fullname) && preg_match($pattern, $entry)) {
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4772
		      call_user_func($callback, $path , $entry);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4773
		    }
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4774
		  }
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4775
	}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4776
	/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4777
	 * display lines of files in special sidebox
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4778
	 * @since 1.0
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4779
	 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4780
	function available_mo_files( $path , $filename ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4781
  		$langfolder = str_replace($this->get_template_directory, '', $path);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4782
  		if  ( $langfolder == "" ) $langfolder = '/';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4783
  		$shortfilename = str_replace(".mo","",$filename );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4784
  		$alert = '<span style="color:red;">'.__('Uncommon filename','xili-dictionary').'</span>' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4785
  		if ( strlen($shortfilename)!=5 && strlen($shortfilename) != 2  ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4786
  		  if ( false === strpos( $shortfilename, 'local-' ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4787
  		  	$message = $alert;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4788
  		  } else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4789
  		  	$message = '<em>'.__("Site's values",'xili-dictionary').'</em>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4790
  		  }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4791
  			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4792
  		} else if (  false === strpos( $shortfilename, '_' ) && strlen($shortfilename) == 5 )  {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4793
  			$message = $alert; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4794
  		} else {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4795
  			$message = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4796
  		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4797
  		  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4798
  		echo $shortfilename . " (". $langfolder . ") " . $message . "<br />";
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4799
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4800
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4801
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4802
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4803
	 * Contextual help
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4804
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4805
	 * @since 1.2.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4806
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4807
	 function add_help_text($contextual_help, $screen_id, $screen) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4808
	  //error_log($screen->id);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4809
	  $more_infos =    
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4810
		      '<p><strong>' . __('For more information:') . '</strong></p>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4811
		      '<p>' . __('<a href="http://wiki.xiligroup.org" target="_blank">Xili Plugins Documentation and WIKI</a>', 'xili-dictionary') . '</p>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4812
		      '<p>' . __('<a href="http://dev.xiligroup.com/xili-dictionary" target="_blank">Xili-dictionary Plugin Documentation</a>','xili-dictionary') . '</p>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4813
		      '<p>' . __('<a href="http://codex.wordpress.org/" target="_blank">WordPress Documentation</a>','xili-dictionary') . '</p>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4814
		      '<p>' . __('<a href="http://forum2.dev.xiligroup.com/" target="_blank">Support Forums</a>','xili-dictionary') . '</p>' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4815
		      
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4816
	  if ( 'xdmsg_page_dictionary_page' == $screen->id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4817
	    	$about_infos =
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4818
		      '<p>' . __('Things to remember to set xili-dictionary:','xili-dictionary') . '</p>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4819
		      '<ul>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4820
		      '<li>' . __('Verify that the theme is localizable (like kubrick, fusion or twentyten).','xili-dictionary') . '</li>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4821
		      '<li>' . __('Define the list of targeted languages.','xili-dictionary') . '</li>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4822
		      '<li>' . __('Prepare a sub-folder .po and .mo files for each language (use the default delivered with the theme or add the pot of the theme and put them inside.', 'xili-dictionary') . '</li>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4823
		      '<li>' . __('If you have files: import them to create a base dictionary. If not : add a term or use buttons of import and export metabox.', 'xili-dictionary') . '</li>' .
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4824
		      '</ul>' ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4825
		     
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4826
		  	$screen->add_help_tab( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4827
	 				'id'      => 'about-xili-dictionary',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4828
					'title'   => __('About xili-dictionary','xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4829
					'content' => $about_infos,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4830
			  ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4831
		  	$screen->add_help_tab( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4832
	 				'id'      => 'more-infos',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4833
					'title'   => __('For more infos','xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4834
					'content' => $more_infos,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4835
			  ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4836
			  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4837
	  } elseif ( in_array ($screen->id, array('xdmsg', 'edit-xdmsg') ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4838
	  	if ( 'edit-xdmsg' == $screen->id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4839
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4840
			$about_infos_edit_msg =
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4841
		      '<p>' . __('Things to remember about the list of translations (msgstr) of term (msgid) with xili-dictionary:','xili-dictionary') . '</p>'.
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4842
		      '<p>' . __('More details in next versions','xili-dictionary') . '</p>';      
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4843
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4844
	  		$screen->add_help_tab( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4845
	 				'id'      => 'about-xili-dictionary-msg',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4846
					'title'   => __('About MSG list page','xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4847
					'content' => $about_infos_edit_msg,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4848
			  ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4849
			  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4850
	  	} else { // edit or new
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4851
	  		$about_infos_msg =
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4852
		      '<p>' . __('Things to remember before to create or edit a new translation (msgstr) or a term (msgid) with xili-dictionary:','xili-dictionary') . '</p>'.
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4853
		      '<p>' . __('More details in next versions','xili-dictionary') . '</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4854
		      
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4855
	  		$screen->add_help_tab( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4856
	 				'id'      => 'about-xili-dictionary-msg',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4857
					'title'   => __('About MSG edit','xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4858
					'content' => $about_infos_msg,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4859
			  ));
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4860
	  		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4861
	  	}	  
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4862
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4863
	  	$screen->add_help_tab( array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4864
	 				'id'      => 'more-infos',
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4865
					'title'   => __('For more infos','xili-dictionary'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4866
					'content' => $more_infos,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4867
			  ));	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4868
	  	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4869
	  }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4870
	  return $contextual_help;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4871
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4872
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4873
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4874
	// called by each pointer
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4875
	function insert_news_pointer ( $case_news ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4876
			wp_enqueue_style( 'wp-pointer' );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4877
			wp_enqueue_script( 'wp-pointer', false, array('jquery') );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4878
			++$this->news_id;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4879
			$this->news_case[$this->news_id] = $case_news;	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4880
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4881
	// insert the pointers registered before
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4882
	function print_the_pointers_js (  ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4883
		if ( $this->news_id != 0 ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4884
			for ($i = 1; $i <= $this->news_id; $i++) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4885
				$this->print_pointer_js ( $i );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4886
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4887
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4888
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4889
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4890
	function print_pointer_js ( $indice  ) {  ;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4891
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4892
		$args = $this->localize_admin_js( $this->news_case[$indice], $indice );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4893
		if ( $args['pointerText'] != '' ) { // only if user don't read it before
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4894
		?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4895
		<script type="text/javascript">
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4896
		//<![CDATA[
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4897
		jQuery(document).ready( function() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4898
 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4899
 	var strings<?php echo $indice; ?> = <?php echo json_encode( $args ); ?>;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4900
 	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4901
	<?php /** Check that pointer support exists AND that text is not empty - inspired www.generalthreat.com */ ?>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4902
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4903
	if(typeof(jQuery().pointer) != 'undefined' && strings<?php echo $indice; ?>.pointerText != '') {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4904
		jQuery( strings<?php echo $indice; ?>.pointerDiv ).pointer({
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4905
			content    : strings<?php echo $indice; ?>.pointerText,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4906
			position: { edge: strings<?php echo $indice; ?>.pointerEdge,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4907
				at: strings<?php echo $indice; ?>.pointerAt,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4908
				my: strings<?php echo $indice; ?>.pointerMy,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4909
				offset: strings<?php echo $indice; ?>.pointerOffset
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4910
			},       
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4911
			close  : function() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4912
				jQuery.post( ajaxurl, {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4913
					pointer: strings<?php echo $indice; ?>.pointerDismiss,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4914
					action: 'dismiss-wp-pointer'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4915
				});
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4916
			}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4917
		}).pointer('open');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4918
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4919
});
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4920
		//]]>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4921
		</script>
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4922
		<?php
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4923
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4924
	}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4925
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4926
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4927
	/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4928
	 * News pointer for tabs
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4929
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4930
	 * @since 2.6.2
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4931
	 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4932
	 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4933
	function localize_admin_js( $case_news, $news_id ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4934
 			$about = __('Docs about xili-dictionary', 'xili-dictionary');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4935
 			$pointer_edge = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4936
 			$pointer_at = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4937
 			$pointer_my = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4938
 		switch ( $case_news ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4939
 			
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4940
 			case 'xd_new_version' :
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4941
 				$pointer_text = '<h3>' . esc_js( __( 'xili-dictionary updated', 'xili-dictionary') ) . '</h3>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4942
				$pointer_text .= '<p>' . esc_js( sprintf( __( 'xili-dictionary was updated to version %s', 'xili-dictionary' ) , XILIDICTIONARY_VER) ). '.</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4943
				$pointer_text .= '<p>' . esc_js( __( 'Version 2.2 improves border-line situations, better messaging. Don’t forget to read latest wiki post about this plugin (see link below).', 'xili-dictionary')). ',</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4944
				$pointer_text .= '<p>' . esc_js( __( 'New boxes added in edit screen of a term: list of untranslated terms, shorcuts to update quickly .mo file', 'xili-dictionary')). ',</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4945
				$pointer_text .= '<p>' . esc_js( __( 'See list and edit a term from the ', 'xili-dictionary' ).' “<a href="edit.php?post_type=xdmsg">'. __('list of msgs','xili-dictionary')."</a>”" ). ',</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4946
				$pointer_text .= '<p>' . esc_js( __( 'New queries to detect untranslated terms,', 'xili-dictionary')). '</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4947
				$pointer_text .= '<p>' . esc_js( __( 'See submenu', 'xili-dictionary' ).' “<a href="edit.php?post_type=xdmsg&page=dictionary_page">'. __('Tools, Files po mo','xili-dictionary')."</a>”" ). '.</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4948
				$pointer_text .= '<p>' . esc_js( sprintf(__( 'Before to question dev.xiligroup support, do not forget to visit %s documentation', 'xili-dictionary' ), '<a href="http://wiki.xiligroup.org" title="'.$about.'" >wiki</a>' ) ). '.</p>';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4949
 				$pointer_dismiss = 'xd-new-version-'.str_replace('.', '-', XILIDICTIONARY_VER); 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4950
 				$pointer_div = '#menu-posts-xdmsg';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4951
 				$pointer_Offset = '0 0';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4952
 				$pointer_edge = 'left';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4953
 				$pointer_my = 'left';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4954
 				$pointer_at = 'right';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4955
				break;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4956
 				
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4957
			default: // nothing 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4958
				$pointer_text = ''; 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4959
		}
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4960
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4961
 			// inspired from www.generalthreat.com
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4962
		// Get the list of dismissed pointers for the user
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4963
		$dismissed = explode( ',', (string) get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4964
		if ( in_array( $pointer_dismiss, $dismissed ) && $pointer_dismiss == 'xd-new-version-'.str_replace('.', '-', XILIDICTIONARY_VER) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4965
			$pointer_text = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4966
		// Check whether our pointer has been dismissed two times
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4967
		} elseif ( in_array( $pointer_dismiss, $dismissed ) && in_array( $pointer_dismiss.'-1', $dismissed ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4968
			$pointer_text = '';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4969
		} elseif ( in_array( $pointer_dismiss, $dismissed ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4970
			$pointer_dismiss = $pointer_dismiss.'-1';
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4971
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4972
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4973
		return array(
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4974
			'pointerText' => html_entity_decode( (string) $pointer_text, ENT_QUOTES, 'UTF-8'),
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4975
			'pointerDismiss' => $pointer_dismiss,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4976
			'pointerDiv' => $pointer_div,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4977
			'pointerEdge' => ( '' == $pointer_edge ) ? 'top' : $pointer_edge ,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4978
			'pointerAt' => ( '' == $pointer_at ) ? 'left top' : $pointer_at ,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4979
			'pointerMy' => ( '' == $pointer_my ) ? 'left top' : $pointer_my ,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4980
			'pointerOffset' => $pointer_Offset,
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4981
			'newsID' => $news_id
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4982
		);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4983
    }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4984
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4985
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4986
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4987
	/**** Functions that improve taxinomy.php - avoid conflict if xl absent ****/
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4988
	function get_terms_of_groups_lite ($group_ids, $taxonomy, $taxonomy_child, $order = '') {
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4989
		global $wpdb;
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4990
		if ( !is_array($group_ids) )
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4991
			$group_ids = array($group_ids);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4992
		$group_ids = array_map('intval', $group_ids);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4993
		$group_ids = implode(', ', $group_ids);
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4994
		$theorderby = '';
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4995
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4996
		// lite release
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4997
		if ($order == 'ASC' || $order == 'DESC') $theorderby = ' ORDER BY tr.term_order '.$order ;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  4998
			
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  4999
		$query = "SELECT t.*, tt2.term_taxonomy_id, tt2.description,tt2.parent, tt2.count, tt2.taxonomy, tr.term_order FROM $wpdb->term_relationships AS tr INNER JOIN $wpdb->term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id INNER JOIN $wpdb->terms AS t ON t.term_id = tr.object_id INNER JOIN $wpdb->term_taxonomy AS tt2 ON tt2.term_id = tr.object_id WHERE tt.taxonomy IN ('".$taxonomy."') AND tt2.taxonomy = '".$taxonomy_child."' AND tt.term_id IN (".$group_ids.") ".$theorderby;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5000
		
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5001
		$listterms = $wpdb->get_results($query);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5002
		if ( ! $listterms )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5003
			return array();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5004
	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5005
		return $listterms;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5006
	}	
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5007
	// used onetime from v2 to v2.1
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5008
	function update_postmeta_msgid() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5009
		global $wpdb;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5010
		// scan msgid
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5011
		$query = sprintf("SELECT $wpdb->posts.ID 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5012
			FROM $wpdb->posts
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5013
			WHERE $wpdb->posts.post_type = '%s'
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5014
			AND $wpdb->posts.ID NOT IN
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5015
			( SELECT DISTINCT post_id FROM $wpdb->postmeta WHERE meta_key = '%s' )
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5016
			ORDER BY $wpdb->posts.ID ASC", XDMSG, $this->msglang_meta );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5017
		$listposts = $wpdb->get_results($query, ARRAY_A);
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5018
		// test if no postmeta lang
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5019
		$i = 0;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5020
		if ( $listposts ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5021
			foreach ( $listposts as $onepost ) { 
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5022
				if ( 'msgid' == get_post_meta ( $onepost['ID'], $this->msgtype_meta, true ) ) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5023
					// update
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5024
					update_post_meta ( $onepost['ID'], $this->msglang_meta, array()  );
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5025
					++$i;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5026
				}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5027
			}
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5028
		
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5029
		}
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5030
		if ( defined ( "WP_DEBUG" ) && WP_DEBUG == true ) error_log (  'XD MSG - Updated 2.0->2.1 '.count($i) ) ;
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5031
	}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5032
} /* end of class */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5033
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5034
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5035
/**
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5036
 *  filter wp_upload_dir (/wp-includes/functions.php)
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5037
 *
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5038
 * @since 1.0.5
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5039
 */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5040
 function xili_upload_dir() {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5041
 	add_filter ( 'upload_dir', 'xili_change_upload_subdir');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5042
 	$uploads= wp_upload_dir();
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5043
 	remove_filter ('upload_dir','xili_change_upload_subdir');
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5044
 	return $uploads;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5045
 }
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5046
 function xili_change_upload_subdir ($pre_uploads = array()) {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5047
 	$pre_uploads['path'] = $pre_uploads['basedir']."/languages"; /* normally easy to create this subfolder */
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5048
 	return $pre_uploads;
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5049
 }
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5050
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5051
/**
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5052
 * instantiation when xili-language is loaded
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5053
 */
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5054
function xili_dictionary_start () {
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5055
	global $wp_version, $xili_dictionary ; // for barmenu
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5056
	if ( $wp_version >= '3.2' ) $xili_dictionary = new xili_dictionary(); /* instantiation php4 for last century servers replace by =& */ 
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5057
}
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5058
add_action( 'plugins_loaded', 'xili_dictionary_start', 20 ); // after xili-language and xili_tidy_tags
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5059
194
32102edaa81b MAJ wordpress et ajout de plugin
Anthony Ly <anthonyly.com@gmail.com>
parents: 170
diff changeset
  5060
/* © xiligroup dev 20120922 */
170
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5061
8e3a5a6fc63e English version just for user loged view
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
  5062
?>