Added the option to customize the import of data per view.

This commit is contained in:
2016-05-04 05:53:33 +01:00
parent 951e0c1f5d
commit 6b70aa45e6
374 changed files with 4370 additions and 2718 deletions

View File

@ -10,8 +10,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version 2.1.4
@build 2nd May, 2016
@version 2.1.5
@build 4th May, 2016
@created 30th April, 2015
@package Component Builder
@subpackage ajax.php
@ -45,6 +45,439 @@ class ComponentbuilderModelAjax extends JModelList
}
// Used in admin_view
public function getImportScripts($type)
{
$script = array();
if ('setdata' == $type)
{
// set the setdata script
$script['setdata'] = array();
$script['setdata'][] = "\t\tif (###-#-#-Component###Helper::checkArray(\$target_headers))";
$script['setdata'][] = "\t\t{";
$script['setdata'][] = "\t\t\t// make sure the file is loaded\t\t";
$script['setdata'][] = "\t\t\tJLoader::import('PHPExcel', JPATH_COMPONENT_ADMINISTRATOR . '/helpers');";
$script['setdata'][] = "\t\t\t\$jinput = JFactory::getApplication()->input;";
$script['setdata'][] = "\t\t\tforeach(\$target_headers as \$header)";
$script['setdata'][] = "\t\t\t{";
$script['setdata'][] = "\t\t\t\t\$data['target_headers'][\$header] = \$jinput->getString(\$header, null);";
$script['setdata'][] = "\t\t\t}";
$script['setdata'][] = "\t\t\t// set the data";
$script['setdata'][] = "\t\t\tif(isset(\$package['dir']))";
$script['setdata'][] = "\t\t\t{";
$script['setdata'][] = "\t\t\t\t\$inputFileType = PHPExcel_IOFactory::identify(\$package['dir']);";
$script['setdata'][] = "\t\t\t\t\$excelReader = PHPExcel_IOFactory::createReader(\$inputFileType);";
$script['setdata'][] = "\t\t\t\t\$excelReader->setReadDataOnly(true);";
$script['setdata'][] = "\t\t\t\t\$excelObj = \$excelReader->load(\$package['dir']);";
$script['setdata'][] = "\t\t\t\t\$data['array'] = \$excelObj->getActiveSheet()->toArray(null, true,true,true);";
$script['setdata'][] = "\t\t\t\t\$excelObj->disconnectWorksheets();";
$script['setdata'][] = "\t\t\t\tunset(\$excelObj);";
$script['setdata'][] = "\t\t\t\treturn \$this->save(\$data,\$table);";
$script['setdata'][] = "\t\t\t}";
$script['setdata'][] = "\t\t}";
$script['setdata'][] = "\t\treturn false;";
}
elseif ('save' == $type)
{
$script['save'][] = "\t\t// import the data if there is any";
$script['save'][] = "\t\tif(###-#-#-Component###Helper::checkArray(\$data['array']))";
$script['save'][] = "\t\t{";
$script['save'][] = "\t\t\t// get user object";
$script['save'][] = "\t\t\t\$user \t\t= JFactory::getUser();";
$script['save'][] = "\t\t\t// remove header if it has headers";
$script['save'][] = "\t\t\t\$id_key \t= \$data['target_headers']['id'];";
$script['save'][] = "\t\t\t\$published_key \t= \$data['target_headers']['published'];";
$script['save'][] = "\t\t\t\$ordering_key \t= \$data['target_headers']['ordering'];";
$script['save'][] = "\t\t\t// get the first array set";
$script['save'][] = "\t\t\t\$firstSet = reset(\$data['array']);";
$script['save'][] = "";
$script['save'][] = "\t\t\t// check if first array is a header array and remove if true";
$script['save'][] = "\t\t\tif(\$firstSet[\$id_key] == 'id' || \$firstSet[\$published_key] == 'published' || \$firstSet[\$ordering_key] == 'ordering')";
$script['save'][] = "\t\t\t{";
$script['save'][] = "\t\t\t\tarray_shift(\$data['array']);";
$script['save'][] = "\t\t\t}";
$script['save'][] = "\t\t\t";
$script['save'][] = "\t\t\t// make sure there is still values in array and that it was not only headers";
$script['save'][] = "\t\t\tif(###-#-#-Component###Helper::checkArray(\$data['array']) && \$user->authorise(\$table.'.import', 'com_###-#-#-component###') && \$user->authorise('core.import', 'com_###-#-#-component###'))";
$script['save'][] = "\t\t\t{";
$script['save'][] = "\t\t\t\t// set target.";
$script['save'][] = "\t\t\t\t\$target\t= array_flip(\$data['target_headers']);";
$script['save'][] = "\t\t\t\t// Get a db connection.";
$script['save'][] = "\t\t\t\t\$db = JFactory::getDbo();";
$script['save'][] = "\t\t\t\t// set some defaults";
$script['save'][] = "\t\t\t\t\$todayDate\t\t= JFactory::getDate()->toSql();";
$script['save'][] = "\t\t\t\t// get global action permissions";
$script['save'][] = "\t\t\t\t\$canDo\t\t\t= ###-#-#-Component###Helper::getActions(\$table);";
$script['save'][] = "\t\t\t\t\$canEdit\t\t= \$canDo->get('core.edit');";
$script['save'][] = "\t\t\t\t\$canState\t\t= \$canDo->get('core.edit.state');";
$script['save'][] = "\t\t\t\t\$canCreate\t\t= \$canDo->get('core.create');";
$script['save'][] = "\t\t\t\t\$hasAlias\t\t= \$this->getAliasesUsed(\$table);";
$script['save'][] = "\t\t\t\t// prosses the data";
$script['save'][] = "\t\t\t\tforeach(\$data['array'] as \$row)";
$script['save'][] = "\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\$found = false;";
$script['save'][] = "\t\t\t\t\tif (isset(\$row[\$id_key]) && is_numeric(\$row[\$id_key]) && \$row[\$id_key] > 0)";
$script['save'][] = "\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t// raw items import & update!";
$script['save'][] = "\t\t\t\t\t\t\$query = \$db->getQuery(true);";
$script['save'][] = "\t\t\t\t\t\t\$query";
$script['save'][] = "\t\t\t\t\t\t\t->select('version')";
$script['save'][] = "\t\t\t\t\t\t\t->from(\$db->quoteName('#__###-#-#-component###_'.\$table))";
$script['save'][] = "\t\t\t\t\t\t\t->where(\$db->quoteName('id') . ' = '. \$db->quote(\$row[\$id_key]));";
$script['save'][] = "\t\t\t\t\t\t// Reset the query using our newly populated query object.";
$script['save'][] = "\t\t\t\t\t\t\$db->setQuery(\$query);";
$script['save'][] = "\t\t\t\t\t\t\$db->execute();";
$script['save'][] = "\t\t\t\t\t\t\$found = \$db->getNumRows();";
$script['save'][] = "\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t";
$script['save'][] = "\t\t\t\t\tif(\$found && \$canEdit)";
$script['save'][] = "\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t// update item";
$script['save'][] = "\t\t\t\t\t\t\$id \t\t= \$row[\$id_key];";
$script['save'][] = "\t\t\t\t\t\t\$version\t= \$db->loadResult();";
$script['save'][] = "\t\t\t\t\t\t// reset all buckets";
$script['save'][] = "\t\t\t\t\t\t\$query \t\t= \$db->getQuery(true);";
$script['save'][] = "\t\t\t\t\t\t\$fields \t= array();";
$script['save'][] = "\t\t\t\t\t\t// Fields to update.";
$script['save'][] = "\t\t\t\t\t\tforeach(\$row as \$key => \$cell)";
$script['save'][] = "\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t// ignore column";
$script['save'][] = "\t\t\t\t\t\t\tif ('IGNORE' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// update modified";
$script['save'][] = "\t\t\t\t\t\t\tif ('modified_by' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// update modified";
$script['save'][] = "\t\t\t\t\t\t\tif ('modified' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// update version";
$script['save'][] = "\t\t\t\t\t\t\tif ('version' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$cell = (int) \$version + 1;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// verify publish authority";
$script['save'][] = "\t\t\t\t\t\t\tif ('published' == \$target[\$key] && !\$canState)";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// set to update array";
$script['save'][] = "\t\t\t\t\t\t\tif(in_array(\$key, \$data['target_headers']) && is_numeric(\$cell))";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$fields[] = \$db->quoteName(\$target[\$key]) . ' = ' . \$cell;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\telseif(in_array(\$key, \$data['target_headers']) && is_string(\$cell))";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$fields[] = \$db->quoteName(\$target[\$key]) . ' = ' . \$db->quote(\$cell);";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\telseif(in_array(\$key, \$data['target_headers']) && is_null(\$cell))";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t// if import data is null then set empty";
$script['save'][] = "\t\t\t\t\t\t\t\t\$fields[] = \$db->quoteName(\$target[\$key]) . \" = ''\";";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t// load the defaults";
$script['save'][] = "\t\t\t\t\t\t\$fields[]\t= \$db->quoteName('modified_by') . ' = ' . \$db->quote(\$user->id);";
$script['save'][] = "\t\t\t\t\t\t\$fields[]\t= \$db->quoteName('modified') . ' = ' . \$db->quote(\$todayDate);";
$script['save'][] = "\t\t\t\t\t\t// Conditions for which records should be updated.";
$script['save'][] = "\t\t\t\t\t\t\$conditions = array(";
$script['save'][] = "\t\t\t\t\t\t\t\$db->quoteName('id') . ' = ' . \$id";
$script['save'][] = "\t\t\t\t\t\t);";
$script['save'][] = "\t\t\t\t\t\t";
$script['save'][] = "\t\t\t\t\t\t\$query->update(\$db->quoteName('#__###-#-#-component###_'.\$table))->set(\$fields)->where(\$conditions);";
$script['save'][] = "\t\t\t\t\t\t\$db->setQuery(\$query);";
$script['save'][] = "\t\t\t\t\t\t\$db->execute();";
$script['save'][] = "\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\telseif (\$canCreate)";
$script['save'][] = "\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t// insert item";
$script['save'][] = "\t\t\t\t\t\t\$query = \$db->getQuery(true);";
$script['save'][] = "\t\t\t\t\t\t// reset all buckets";
$script['save'][] = "\t\t\t\t\t\t\$columns \t= array();";
$script['save'][] = "\t\t\t\t\t\t\$values \t= array();";
$script['save'][] = "\t\t\t\t\t\t\$version\t= false;";
$script['save'][] = "\t\t\t\t\t\t// Insert columns. Insert values.";
$script['save'][] = "\t\t\t\t\t\tforeach(\$row as \$key => \$cell)";
$script['save'][] = "\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t// ignore column";
$script['save'][] = "\t\t\t\t\t\t\tif ('IGNORE' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// remove id";
$script['save'][] = "\t\t\t\t\t\t\tif ('id' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// update created";
$script['save'][] = "\t\t\t\t\t\t\tif ('created_by' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// update created";
$script['save'][] = "\t\t\t\t\t\t\tif ('created' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\tcontinue;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// Make sure the alias is incremented";
$script['save'][] = "\t\t\t\t\t\t\tif ('alias' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$cell = \$this->getAlias(\$cell,\$table);";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// update version";
$script['save'][] = "\t\t\t\t\t\t\tif ('version' == \$target[\$key])";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$cell = 1;";
$script['save'][] = "\t\t\t\t\t\t\t\t\$version = true;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\t// set to insert array";
$script['save'][] = "\t\t\t\t\t\t\tif(in_array(\$key, \$data['target_headers']) && is_numeric(\$cell))";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$columns[] \t= \$target[\$key];";
$script['save'][] = "\t\t\t\t\t\t\t\t\$values[] \t= \$cell;";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\telseif(in_array(\$key, \$data['target_headers']) && is_string(\$cell))";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t\$columns[] \t= \$target[\$key];";
$script['save'][] = "\t\t\t\t\t\t\t\t\$values[] \t= \$db->quote(\$cell);";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t\telseif(in_array(\$key, \$data['target_headers']) && is_null(\$cell))";
$script['save'][] = "\t\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\t// if import data is null then set empty";
$script['save'][] = "\t\t\t\t\t\t\t\t\$columns[] \t= \$target[\$key];";
$script['save'][] = "\t\t\t\t\t\t\t\t\$values[] \t= \"''\";";
$script['save'][] = "\t\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t// load the defaults";
$script['save'][] = "\t\t\t\t\t\t\$columns[] \t= 'created_by';";
$script['save'][] = "\t\t\t\t\t\t\$values[] \t= \$db->quote(\$user->id);";
$script['save'][] = "\t\t\t\t\t\t\$columns[] \t= 'created';";
$script['save'][] = "\t\t\t\t\t\t\$values[] \t= \$db->quote(\$todayDate);";
$script['save'][] = "\t\t\t\t\t\tif (!\$version)";
$script['save'][] = "\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\$columns[] \t= 'version';";
$script['save'][] = "\t\t\t\t\t\t\t\$values[] \t= 1;";
$script['save'][] = "\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t\t// Prepare the insert query.";
$script['save'][] = "\t\t\t\t\t\t\$query";
$script['save'][] = "\t\t\t\t\t\t\t->insert(\$db->quoteName('#__###-#-#-component###_'.\$table))";
$script['save'][] = "\t\t\t\t\t\t\t->columns(\$db->quoteName(\$columns))";
$script['save'][] = "\t\t\t\t\t\t\t->values(implode(',', \$values));";
$script['save'][] = "\t\t\t\t\t\t// Set the query using our newly populated query object and execute it.";
$script['save'][] = "\t\t\t\t\t\t\$db->setQuery(\$query);";
$script['save'][] = "\t\t\t\t\t\t\$done = \$db->execute();";
$script['save'][] = "\t\t\t\t\t\tif (\$done)";
$script['save'][] = "\t\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\t\t\$aId = \$db->insertid();";
$script['save'][] = "\t\t\t\t\t\t\t// make sure the access of asset is set";
$script['save'][] = "\t\t\t\t\t\t\t###-#-#-Component###Helper::setAsset(\$aId,\$table);";
$script['save'][] = "\t\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t\telse";
$script['save'][] = "\t\t\t\t\t{";
$script['save'][] = "\t\t\t\t\t\treturn false;";
$script['save'][] = "\t\t\t\t\t}";
$script['save'][] = "\t\t\t\t}";
$script['save'][] = "\t\t\t\treturn true;";
$script['save'][] = "\t\t\t}";
$script['save'][] = "\t\t}";
$script['save'][] = "\t\treturn false;";
}
elseif ('view' == $type)
{
$script['view'][] = "<script type=\"text/javascript\">";
$script['view'][] = "\n\t<?php if (\$this->hasPackage && ###-#-#-Component###Helper::checkArray(\$this->headerList)) : ?>";
$script['view'][] = "\tJoomla.continueImport = function()";
$script['view'][] = "\t{";
$script['view'][] = "\t\tvar form = document.getElementById('adminForm');";
$script['view'][] = "\t\tvar error = false;";
$script['view'][] = "\t\tvar therequired = [<?php \$i = 0; foreach(\$this->headerList as \$name => \$title) { echo (\$i != 0)? ', \"vdm_'.\$name.'\"':'\"vdm_'.\$name.'\"'; \$i++; } ?>];";
$script['view'][] = "\t\tfor(i = 0; i < therequired.length; i++)";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\tif(jQuery('#'+therequired[i]).val() == \"\" )";
$script['view'][] = "\t\t\t{";
$script['view'][] = "\t\t\t\terror = true;";
$script['view'][] = "\t\t\t\tbreak;";
$script['view'][] = "\t\t\t}";
$script['view'][] = "\t\t}";
$script['view'][] = "\t\t// do field validation";
$script['view'][] = "\t\tif (error)";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\talert(\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_MSG_PLEASE_SELECT_ALL_COLUMNS', true); ?>\");";
$script['view'][] = "\t\t}";
$script['view'][] = "\t\telse";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\tjQuery('#loading').css('display', 'block');";
$script['view'][] = "\n\t\t\tform.gettype.value = 'continue';";
$script['view'][] = "\t\t\tform.submit();";
$script['view'][] = "\t\t}";
$script['view'][] = "\t};";
$script['view'][] = "\t<?php else: ?>";
$script['view'][] = "\tJoomla.submitbutton = function()";
$script['view'][] = "\t{";
$script['view'][] = "\t\tvar form = document.getElementById('adminForm');";
$script['view'][] = "\n\t\t// do field validation";
$script['view'][] = "\t\tif (form.import_package.value == \"\")";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\talert(\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_MSG_PLEASE_SELECT_A_FILE', true); ?>\");";
$script['view'][] = "\t\t}";
$script['view'][] = "\t\telse";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\tjQuery('#loading').css('display', 'block');";
$script['view'][] = "\n\t\t\tform.gettype.value = 'upload';";
$script['view'][] = "\t\t\tform.submit();";
$script['view'][] = "\t\t}";
$script['view'][] = "\t};";
$script['view'][] = "\n\tJoomla.submitbutton3 = function()";
$script['view'][] = "\t{";
$script['view'][] = "\t\tvar form = document.getElementById('adminForm');";
$script['view'][] = "\n\t\t// do field validation";
$script['view'][] = "\t\tif (form.import_directory.value == \"\"){";
$script['view'][] = "\t\t\talert(\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_MSG_PLEASE_SELECT_A_DIRECTORY', true); ?>\");";
$script['view'][] = "\t\t}";
$script['view'][] = "\t\telse";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\tjQuery('#loading').css('display', 'block');";
$script['view'][] = "\n\t\t\tform.gettype.value = 'folder';";
$script['view'][] = "\t\t\tform.submit();";
$script['view'][] = "\t\t}";
$script['view'][] = "\t};";
$script['view'][] = "\n\tJoomla.submitbutton4 = function()";
$script['view'][] = "\t{";
$script['view'][] = "\t\tvar form = document.getElementById('adminForm');";
$script['view'][] = "\n\t\t// do field validation";
$script['view'][] = "\t\tif (form.import_url.value == \"\" || form.import_url.value == \"http://\")";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\talert(\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_MSG_ENTER_A_URL', true); ?>\");";
$script['view'][] = "\t\t}";
$script['view'][] = "\t\telse";
$script['view'][] = "\t\t{";
$script['view'][] = "\t\t\tjQuery('#loading').css('display', 'block');";
$script['view'][] = "\n\t\t\tform.gettype.value = 'url';";
$script['view'][] = "\t\t\tform.submit();";
$script['view'][] = "\t\t}";
$script['view'][] = "\t};";
$script['view'][] = "\t<?php endif; ?>";
$script['view'][] = "\n\t// Add spindle-wheel for importations:";
$script['view'][] = "\tjQuery(document).ready(function(\$) {";
$script['view'][] = "\t\tvar outerDiv = \$('body');";
$script['view'][] = "\n\t\t\$('<div id=\"loading\"></div>')";
$script['view'][] = "\t\t\t.css(\"background\", \"rgba(255, 255, 255, .8) url('components/com_###-#-#-component###/assets/images/import.gif') 50% 15% no-repeat\")";
$script['view'][] = "\t\t\t.css(\"top\", outerDiv.position().top - \$(window).scrollTop())";
$script['view'][] = "\t\t\t.css(\"left\", outerDiv.position().left - \$(window).scrollLeft())";
$script['view'][] = "\t\t\t.css(\"width\", outerDiv.width())";
$script['view'][] = "\t\t\t.css(\"height\", outerDiv.height())";
$script['view'][] = "\t\t\t.css(\"position\", \"fixed\")";
$script['view'][] = "\t\t\t.css(\"opacity\", \"0.80\")";
$script['view'][] = "\t\t\t.css(\"-ms-filter\", \"progid:DXImageTransform.Microsoft.Alpha(Opacity = 80)\")";
$script['view'][] = "\t\t\t.css(\"filter\", \"alpha(opacity = 80)\")";
$script['view'][] = "\t\t\t.css(\"display\", \"none\")";
$script['view'][] = "\t\t\t.appendTo(outerDiv);";
$script['view'][] = "\t});";
$script['view'][] = "\n</script>";
$script['view'][] = "\n<div id=\"installer-import\" class=\"clearfix\">";
$script['view'][] = "<form enctype=\"multipart/form-data\" action=\"<?php echo JRoute::_('index.php?option=com_###-#-#-component###&view=###-#-#-view###');?>\" method=\"post\" name=\"adminForm\" id=\"adminForm\" class=\"form-horizontal form-validate\">";
$script['view'][] = "\n\t<?php if (!empty( \$this->sidebar)) : ?>";
$script['view'][] = "\t\t<div id=\"j-sidebar-container\" class=\"span2\">";
$script['view'][] = "\t\t\t<?php echo \$this->sidebar; ?>";
$script['view'][] = "\t\t</div>";
$script['view'][] = "\t\t<div id=\"j-main-container\" class=\"span10\">";
$script['view'][] = "\t<?php else : ?>";
$script['view'][] = "\t\t<div id=\"j-main-container\">";
$script['view'][] = "\t<?php endif;?>";
$script['view'][] = "\n<?php if (\$this->hasPackage && ###-#-#-Component###Helper::checkArray(\$this->headerList) && ###-#-#-Component###Helper::checkArray(\$this->headers)) : ?>";
$script['view'][] = "<fieldset class=\"uploadform\">";
$script['view'][] = "<legend><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_LINK_FILE_TO_TABLE_COLUMNS'); ?></legend>";
$script['view'][] = "<div class=\"control-group\">";
$script['view'][] = "<label class=\"control-label\" ><h4><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_TABLE_COLUMNS'); ?></h4></label>";
$script['view'][] = "<div class=\"controls\">";
$script['view'][] = "<label class=\"control-label\" ><h4><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FILE_COLUMNS'); ?></h4></label>";
$script['view'][] = "</div>";
$script['view'][] = "</div>";
$script['view'][] = "<?php foreach(\$this->headerList as \$name => \$title): ?>";
$script['view'][] = "<div class=\"control-group\">";
$script['view'][] = "<label for=\"<?php echo \$name; ?>\" class=\"control-label\" ><?php echo \$title; ?></label>";
$script['view'][] = "<div class=\"controls\">";
$script['view'][] = "<select name=\"<?php echo \$name; ?>\" id=\"vdm_<?php echo \$name; ?>\" required class=\"required input_box\" >";
$script['view'][] = "<option value=\"\"><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_PLEASE_SELECT_COLUMN'); ?></option>";
$script['view'][] = "<option value=\"IGNORE\"><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_IGNORE_COLUMN'); ?></option>";
$script['view'][] = "<?php foreach(\$this->headers as \$value => \$option): ?>";
$script['view'][] = "<?php \$selected = (strtolower(\$option) == strtolower (\$title) || strtolower(\$option) == strtolower(\$name))? 'selected=\"selected\"':''; ?>";
$script['view'][] = "<option value=\"<?php echo ###-#-#-Component###Helper::htmlEscape(\$value); ?>\" class=\"required\" <?php echo \$selected ?>><?php echo ###-#-#-Component###Helper::htmlEscape(\$option); ?></option>";
$script['view'][] = "<?php endforeach; ?>";
$script['view'][] = "</select>";
$script['view'][] = "</div>";
$script['view'][] = "</div>";
$script['view'][] = "<?php endforeach; ?>";
$script['view'][] = "<div class=\"form-actions\">";
$script['view'][] = "<input class=\"btn btn-primary\" type=\"button\" value=\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_CONTINUE'); ?>\" onclick=\"Joomla.continueImport()\" />";
$script['view'][] = "</div>";
$script['view'][] = "</fieldset>";
$script['view'][] = "<input type=\"hidden\" name=\"gettype\" value=\"continue\" />";
$script['view'][] = "<?php else: ?>";
$script['view'][] = "\t\t<?php echo JHtml::_('bootstrap.startTabSet', 'myTab', array('active' => 'upload')); ?>";
$script['view'][] = "\n<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'upload', JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FROM_UPLOAD', true)); ?>";
$script['view'][] = "<fieldset class=\"uploadform\">";
$script['view'][] = "<legend><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>";
$script['view'][] = "<div class=\"control-group\">";
$script['view'][] = "<label for=\"import_package\" class=\"control-label\"><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_SELECT_FILE'); ?></label>";
$script['view'][] = "<div class=\"controls\">";
$script['view'][] = "<input class=\"input_box\" id=\"import_package\" name=\"import_package\" type=\"file\" size=\"57\" />";
$script['view'][] = "</div>";
$script['view'][] = "</div>";
$script['view'][] = "<div class=\"form-actions\">";
$script['view'][] = "<input class=\"btn btn-primary\" type=\"button\" value=\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_UPLOAD_BOTTON'); ?>\" onclick=\"Joomla.submitbutton()\" />&nbsp;&nbsp;&nbsp;<small><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>";
$script['view'][] = "</div>";
$script['view'][] = "</fieldset>";
$script['view'][] = "<?php echo JHtml::_('bootstrap.endTab'); ?>";
$script['view'][] = "\n<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'directory', JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FROM_DIRECTORY', true)); ?>";
$script['view'][] = "<fieldset class=\"uploadform\">";
$script['view'][] = "<legend><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>";
$script['view'][] = "<div class=\"control-group\">";
$script['view'][] = "<label for=\"import_directory\" class=\"control-label\"><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_SELECT_FILE_DIRECTORY'); ?></label>";
$script['view'][] = "<div class=\"controls\">";
$script['view'][] = "<input type=\"text\" id=\"import_directory\" name=\"import_directory\" class=\"span5 input_box\" size=\"70\" value=\"<?php echo \$this->state->get('import.directory'); ?>\" />";
$script['view'][] = "</div>";
$script['view'][] = "</div>";
$script['view'][] = "<div class=\"form-actions\">";
$script['view'][] = "<input type=\"button\" class=\"btn btn-primary\" value=\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_GET_BOTTON'); ?>\" onclick=\"Joomla.submitbutton3()\" />&nbsp;&nbsp;&nbsp;<small><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>";
$script['view'][] = "</div>";
$script['view'][] = "</fieldset>";
$script['view'][] = "<?php echo JHtml::_('bootstrap.endTab'); ?>";
$script['view'][] = "\n<?php echo JHtml::_('bootstrap.addTab', 'myTab', 'url', JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FROM_URL', true)); ?>";
$script['view'][] = "<fieldset class=\"uploadform\">";
$script['view'][] = "<legend><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_UPDATE_DATA'); ?></legend>";
$script['view'][] = "<div class=\"control-group\">";
$script['view'][] = "<label for=\"import_url\" class=\"control-label\"><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_SELECT_FILE_URL'); ?></label>";
$script['view'][] = "<div class=\"controls\">";
$script['view'][] = "<input type=\"text\" id=\"import_url\" name=\"import_url\" class=\"span5 input_box\" size=\"70\" value=\"http://\" />";
$script['view'][] = "</div>";
$script['view'][] = "</div>";
$script['view'][] = "<div class=\"form-actions\">";
$script['view'][] = "<input type=\"button\" class=\"btn btn-primary\" value=\"<?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_GET_BOTTON'); ?>\" onclick=\"Joomla.submitbutton4()\" />&nbsp;&nbsp;&nbsp;<small><?php echo JTe-#-#-xt::_('COM_###-#-#-COMPONENT###_IMPORT_FORMATS_ACCEPTED'); ?> (.csv .xls .ods)</small>";
$script['view'][] = "</div>";
$script['view'][] = "</fieldset>";
$script['view'][] = "\n<?php echo JHtml::_('bootstrap.endTab'); ?>";
$script['view'][] = "\n<?php echo JHtml::_('bootstrap.endTabSet'); ?>";
$script['view'][] = "\t\t<input type=\"hidden\" name=\"gettype\" value=\"upload\" />";
$script['view'][] = "<?php endif; ?>";
$script['view'][] = "<input type=\"hidden\" name=\"task\" value=\"import.import\" />";
$script['view'][] = "<?php echo JHtml::_('form.token'); ?>";
$script['view'][] = "</form>";
$script['view'][] = "</div>";
}
// return the needed script
if (isset($script[$type]))
{
return str_replace('-#-#-', '', implode("\n",$script[$type]));
}
return false;
}
public function getFieldSelectOptions($id)
{
// Get a db connection.