diff --git a/importexport/inc/class.importexport_definitions_ui.inc.php b/importexport/inc/class.importexport_definitions_ui.inc.php index aa3b114456..e4a2af2dbf 100644 --- a/importexport/inc/class.importexport_definitions_ui.inc.php +++ b/importexport/inc/class.importexport_definitions_ui.inc.php @@ -355,7 +355,7 @@ class importexport_definitions_ui // There's no real reason the plugin has to come from any of these, as long as it has a $steps variable if($this->plugin instanceof importexport_iface_import_plugin || $this->plugin instanceof importexport_wizard_basic_import_csv) { $content['type'] = 'import'; - } elseif($this->plugin instanceof importexport_iface_export_plugin) { + } elseif($this->plugin instanceof importexport_iface_export_plugin || $this->plugin instanceof importexport_wizard_basic_export_csv) { $content['type'] = 'export'; } else { throw new egw_exception('Invalid plugin'); diff --git a/importexport/inc/class.importexport_export_ui.inc.php b/importexport/inc/class.importexport_export_ui.inc.php index e716b68c24..88de69f14d 100644 --- a/importexport/inc/class.importexport_export_ui.inc.php +++ b/importexport/inc/class.importexport_export_ui.inc.php @@ -44,131 +44,133 @@ class importexport_export_ui { public function export_dialog($_content=array()) { $tabs = 'general_tab|selection_tab|options_tab'; - $content = array(); $sel_options = array(); $readonlys = array(); $preserv = array(); - if(empty($_content)) { - $et = new etemplate(self::_appname. '.export_dialog'); - $_appname = $_GET['appname']; - $_definition = $_GET['definition']; - $_plugin = $_GET['plugin']; // NOTE: definition _must_ be 'expert' if for plugin to be used! - $_selection = $_GET['selection']; + $et = new etemplate(self::_appname. '.export_dialog'); + $_appname = $_content['appname'] ? $_content['appname'] : $_GET['appname']; + $_definition = $_content['definition'] ? $_content['definition'] : $_GET['definition']; + $_plugin = $_content['plugin'] ? $_content['plugin'] : $_GET['plugin']; + $_selection = $_content['selection'] ? $_content['selection'] : $_GET['selection']; //error_log(__FILE__.__FUNCTION__. '::$_GET[\'appname\']='. $_appname. ',$_GET[\'definition\']='. $_definition. ',$_GET[\'plugin\']='.$_plugin. ',$_GET[\'selection\']='.$_selection); - // if appname is given and valid, list available definitions (if no definition is given) - if (!empty($_appname) && $GLOBALS['egw']->acl->check('run',1,$_appname)) { - $content['appname'] = $_appname; - $preserv['appname'] = $_appname; - $readonlys['appname'] = true; - $this->js->set_onload("export_dialog.appname = '$_appname';"); - $this->js->set_onload("set_style_by_class('tr','select_appname','display','none');"); - - // fill definitions - $sel_options['definition'] = array(); - $definitions = new importexport_definitions_bo(array( - 'type' => 'export', - 'application' => isset($content['appname']) ? $content['appname'] : '%' - )); - foreach ((array)$definitions->get_definitions() as $identifier) { - $definition = new importexport_definition($identifier); - if ($title = $definition->get_title()) { - $sel_options['definition'][$title] = $title; - } - unset($definition); - } - unset($definitions); - $sel_options['definition']['expert'] = lang('Expert options'); - - - if(isset($_definition) && array_key_exists($_definition,$sel_options['definition'])) { - $content['definition'] = $_definition; - } - else { - $defdescs = array_keys($sel_options['definition']); - $content['definition'] = $sel_options['definition'][$defdescs[0]]; - unset($defdescs); - } - - // fill plugins - $sel_options['plugin'] = $this->export_plugins[$_appname]['export']; - - // show definitions or plugins in ui? - if($content['definition'] == 'expert') { - if(isset($_plugin) && array_key_exists($_plugin,$sel_options['plugin'])) { - $content['plugin'] = $_plugin; - $selected_plugin = $_plugin; - } - else { -/* - $plugins_classnames = array_keys($sel_options['plugin']); - $selected_plugin = $plugins_classnames[0]; - $sel_options['plugin'] = $plugins; -*/ - } - $this->js->set_onload("set_style_by_class('tr','select_definition','display','none');"); - } - else { - - $this->js->set_onload("set_style_by_class('tr','select_plugin','display','none');"); - $this->js->set_onload("set_style_by_class('tr','save_definition','display','none');"); - - $definition = new importexport_definition($content['definition']); - $selected_plugin = $definition->plugin; - $content['description'] = $definition->description; - } - - // handle selector - if($selected_plugin) { - $plugin_object = new $selected_plugin; - - $content['description'] = $plugin_object->get_description(); - - // fill options tab - // TODO: do we need all options templates online? - // NO, we can manipulate the session array of template id on xajax request - // however, there might be other solutions... we solve this in 1.3 - $content['plugin_options_html'] = $plugin_object->get_options_etpl(); - } - - // fill selection tab - if ($_selection) { - $readonlys[$tabs]['selection_tab'] = true; - $content['selection'] = $_selection; - $preserv['selection'] = $_selection; - } - elseif ($plugin_object) { - // ToDo: I need to think abaout it... - // are selectors abstracted in the iface_egw_record_entity ? - // if so, we might not want to have html here ? - $content['plugin_selectors_html'] = $plugin_object->get_selectors_html(); - } - unset ($plugin_object); - } - // if no appname is supplied, list apps which can export - else { - (array)$apps = importexport_helper_functions::get_apps('export'); - $sel_options['appname'] = array('' => lang('Select one')) + array_combine($apps,$apps); - $this->js->set_onload("set_style_by_class('tr','select_plugin','display','none');"); - $content['plugin_selectors_html'] = $content['plugin_options_html'] = - lang('You need to select an app and format first!'); - $this->js->set_onload("document.getElementById('importexport.export_dialog.options_tab-tab').style.visibility='hidden';"); - $this->js->set_onload("document.getElementById('importexport.export_dialog.selection_tab-tab').style.visibility='hidden';"); - } - - if (!$_selection) { - $this->js->set_onload(" - disable_button('exec[preview]'); - disable_button('exec[export]'); - "); - } - - // disable preview box - $this->js->set_onload("set_style_by_class('tr','preview-box','display','none');"); + // if appname is given and valid, list available definitions (if no definition is given) + $readonlys['appname'] = (!empty($_appname) && $GLOBALS['egw']->acl->check('run',1,$_appname)); + $content['appname'] = $_appname; + $preserv['appname'] = $_appname; + if(empty($_appname)) { + $this->js->set_onload("set_style_by_class('tr','select_definition','display','none');"); } + + // fill definitions + $sel_options['definition'] = array('' => lang('Select')); + $definitions = new importexport_definitions_bo(array( + 'type' => 'export', + 'application' => isset($content['appname']) ? $content['appname'] : '%' + )); + foreach ((array)$definitions->get_definitions() as $identifier) { + $definition = new importexport_definition($identifier); + if ($title = $definition->get_title()) { + $sel_options['definition'][$title] = $title; + } + unset($definition); + } + unset($definitions); + $sel_options['definition']['expert'] = lang('Expert options'); + + if(isset($_definition) && array_key_exists($_definition,$sel_options['definition'])) { + $content['definition'] = $_definition; + } + + // fill plugins + $sel_options['plugin'] = $this->export_plugins[$_appname]['export']; + + // show definitions or plugins in ui? + if($content['definition'] == 'expert') { + if(isset($_plugin) && array_key_exists($_plugin,$sel_options['plugin'])) { + $content['plugin'] = $_plugin; + $selected_plugin = $_plugin; + } + else { +/* + $plugins_classnames = array_keys($sel_options['plugin']); + $selected_plugin = $plugins_classnames[0]; + $sel_options['plugin'] = $plugins; +*/ + } + //$this->js->set_onload("set_style_by_class('tr','select_definition','display','none');"); + } + else { + + $this->js->set_onload("set_style_by_class('tr','select_plugin','display','none');"); + $this->js->set_onload("set_style_by_class('tr','save_definition','display','none');"); + + $definition = new importexport_definition($content['definition']); + if($definition) { + $content += (array)$definition->plugin_options; + $selected_plugin = $definition->plugin; + $content['description'] = $definition->description; + } + } + + // handle selector + if($selected_plugin) { + $plugin_object = new $selected_plugin; + + $content['description'] = $plugin_object->get_description(); + + // fill options tab + // TODO: do we need all options templates online? + // NO, we can manipulate the session array of template id on xajax request + // however, there might be other solutions... we solve this in 1.3 + if(method_exists($plugin_object, 'get_selectors_html')) { + $content['plugin_options_html'] = $plugin_object->get_options_html(); + } else { + $content['plugin_options_template'] = $plugin_object->get_options_etpl(); + } + } + + // fill selection tab + if($definition && $definition->plugin_options['selection']) { + $_selection = $definition->plugin_options['selection']; + } + if ($_selection) { + $readonlys[$tabs]['selection_tab'] = true; + $content['selection'] = $_selection; + $preserv['selection'] = $_selection; + } + elseif ($plugin_object) { + // ToDo: I need to think abaout it... + // are selectors abstracted in the iface_egw_record_entity ? + // if so, we might not want to have html here ? + if(method_exists($plugin_object, 'get_selectors_html')) { + $content['plugin_selectors_html'] = $plugin_object->get_selectors_html(); + } else { + $content['plugin_selectors_template'] = $plugin_object->get_selectors_etpl(); + } + } elseif (!$_selection) { + $this->js->set_onload(" + disable_button('exec[preview]'); + disable_button('exec[export]'); + "); + } + unset ($plugin_object); + (array)$apps = importexport_helper_functions::get_apps('export'); + $sel_options['appname'] = array('' => lang('Select one')) + array_combine($apps,$apps); + $this->js->set_onload("set_style_by_class('tr','select_plugin','display','none');"); + if(!$_application && !$selected_plugin) { + $content['plugin_selectors_html'] = $content['plugin_options_html'] = + lang('You need to select an app and format first!'); + $this->js->set_onload("document.getElementById('importexport.export_dialog.options_tab-tab').style.visibility='hidden';"); + $this->js->set_onload("document.getElementById('importexport.export_dialog.selection_tab-tab').style.visibility='hidden';"); + } + + // disable preview box + $this->js->set_onload("set_style_by_class('tr','preview-box','display','none');"); + //xajax_eT_wrapper submit - elseif(class_exists('xajaxResponse')) + if(class_exists('xajaxResponse')) { //error_log(__LINE__.__FILE__.'$_content: '.print_r($_content,true)); $response = new xajaxResponse(); @@ -192,15 +194,10 @@ class importexport_export_ui { 'mapping' => array() ); } - if (isset($definition->plugin_options['selection'])) { - //$definition->plugin_options = parse(...) - } - else { - $definition->plugin_options = array_merge( - $definition->plugin_options, - array('selection' => $_content['selection']) - ); - } + $definition->plugin_options = array_merge( + $definition->plugin_options, + $_content + ); if(!$definition->plugin_options['selection']) { $response->addScript('alert("' . lang('No records selected') . '");'); @@ -246,10 +243,9 @@ class importexport_export_ui { $GLOBALS['egw']->translation->charset() ); - $response->addAssign('exec[preview-box]','innerHTML',$preview); - //$response->addAssign('divPoweredBy','style.display','none'); - $response->addAssign('exec[preview-box]','style.display','inline'); - $response->addAssign('exec[preview-box-buttons]','style.display','inline'); + $response->addAssign('exec[preview-box]','innerHTML',nl2br($preview)); + $response->jquery('.preview-box','show'); + $response->jquery('.preview-box-buttons','show'); $response->addScript("xajax_eT_wrapper();"); return $response->getXML(); @@ -355,6 +351,9 @@ class importexport_export_ui { $description = $plugin_object->get_description(); $_response->addAssign('exec[plugin_description]','innerHTML',$description); + if (isset($definition->plugin_options['selection'])) { + $_response->addScript("document.getElementById('importexport.export_dialog.selection_tab-tab').style.visibility='hidden';"); + } $this->ajax_get_plugin_options($_plugin, $_response); } unset ($plugin_object); @@ -426,12 +425,17 @@ class importexport_export_ui { if (is_a($plugin_object, 'importexport_iface_export_plugin')) { $options = $plugin_object->get_selectors_etpl(); ob_start(); + etemplate::$name_vars='exec'; $template = new etemplate($options); - $template->exec('importexport.importexport_export_ui.dialog', array(), array(), array(), array(), 2); - $html = ob_get_clean(); + $html = $template->exec('importexport.importexport_export_ui.dialog', array(), array(), array(), array(), 1); + //$html = ob_get_clean(); ob_end_clean(); - $html = preg_replace('||', - '', + $pattern = array( + '||', + '| ',200px','style' => '','modified' => '1158223670',); -$templ_data[] = array('name' => 'importexport.export_dialog.general_tab_content','template' => '','lang' => '','group' => '0','version' => '','data' => 'a:1:{i:0;a:4:{s:4:"type";s:4:"grid";s:4:"data";a:6:{i:0;a:3:{s:2:"c2";s:14:"select_appname";s:2:"c3";s:17:"select_definition";s:2:"c4";s:13:"select_plugin";}i:1;a:2:{s:1:"A";a:3:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:5:"label";s:14:"some nice text";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}i:2;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:18:"Select application";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:7:"appname";s:8:"onchange";s:87:"xajax_doXMLHTTP(\'importexport.importexport_export_ui.ajax_get_definitions\',this.value);";}}i:3;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:17:"Select definition";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:10:"definition";s:8:"onchange";s:52:"export_dialog.change_definition(this); return false;";}}i:4;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:13:"Select plugin";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:8:"onchange";s:94:"xajax_doXMLHTTP(\'importexport.importexport_export_ui.ajax_get_definition_options\',this.value);";s:7:"no_lang";s:1:"1";s:4:"name";s:6:"plugin";}}i:5;a:2:{s:1:"A";a:6:{s:4:"type";s:3:"box";s:4:"span";s:3:"all";s:4:"name";s:18:"plugin_description";s:6:"needed";s:1:"1";s:4:"size";s:1:"1";i:1;a:7:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:6:"needed";s:1:"1";i:1;a:4:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:6:"needed";s:1:"1";s:5:"label";s:11:"Description";}i:2;a:2:{s:4:"type";s:5:"label";s:4:"name";s:18:"plugin_description";}s:4:"name";s:11:"description";s:7:"no_lang";s:1:"1";}}s:1:"B";a:1:{s:4:"type";s:5:"label";}}}s:4:"rows";i:5;s:4:"cols";i:2;}}','size' => '','style' => '','modified' => '1158223021',); +$templ_data[] = array('name' => 'importexport.export_dialog.general_tab_content','template' => '','lang' => '','group' => '0','version' => '','data' => 'a:1:{i:0;a:4:{s:4:"type";s:4:"grid";s:4:"data";a:6:{i:0;a:3:{s:2:"c2";s:14:"select_appname";s:2:"c3";s:17:"select_definition";s:2:"c4";s:13:"select_plugin";}i:1;a:2:{s:1:"A";a:3:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:5:"label";s:14:"some nice text";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}i:2;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:18:"Select application";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:7:"appname";s:8:"onchange";i:1;}}i:3;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:17:"Select definition";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:10:"definition";s:8:"onchange";i:1;}}i:4;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:13:"Select plugin";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:8:"onchange";i:1;s:7:"no_lang";s:1:"1";s:4:"name";s:6:"plugin";}}i:5;a:2:{s:1:"A";a:6:{s:4:"type";s:3:"box";s:4:"span";s:3:"all";s:4:"name";s:18:"plugin_description";s:6:"needed";s:1:"1";s:4:"size";s:1:"1";i:1;a:7:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:6:"needed";s:1:"1";i:1;a:4:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:6:"needed";s:1:"1";s:5:"label";s:11:"Description";}i:2;a:2:{s:4:"type";s:5:"label";s:4:"name";s:18:"plugin_description";}s:4:"name";s:11:"description";s:7:"no_lang";s:1:"1";}}s:1:"B";a:1:{s:4:"type";s:5:"label";}}}s:4:"rows";i:5;s:4:"cols";i:2;}}','size' => '','style' => '','modified' => '1158223021',); -$templ_data[] = array('name' => 'importexport.export_dialog.options_tab','template' => '','lang' => '','group' => '0','version' => '','data' => 'a:1:{i:0;a:6:{s:4:"type";s:4:"grid";s:4:"data";a:2:{i:0;a:1:{s:2:"c1";s:4:",top";}i:1;a:1:{s:1:"A";a:3:{s:4:"type";s:4:"html";s:4:"name";s:19:"plugin_options_html";s:7:"no_lang";s:1:"1";}}}s:4:"rows";i:1;s:4:"cols";i:1;s:4:"size";s:6:",200px";s:7:"options";a:1:{i:1;s:5:"200px";}}}','size' => ',200px','style' => '','modified' => '1158223824',); +$templ_data[] = array('name' => 'importexport.export_dialog.options_tab','template' => '','lang' => '','group' => '0','version' => '','data' => 'a:1:{i:0;a:5:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:2:{s:2:"c1";s:4:",top";s:2:"h1";s:25:",@plugin_options_template";}i:1;a:1:{s:1:"A";a:3:{s:7:"no_lang";s:1:"1";s:4:"name";s:19:"plugin_options_html";s:4:"type";s:4:"html";}}i:2;a:1:{s:1:"A";a:2:{s:4:"type";s:8:"template";s:4:"name";s:24:"@plugin_options_template";}}}s:4:"cols";i:1;s:4:"rows";i:2;s:4:"size";s:6:",200px";}}','size' => ',200px','style' => '','modified' => '1286482130',); -$templ_data[] = array('name' => 'importexport.export_dialog.selection_tab','template' => '','lang' => '','group' => '0','version' => '','data' => 'a:1:{i:0;a:6:{s:4:"type";s:4:"grid";s:4:"data";a:2:{i:0;a:1:{s:2:"c1";s:4:",top";}i:1;a:1:{s:1:"A";a:3:{s:4:"type";s:4:"html";s:4:"name";s:21:"plugin_selectors_html";s:7:"no_lang";s:1:"1";}}}s:4:"rows";i:1;s:4:"cols";i:1;s:4:"size";s:6:",200px";s:7:"options";a:1:{i:1;s:5:"200px";}}}','size' => ',200px','style' => '','modified' => '1158223796',); +$templ_data[] = array('name' => 'importexport.export_dialog.selection_tab','template' => '','lang' => '','group' => '0','version' => '','data' => 'a:1:{i:0;a:6:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:2:{s:2:"c1";s:4:",top";s:2:"h1";s:27:",@plugin_selectors_template";}i:1;a:1:{s:1:"A";a:3:{s:4:"type";s:4:"html";s:4:"name";s:21:"plugin_selectors_html";s:7:"no_lang";s:1:"1";}}i:2;a:1:{s:1:"A";a:2:{s:4:"type";s:8:"template";s:4:"name";s:26:"@plugin_selectors_template";}}}s:4:"rows";i:2;s:4:"cols";i:1;s:4:"size";s:6:",200px";s:7:"options";a:1:{i:1;s:5:"200px";}}}','size' => ',200px','style' => '','modified' => '1158223796',); $templ_data[] = array('name' => 'importexport.import_definition','template' => '','lang' => '','group' => '0','version' => '0.0.1','data' => 'a:1:{i:0;a:4:{s:4:"type";s:4:"grid";s:4:"data";a:4:{i:0;a:0:{}i:1;a:1:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:92:"Import definitions (Attension: Existing definitions with equal names will be overwritten!!!)";}}i:2;a:1:{s:1:"A";a:2:{s:4:"type";s:4:"file";s:4:"name";s:11:"import_file";}}i:3;a:1:{s:1:"A";a:3:{s:4:"type";s:6:"button";s:5:"label";s:6:"Import";s:4:"name";s:6:"import";}}}s:4:"rows";i:3;s:4:"cols";i:1;}}','size' => '','style' => '','modified' => '1150533844',); @@ -61,6 +61,10 @@ $templ_data[] = array('name' => 'importexport.wizardbox','template' => '','lang' $templ_data[] = array('name' => 'importexport.wizard_basic_import_csv.choosesepncharset','template' => '','lang' => '','group' => '0','version' => '0.0.1','data' => 'a:1:{i:0;a:4:{s:4:"type";s:4:"grid";s:4:"data";a:5:{i:0;a:1:{s:1:"B";s:5:"180px";}i:1;a:2:{s:1:"A";a:4:{s:4:"type";s:5:"label";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"span";s:3:"all";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}i:2;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:14:"Fieldseperator";}s:1:"B";a:4:{s:4:"type";s:4:"text";s:7:"no_lang";s:1:"1";s:4:"name";s:8:"fieldsep";s:4:"size";s:1:"1";}}i:3;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:15:"Charset of file";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:7:"charset";s:4:"span";s:9:",width180";}}i:4;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:20:"Header lines to skip";}s:1:"B";a:3:{s:4:"type";s:3:"int";s:4:"name";s:16:"num_header_lines";s:4:"size";s:1:"0";}}}s:4:"rows";i:4;s:4:"cols";i:2;}}','size' => '','style' => '.width180 select { width:150px;}','modified' => '1268236708',); +$templ_data[] = array('name' => 'importexport.wizard_basic_export_csv.choosesepncharset','template' => '','lang' => '','group' => '0','version' => '1.9.001','data' => 'a:1:{i:0;a:4:{s:4:"type";s:4:"grid";s:4:"data";a:5:{i:0;a:1:{s:1:"B";s:5:"180px";}i:1;a:2:{s:1:"A";a:4:{s:4:"type";s:5:"label";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"span";s:3:"all";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}i:2;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:14:"Fieldseperator";}s:1:"B";a:4:{s:4:"type";s:4:"text";s:7:"no_lang";s:1:"1";s:4:"name";s:9:"delimiter";s:4:"size";s:1:"1";}}i:3;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:15:"Charset of file";}s:1:"B";a:4:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:7:"charset";s:4:"span";s:9:",width180";}}i:4;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:14:"Include header";}s:1:"B";a:2:{s:4:"type";s:11:"select-bool";s:4:"name";s:21:"begin_with_fieldnames";}}}s:4:"rows";i:4;s:4:"cols";i:2;}}','size' => '','style' => '.width180 select { width:150px;}','modified' => '1286480442',); + +$templ_data[] = array('name' => 'importexport.wizard_basic_export_csv.choose_fields','template' => '','lang' => '','group' => '0','version' => '1.9.001','data' => 'a:1:{i:0;a:5:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:0:{}i:1;a:1:{s:1:"A";a:3:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";s:4:"name";s:3:"msg";}}i:2;a:1:{s:1:"A";a:7:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:1:{s:2:"c1";s:2:"th";}i:1;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:5:"Field";}s:1:"B";a:2:{s:4:"type";s:5:"label";s:5:"label";s:12:"Target Field";}}i:2;a:2:{s:1:"A";a:3:{s:4:"type";s:5:"label";s:4:"name";s:12:"${row}[name]";s:7:"no_lang";s:1:"1";}s:1:"B";a:4:{s:4:"type";s:8:"checkbox";s:7:"no_lang";s:1:"1";s:4:"name";s:14:"export[${row}]";s:4:"size";s:18:"{$row_cont[field]}";}}}s:4:"rows";i:2;s:4:"cols";i:2;s:4:"size";s:10:",,,,,,auto";s:4:"name";s:6:"fields";s:7:"options";a:1:{i:6;s:4:"auto";}}}}s:4:"rows";i:2;s:4:"cols";i:1;s:7:"options";a:0:{}}}','size' => '','style' => '','modified' => '1286466690',); + $templ_data[] = array('name' => 'importexport.wizard_basic_import_csv.conditions','template' => '','lang' => '','group' => '0','version' => '0.01','data' => 'a:1:{i:0;a:7:{s:4:"type";s:4:"vbox";s:4:"data";a:2:{i:0;a:0:{}i:1;a:4:{s:1:"A";a:2:{s:4:"type";s:6:"select";s:4:"name";s:14:"${row}[string]";}s:1:"B";a:4:{s:4:"type";s:4:"hbox";s:4:"size";s:6:"2,,0,0";i:1;a:2:{s:4:"type";s:6:"select";s:4:"name";s:12:"${row}[type]";}i:2;a:2:{s:4:"type";s:4:"text";s:4:"name";s:12:"${row}[op_2]";}}s:1:"C";a:2:{s:4:"type";s:6:"select";s:4:"name";s:12:"${row}[true]";}s:1:"D";a:2:{s:4:"type";s:6:"select";s:4:"name";s:13:"${row}[false]";}}}s:4:"rows";i:1;s:4:"cols";i:4;s:4:"size";s:1:"2";i:1;a:6:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:1:{s:2:"c1";s:2:"th";}i:1;a:6:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:5:"Field";}s:1:"B";a:2:{s:4:"type";s:5:"label";s:5:"label";s:9:"Condition";}s:1:"C";a:5:{s:4:"type";s:4:"vbox";s:4:"size";s:1:"2";s:4:"span";s:1:"2";i:1;a:4:{s:4:"type";s:5:"label";s:4:"span";s:1:"2";s:5:"label";s:4:"True";s:5:"align";s:6:"center";}i:2;a:4:{s:4:"type";s:4:"hbox";s:4:"size";s:6:"2,,2,0";i:1;a:2:{s:4:"type";s:5:"label";s:5:"label";s:6:"Action";}i:2;a:3:{s:4:"type";s:5:"label";s:5:"label";s:4:"Stop";s:5:"align";s:5:"right";}}}s:1:"D";a:1:{s:4:"type";s:5:"label";}s:1:"E";a:5:{s:4:"type";s:4:"vbox";s:4:"size";s:1:"2";s:4:"span";s:1:"2";i:1;a:4:{s:4:"type";s:5:"label";s:4:"span";s:1:"2";s:5:"label";s:5:"False";s:5:"align";s:6:"center";}i:2;a:4:{s:4:"type";s:4:"hbox";s:4:"size";s:6:"2,,2,0";i:1;a:2:{s:4:"type";s:5:"label";s:5:"label";s:6:"Action";}i:2;a:3:{s:4:"type";s:5:"label";s:5:"label";s:4:"Stop";s:5:"align";s:5:"right";}}}s:1:"F";a:1:{s:4:"type";s:5:"label";}}i:2;a:6:{s:1:"A";a:3:{s:4:"type";s:6:"select";s:4:"name";s:14:"${row}[string]";s:4:"size";s:6:"Select";}s:1:"B";a:4:{s:4:"type";s:4:"hbox";s:4:"size";s:6:"2,,0,0";i:1;a:2:{s:4:"type";s:6:"select";s:4:"name";s:12:"${row}[type]";}i:2;a:2:{s:4:"type";s:4:"text";s:4:"name";s:12:"${row}[op_2]";}}s:1:"C";a:3:{s:4:"type";s:6:"select";s:4:"name";s:20:"${row}[true][action]";s:4:"size";s:6:"Select";}s:1:"D";a:3:{s:4:"type";s:8:"checkbox";s:5:"align";s:6:"center";s:4:"name";s:18:"${row}[true][stop]";}s:1:"E";a:3:{s:4:"type";s:6:"select";s:4:"name";s:21:"${row}[false][action]";s:4:"size";s:6:"Select";}s:1:"F";a:3:{s:4:"type";s:8:"checkbox";s:5:"align";s:6:"center";s:4:"name";s:19:"${row}[false][stop]";}}}s:4:"rows";i:2;s:4:"cols";i:6;s:4:"name";s:10:"conditions";s:7:"options";a:0:{}}i:2;a:5:{s:4:"type";s:6:"button";s:4:"name";s:3:"add";s:5:"label";s:3:"add";s:4:"help";s:59:"This causes a segfault... haven\'t figured out how to fix it";s:8:"disabled";s:1:"1";}}}','size' => '','style' => '','modified' => '1268236762',); $templ_data[] = array('name' => 'importexport.wizard_basic_import_csv.fieldmapping','template' => '','lang' => '','group' => '0','version' => '0.0.1','data' => 'a:1:{i:0;a:4:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:0:{}i:1;a:1:{s:1:"A";a:4:{s:4:"type";s:5:"label";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"span";s:3:"all";}}i:2;a:1:{s:1:"A";a:6:{s:4:"type";s:4:"grid";s:4:"data";a:3:{i:0;a:1:{s:2:"c1";s:2:"th";}i:1;a:4:{s:1:"A";a:1:{s:4:"type";s:5:"label";}s:1:"B";a:2:{s:4:"type";s:5:"label";s:5:"label";s:9:"CSV Field";}s:1:"C";a:2:{s:4:"type";s:5:"label";s:5:"label";s:12:"Target Field";}s:1:"D";a:2:{s:4:"type";s:5:"label";s:5:"label";s:11:"Translation";}}i:2;a:4:{s:1:"A";a:3:{s:4:"type";s:5:"label";s:5:"label";s:6:"${row}";s:7:"no_lang";s:1:"1";}s:1:"B";a:3:{s:4:"type";s:5:"label";s:4:"name";s:16:"csv_fields[$row]";s:7:"no_lang";s:1:"1";}s:1:"C";a:3:{s:4:"type";s:6:"select";s:7:"no_lang";s:1:"1";s:4:"name";s:19:"field_mapping[$row]";}s:1:"D";a:2:{s:4:"type";s:4:"text";s:4:"name";s:22:"field_conversion[$row]";}}}s:4:"rows";i:2;s:4:"cols";i:4;s:4:"size";s:10:",,,,,,auto";s:7:"options";a:1:{i:6;s:4:"auto";}}}}s:4:"rows";i:2;s:4:"cols";i:1;}}','size' => '','style' => '','modified' => '1268236373',);