*Title: toString and fromString datatype functionality. *Note!!!!!!: This functionality is experimental so a lot of things(especialy the format of data) can be changed until the final reliese. *Documentation: To simplify writing of import export scripts we have added two functions to the ezcontentobjectattribute class. Aslso related functions with the same name have been added to the datype interfase and to all datatypes in standard eZ Publish distribution exept of ezenum which is now deprecated and ezpackage which is not used. To show possibilities of these functionality two scripts have been added under bin/php/. These scripts are very simple CSV import/export scripts: - ezcsvimport.php - ezcsvexport.php They are very basic and do not pretend to be fully functional CSV import/export for ezpublish though you can use them to do real import/export. Here is a description of formats which are accepted by the datatypes for fromString( &$contentObjectAttribute, $string ), and generated by toString( $contentObjectAttribute ) methods. ezauthor: to sparate one author from another '&' char is used, to separate parts of author data '|' is used. The system escapes '|','&','\' with the '\' char. example of toString result Administrator User|sp@ez.no|0&Sergiy|bla@fooo.tt|1&SP|sp@ez.od.ua|2 to make it easy to parse such kind of strings the class ezstringutils is added under lib/ezutils. It has to functions as a members. explodeStr( $str, $delimiter = '|' ) and implodeStr( $str, $delimiter = '|' ). The first one explodes string to an array with delimiter char, the difference from PHP explode/implode is that these functions do propper escaping/unescaping of all values. ezbinaryfile: toString function of this datatype return string of next format: filepath|original_filename filepath is to a file so you can copy this file in a place you want, original_filename is the original filename of uploaded files. This might be needed for export since it is not nice to have file name as md5 of something. if you want to import binary file to the attribute you need to supply it with full path to the image argument. ezboolean: returns and accepts 1 or 0 for true and false relativly. ezcountry: returns coma-separated list of selected countries locale strings like for ex.: rus-RU,eng-GB,nor-NO ezdate: returns/accepts unix timestamp of the date. ezdatetime: returns/accepts unix timestamp of the date. ezemail returns/accepts email address. ezenum: not supported ezfloat returns/accepts floats. ezidentifier: hm.. though import/export is not needed feature for this datatype [to|from]String function return|accept identifier value ezimage returns path to original alias of an image. Accepts full path to the image you want to upload. ezinisetting returns accepts value of an inisetting. ezinteger just integer value both ways. ezisbn ISBN number as a string ezkeyword coma separated list of keywords ezmatrix uses similar format to ezauthor datatype. The columns are sparated with '|' and rows are separated with '&' ezmedia toString function of this datatype return string of next format: filepath|original_filename if you want to import media file to the attribute you need to supply it with full path to the media file. ezmultioption The first '&' separated value is the name of multioption set, then each '&' separated string represents each option in multioption set. This string it self is '|' separated value, consist of inorder: _name_ of the option and the _id_ of option item which should be selected by default. After these to values we have option_value and additional price for the option item. ezmultiprice The structure of a data handled by this data type is currency_name_1|value_1|type_of_price_1|currency_name_2|value_2|type_of_price_2|......currency_name_n|value_n|type_of_price_n| Where currency_name is thre char currency name like EUR,USD and so on, value is the price in this currency, and type can be AUTO or CUSTOM dependin on if the price in this currency has been inserted by user or calculated automaticaly. ezobjectrelation ID of related object both ways. ezobjectrelationlist '-' separated list of related object ID'd. ezoption '|' separated list of option name of the option and then | sparated list of option_item|additional item price values. ezpackage Not supported. ezprice '|' separated list of price, VAT id, and flag wether VAT is included to the price or not. ezproductcategory '|' separated string with product category name and category id, though you can call fromString method with just category name as a papameter. ezrangeoption '|' separated string contains name of the option, start,stop and step values for the option. ezselection '|' separated list of selected election item names. ezstring just a string eztext the dat text from the attribute. eztime string with the time of the day like HH:MM in 24h format ezurl string containing the url ezuser '|' separated string with user login, email, password hash, and password hash type ezxmltext raturns valid ez publish xml, and expects the same as input.