#328 Added the capability to import/export link sets in CSV format

SVN:trunk[1129]
This commit is contained in:
Romain Quetiez
2011-03-14 14:11:08 +00:00
parent 52a47b193d
commit f3cc490295
11 changed files with 422 additions and 90 deletions

View File

@@ -827,6 +827,8 @@ EOF
{
$sSeparator = isset($aParams['separator']) ? $aParams['separator'] : ','; // default separator is comma
$sTextQualifier = isset($aParams['text_qualifier']) ? $aParams['text_qualifier'] : '"'; // default text qualifier is double quote
$aFields = isset($aParams['fields']) ? explode(',', $aParams['fields']) : null;
$aList = array();
$oAppContext = new ApplicationContext();
@@ -845,7 +847,9 @@ EOF
{
foreach(MetaModel::ListAttributeDefs($sClassName) as $sAttCode => $oAttDef)
{
if ((($oAttDef->IsExternalField()) || ($oAttDef->IsWritable())) && $oAttDef->IsScalar())
if (!is_null($aFields) && !in_array($sAttCode, $aFields)) continue;
if ($oAttDef->IsExternalField() || $oAttDef->IsWritable())
{
$aList[$sClassName][$sAttCode] = $oAttDef;
}
@@ -906,7 +910,7 @@ EOF
}
else
{
$aRow[] = $oObj->GetAsCSV($sAttCode, $sSeparator, '\\');
$aRow[] = $oObj->GetAsCSV($sAttCode, $sSeparator, $sTextQualifier);
}
}
}
@@ -959,7 +963,7 @@ EOF
}
else
{
if (($oAttDef->IsWritable()) && ($oAttDef->IsScalar()))
if ($oAttDef->IsWritable())
{
$sValue = $oObj->GetAsXML($sAttCode);
$oPage->add("<$sAttCode>$sValue</$sAttCode>\n");