├── ooPackage ├── sources │ ├── readme.fr │ ├── readme.txt │ ├── open_16.bmp │ ├── open_26.bmp │ ├── save_16.bmp │ ├── save_26.bmp │ ├── saveas_16.bmp │ ├── saveas_26.bmp │ ├── eZextension │ │ ├── dialog.xlb │ │ ├── script.xlb │ │ ├── Module1.xba │ │ ├── Module2.xba │ │ └── Module5.xba │ ├── eZ.ini │ ├── META-INF │ │ └── manifest.xml │ ├── getNode.py │ ├── receive.py │ ├── addon.xcu │ └── send.py └── eZExtension.uno.pkg ├── doc ├── eZconversion.zip ├── OOo_documentation_benoit.odt ├── changelogs │ ├── 2.2 │ │ └── CHANGELOG-2.1.0-to-2.2.0 │ ├── 1.0 │ │ └── unstable │ │ │ ├── CHANGELOG-1.0.0beta2-to-1.0.0 │ │ │ ├── CHANGELOG-1.0.0beta1-to-1.0.0beta2 │ │ │ └── CHANGELOG-1.0.0alpha1-to-1.0.0beta1 │ ├── 2.5 │ │ └── CHANGELOG-2.4.0-to-2.5.0 │ ├── 2.4 │ │ └── CHANGELOG-2.3.0-to-2.4.0 │ ├── 2.0 │ │ ├── unstable │ │ │ ├── CHANGELOG-2.0.0beta2-to-2.0.0beta3 │ │ │ ├── CHANGELOG-1.0.0-to-2.0.0beta1 │ │ │ └── CHANGELOG-2.0.0beta1-to-2.0.0beta2 │ │ └── CHANGELOG-1.0.0-to-2.0.0 │ ├── 2.1 │ │ ├── CHANGELOG-2.0.0-to-2.1.0 │ │ └── unstable │ │ │ └── CHANGELOG-2.0.0beta3-to-2.1.0beta1 │ └── 2.3 │ │ └── CHANGELOG-2.2.0-to-2.3.0 ├── ezodf_extension_documentation.odt ├── ezodf_extension_documentation.pdf ├── eZconversion.txt └── README.daemon ├── examples ├── article.odt └── general_document_example.odt ├── templates └── ezpublish.ott ├── design └── standard │ ├── templates │ ├── ezodf │ │ ├── icon.tpl │ │ ├── browse_place.tpl │ │ ├── export.tpl │ │ └── import.tpl │ └── node │ │ ├── oosubitemscontextmenu.tpl │ │ ├── oocontextsubmenu.tpl │ │ └── oocontextmenu.tpl │ └── images │ └── ooo_logo.gif ├── settings ├── ezrest.ini.append.php ├── module.ini.append.php ├── browse.ini.append.php ├── design.ini.append.php ├── admininterface.ini.append.php ├── upload.ini.append.php ├── site.ini.append.php └── odf.ini.append.php ├── extension.xml ├── dist.sh ├── composer.json ├── README ├── modules └── ezodf │ ├── module.php │ ├── upload_export.php │ ├── upload_import.php │ ├── authenticate.php │ ├── export.php │ └── import.php ├── uploadhandlers └── ezopenofficeuploadhandler.php ├── scripts ├── converttooo.php └── daemon.php └── translations ├── dan-DK └── translation.ts ├── dut-NL └── translation.ts ├── ger-DE └── translation.ts ├── swe-SE └── translation.ts ├── untranslated └── translation.ts ├── chi-CN └── translation.ts ├── chi-TW └── translation.ts ├── jpn-JP └── translation.ts ├── cro-HR └── translation.ts ├── ita-IT └── translation.ts └── cze-CZ └── translation.ts /ooPackage/sources/readme.fr: -------------------------------------------------------------------------------- 1 | eZ extension version 0.1 [fr] 2 | -------------------------------------------------------------------------------- /ooPackage/sources/readme.txt: -------------------------------------------------------------------------------- 1 | eZ extension version 0.1 [en] 2 | -------------------------------------------------------------------------------- /doc/eZconversion.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/doc/eZconversion.zip -------------------------------------------------------------------------------- /examples/article.odt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/examples/article.odt -------------------------------------------------------------------------------- /templates/ezpublish.ott: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/templates/ezpublish.ott -------------------------------------------------------------------------------- /design/standard/templates/ezodf/icon.tpl: -------------------------------------------------------------------------------- 1 | {$node.class_identifier|class_icon( small, $node.class_name )} 2 | -------------------------------------------------------------------------------- /ooPackage/eZExtension.uno.pkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/eZExtension.uno.pkg -------------------------------------------------------------------------------- /ooPackage/sources/open_16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/sources/open_16.bmp -------------------------------------------------------------------------------- /ooPackage/sources/open_26.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/sources/open_26.bmp -------------------------------------------------------------------------------- /ooPackage/sources/save_16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/sources/save_16.bmp -------------------------------------------------------------------------------- /ooPackage/sources/save_26.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/sources/save_26.bmp -------------------------------------------------------------------------------- /ooPackage/sources/saveas_16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/sources/saveas_16.bmp -------------------------------------------------------------------------------- /ooPackage/sources/saveas_26.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/ooPackage/sources/saveas_26.bmp -------------------------------------------------------------------------------- /doc/OOo_documentation_benoit.odt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/doc/OOo_documentation_benoit.odt -------------------------------------------------------------------------------- /settings/ezrest.ini.append.php: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /design/standard/images/ooo_logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/design/standard/images/ooo_logo.gif -------------------------------------------------------------------------------- /doc/changelogs/2.2/CHANGELOG-2.1.0-to-2.2.0: -------------------------------------------------------------------------------- 1 | Changes from 2.1.0 to 2.2.0 2 | 3 | *Bugs* 4 | 5 | *Enhancements* 6 | 7 | -------------------------------------------------------------------------------- /doc/ezodf_extension_documentation.odt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/doc/ezodf_extension_documentation.odt -------------------------------------------------------------------------------- /doc/ezodf_extension_documentation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/doc/ezodf_extension_documentation.pdf -------------------------------------------------------------------------------- /examples/general_document_example.odt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezsystems/ezodf/HEAD/examples/general_document_example.odt -------------------------------------------------------------------------------- /settings/module.ini.append.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /settings/browse.ini.append.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /settings/design.ini.append.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /settings/admininterface.ini.append.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/changelogs/1.0/unstable/CHANGELOG-1.0.0beta2-to-1.0.0: -------------------------------------------------------------------------------- 1 | Changes from 1.0.0beta2 to 1.0.0 2 | 3 | *Bugs* 4 | 5 | - Fixed name of generated filename on export to be based on the name of the exported object 6 | 7 | *Enhancements* 8 | 9 | - Updated documentation 10 | - Made PDF version of the documentation 11 | 12 | -------------------------------------------------------------------------------- /ooPackage/sources/eZextension/dialog.xlb: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /settings/upload.ini.append.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /extension.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | eZ OpenOffice.org LS 5 | dev-master 6 | Copyright (C) eZ Systems AS. All rights reserved. 7 | For full copyright and license information view LICENSE file provided with this software. 8 | 9 | -------------------------------------------------------------------------------- /doc/changelogs/2.5/CHANGELOG-2.4.0-to-2.5.0: -------------------------------------------------------------------------------- 1 | Changes from 2.4.0 to 2.5.0 2 | 3 | *Bugs* 4 | 5 | - Fixed bug #16309: TC-60 - When exporting a document with an image to ODF (OpenOffice) format, the image was not in the ODF document 6 | - Fixed bug #9879: some table cells become table header cells when exporting to OOo 7 | - Fixed bug #13419: command injection in daemon.php ezodf script 8 | 9 | *Enhancements* 10 | 11 | -------------------------------------------------------------------------------- /dist.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | EXTENSION_NAME="eZ OpenOffice.org extension" 3 | EXTENSION_IDENTIFIER="ezodf" 4 | EXTENSION_SUMMARY="This extension enables import and export of OpenOffice.org Writer documents within eZ Publish" 5 | EXTENSION_LICENSE="eZ Proprietary License" 6 | EXTENSION_VERSION="2.4.0" 7 | EXTENSION_PUBLISH_VERSION="4.2" 8 | EXTENSION_ARCHIVE_NAME="ezodf" 9 | EXTENSION_PHP_VERSION="5.2" 10 | 11 | EXTENSION_FILTER_FILES="README" 12 | -------------------------------------------------------------------------------- /design/standard/templates/node/oosubitemscontextmenu.tpl: -------------------------------------------------------------------------------- 1 | 6 | 7 |
8 | {'OpenOffice.org'|i18n( 'extension/ezodf/popupmenu' )} 9 | 10 | -------------------------------------------------------------------------------- /doc/changelogs/1.0/unstable/CHANGELOG-1.0.0beta1-to-1.0.0beta2: -------------------------------------------------------------------------------- 1 | Changes from 1.0.0beta1 to 1.0.0beta2 2 | 3 | *Bugs* 4 | 5 | - Fixed proper character handling when importing documents 6 | - Fixed correct temporary storing of images during import 7 | - Fixed proper cleanup of temporary files after import and export 8 | - Fixed broken table export 9 | 10 | *Enhancements* 11 | 12 | - Added preliminary documentation 13 | - Added internationalization support 14 | 15 | -------------------------------------------------------------------------------- /ooPackage/sources/eZ.ini: -------------------------------------------------------------------------------- 1 | #This is the server configuration file for eZ OOo extension 2 | #You can add a server by adding the four following lines after 3 | #the '[ServerConfiguration]' line : 4 | # ServerAlias[x]=... 5 | # ServerURL[x]=... 6 | # ServerUsername[x]=... 7 | # ServerPassword[x]=... 8 | 9 | [ServerConfiguration] 10 | 11 | ServerAlias[0]=Localhost1 12 | ServerURL[0]=http://localhost/ 13 | ServerUsername[0]=admin 14 | ServerPassword[0]=secret 15 | -------------------------------------------------------------------------------- /doc/changelogs/2.4/CHANGELOG-2.3.0-to-2.4.0: -------------------------------------------------------------------------------- 1 | Changes from 2.3.0 to 2.4.0 2 | 3 | *Bugs* 4 | 5 | - Fixed #14661: ODF Import is broken 6 | - Fixed bug #014770: eZODF: exported document can not be imported due to fatal errors related to DOM port 7 | - Fixed bug #014777: eZODF: export header issues 8 | - Fixed bug #014782: eZODF: bold and italics formatting lost on import 9 | - Fixed bug #014550: error in odf import if ezwebin not installed 10 | 11 | *Enhancements* 12 | 13 | -------------------------------------------------------------------------------- /settings/site.ini.append.php: -------------------------------------------------------------------------------- 1 | 18 | -------------------------------------------------------------------------------- /doc/changelogs/2.0/unstable/CHANGELOG-2.0.0beta2-to-2.0.0beta3: -------------------------------------------------------------------------------- 1 | Changes from 2.0.0beta2 to 2.0.0beta3 2 | 3 | *Bugs* 4 | 5 | - Fixed export of empty table cells 6 | 7 | *Enhancements* 8 | 9 | - Added links to export PDF and Word directly in the context menu 10 | - Added support for colspan in tables 11 | - Added ini setting for tmp directory 12 | - Added support for importing and exporting custom inline tags. The tags needs to be defined in the OOo template to be visible on export. Named "eZCustominlin tagname" 13 | -------------------------------------------------------------------------------- /ooPackage/sources/eZextension/script.xlb: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ezsystems/ezodf-ls", 3 | "description": "This extension enables import and export of OpenOffice.org Writer documents within eZ Publish legacy", 4 | "type": "ezpublish-legacy-extension", 5 | "license": "GPL-2.0", 6 | "authors": [ 7 | { 8 | "name": "eZ Publish dev-team & eZ Community", 9 | "homepage": "https://github.com/ezsystems/ezodf/contributors" 10 | } 11 | ], 12 | "minimum-stability": "dev", 13 | "require": { 14 | "ezsystems/ezpublish-legacy-installer": "*" 15 | }, 16 | "extra": { 17 | "ezpublish-legacy-extension-name": "ezodf" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /ooPackage/sources/META-INF/manifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /doc/changelogs/2.0/unstable/CHANGELOG-1.0.0-to-2.0.0beta1: -------------------------------------------------------------------------------- 1 | Changes from 1.0.0 to 2.0.0beta1 2 | 3 | *Bugs* 4 | 5 | - Fixed export of table headers 6 | - Fixed import support for numbered-paragraph tag 7 | 8 | *Enhancements* 9 | 10 | - Added WebDAV import support for OpenOffice 2 documents 11 | - Added daemon script and macros for document conversion, so you can import Word, RTF files etc. 12 | - Added OpenOffice.org export link directly in the popup menu in the admin interface (3.6+ only) 13 | - Added OpenOffice.org import link directly in the popup menu in the admin interface (3.6+ only) 14 | - Changed document format from OpenOffice.org Writer 1.x to OASIS OpenDocument Text format 15 | - Added support for lists in table cells 16 | - Added .ini option to specify the path to the zip command used for export 17 | -------------------------------------------------------------------------------- /doc/changelogs/2.1/CHANGELOG-2.0.0-to-2.1.0: -------------------------------------------------------------------------------- 1 | Changes from 2.0.0 to 2.1.0 2 | 3 | *Bugs* 4 | 5 | - Fixed proper importing of headers in documents converted from Word 6 | - Fixed hardcoding of settings into ini-files 7 | - Fixed concurrency problems in conversion by using unique names for each document 8 | - Fixed better error handling when exporting object 9 | 10 | *Enhancements* 11 | 12 | - Added cleanup routines for uploaded files- Improved image handling when importing using popup option 13 | - Simplyfied and corrected code for image handling 14 | - Added checking of access rights for inline images 15 | - Changed direct sql statements from ezooimport to use fetch-function (should now work with other database) 16 | - Added access control (partially implemented, still some issues when uploading images in document) 17 | - Changed import errorhandling to be more consistent 18 | -------------------------------------------------------------------------------- /doc/changelogs/2.1/unstable/CHANGELOG-2.0.0beta3-to-2.1.0beta1: -------------------------------------------------------------------------------- 1 | Changes from 2.0.0beta3 to 2.1.0beta1 2 | 3 | *Bugs* 4 | 5 | - Fixed proper importing of headers in documents converted from Word 6 | - Fixed hardcoding of settings into ini-files 7 | - Fixed concurrency problems in conversion by using unique names for each document 8 | - Fixed better error handling when exporting object 9 | 10 | *Enhancements* 11 | 12 | - Added cleanup routines for uploaded files- Improved image handling when importing using popup option 13 | - Simplyfied and corrected code for image handling 14 | - Added checking of access rights for inline images 15 | - Changed direct sql statements from ezooimport to use fetch-function (should now work with other database) 16 | - Added access control (partially implemented, still some issues when uploading images in document) 17 | - Changed import errorhandling to be more consistent 18 | -------------------------------------------------------------------------------- /doc/changelogs/2.3/CHANGELOG-2.2.0-to-2.3.0: -------------------------------------------------------------------------------- 1 | Changes from 2.2.0 to 2.3.0 2 | 3 | *Bugs* 4 | 5 | - Fixed bug: missing output washing of node name 6 | - Fixed importing of enabled attributes from Word documents. 7 | - Fixed several wrong checks, small bugs and unitialized variables. 8 | 9 | *Enhancements* 10 | 11 | - Added ezrest methods for content operations from OpenOffice and Word 2007: 12 | retrieve node list, export/import/replace document. 13 | - Added support for export/import of blog_post data type (same as article). 14 | - Added eZSectionDefinition to templates/ezpublish.ott. 15 | - Changed the name of the OpenOffice executable to 'ooffice' in daemon.php. 16 | - Changed the timeout for the connection with the daemon from 0 to 10 to avoid 17 | connection problems. 18 | - Implemented enhancement #14230: Use the Archive Component in ezodf 19 | - Implemented enhancement #13785: Use PHP 5 DOM functions instead of ezxml 20 | -------------------------------------------------------------------------------- /doc/changelogs/2.0/unstable/CHANGELOG-2.0.0beta1-to-2.0.0beta2: -------------------------------------------------------------------------------- 1 | Changes from 2.0.0beta1 to 2.0.0beta2 2 | 3 | *Bugs* 4 | 5 | - Fixed proper UTF-8 conversion on export 6 | - Fixed not re-importing allready imported images when replacing a document 7 | - Fixed converting   to spaces on import 8 | - Fixed proper support for importing bold and italic text 9 | - Fixed cache bug when exporting objects. Scaled images was displayed with poor image quality 10 | - Fixed generating complete file list in manifest.xml when exporting objects 11 | 12 | *Enhancements* 13 | 14 | - Changed image size calculation to keep images the same after multiple import/exports 15 | - Added sections support when exporting document 16 | - Added support for import of literal text 17 | - Added support for nested lists during import 18 | - Added replace document function 19 | - Added support for matcing OOo styles named "eZCustom mytag" to eZ Publish custom tags 20 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | eZ Publish OpenOffice.org extension 2 | =================================== 3 | This extension enables import and export of OpenOffice.org Writer documents within 4 | eZ Publish. It comes with a general OpenOffice.org Writer document generation library 5 | as well, if you have custom modules that needs to generate OpenOffice.org Writer 6 | documents. 7 | 8 | Requires OpenOffice (or deratives like LibreOffice*) 2.4 or higher 9 | 10 | For documentation look under doc/* 11 | 12 | * You might need to customize $ooexecutable in scripts/*.php to support this. 13 | 14 | 15 | 16 | Known limitations 17 | ----------------- 18 | 19 | - Access checking while importing documents with images in them is not complete. 20 | The access to create images are not checked properly. 21 | - While exporting, if the user has not access to read images, they are just ignored. 22 | Should replace them with a dummy image which says "no access". 23 | - Importing document with images and storing the images in media does not work properly. 24 | -------------------------------------------------------------------------------- /design/standard/templates/ezodf/browse_place.tpl: -------------------------------------------------------------------------------- 1 |
2 | 3 | {* DESIGN: Header START *}
4 | 5 |

{'Choose document placement'|i18n('extension/ezodf/browse')}

6 | 7 | {* DESIGN: Mainline *}
8 | 9 | {* DESIGN: Header END *}
10 | 11 | {* DESIGN: Content START *}
12 | 13 |
14 | 15 |

16 | {"Please choose the placement for the OpenOffice.org object. 17 | 18 | Select the placements and click the %buttonname button. 19 | Using the recent and bookmark items for quick placement is also possible. 20 | Click on placement names to change the browse listing." 21 | |i18n('extension/ezodf/browse',, 22 | hash( '%buttonname','Select'|i18n('extension/ezodf/browse'))) 23 | |nl2br} 24 |

25 |
26 | 27 | {* DESIGN: Content END *}
28 | 29 |
30 | -------------------------------------------------------------------------------- /design/standard/templates/node/oocontextsubmenu.tpl: -------------------------------------------------------------------------------- 1 |
2 | {"Export OpenOffice"|i18n("extension/ezodf/popupmenu")} 4 | {"Export PDF"|i18n("extension/ezodf/popupmenu")} 6 | {"Export Word"|i18n("extension/ezodf/popupmenu")} 8 | {"Import OpenOffice"|i18n("extension/ezodf/popupmenu")} 10 | {"Replace OpenOffice"|i18n("extension/ezodf/popupmenu")} 12 |
13 | -------------------------------------------------------------------------------- /doc/changelogs/1.0/unstable/CHANGELOG-1.0.0alpha1-to-1.0.0beta1: -------------------------------------------------------------------------------- 1 | Changes from 1.0.0alpha1 to 1.0.0beta1 2 | 3 | *Bugs* 4 | 5 | - Fixed support for header definitions larger than 6. 6 | - Fixed adding embedded images as related objects 7 | - Fixed proper handling of XML special chars in string and text datatype during import 8 | 9 | *Enhancements* 10 | 11 | - Added support for date and initial-creator nodes as inline elements. 12 | - Added removal of empty paragraphs. 13 | - Added support for sections in non-custom documents 14 | - Imported images are now placed in a separate folder for each imported object 15 | - Added support for exporting documents using OpenOffice.org Writer Templates 16 | Template usage can be turned on/off in odf.ini, template file is also set in odf.ini 17 | - Added better error checking 18 | - Added support for multiple levels of headers in export 19 | - Added support for image size and alignment during import 20 | - Added support for image size and alignment during export 21 | - Added support for multiple header levels during import 22 | - Added support for exporting ordered and unordered lists. 23 | - Added support for exporting tables. 24 | - Added support for sequences during import, used to e.g. number images 25 | - Added removal of temporary files after import/export 26 | 27 | -------------------------------------------------------------------------------- /design/standard/templates/ezodf/export.tpl: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | 5 | {* DESIGN: Header START *}
6 | 7 |

{"OpenOffice.org export"|i18n("extension/ezodf")}

8 | 9 | {* DESIGN: Mainline *}
10 | 11 | {* DESIGN: Header END *}
12 | 13 | {* DESIGN: Content START *}
14 | 15 |
16 | 17 | OpenOffice.org 18 | 19 |

{"Export eZ Publish content to OpenOffice.org"|i18n("extension/ezodf")}

20 | 21 | {section show=$error_string} 22 |

{"Error"|i18n("extension/ezodf")}: {$error_string}

23 | {/section} 24 | 25 |

26 | {"Here you can export any eZ Publish content object to an OpenOffice.org Writer document format."|i18n("extension/ezodf")} 27 |

28 | 29 |
30 | 31 | {* DESIGN: Content END *}
32 | 33 |
34 | {* DESIGN: Control bar START *}
35 |
36 | 37 |
38 | 39 | {* DESIGN: Control bar END *}
40 |
41 | 42 |
43 | 44 |
45 | -------------------------------------------------------------------------------- /ooPackage/sources/getNode.py: -------------------------------------------------------------------------------- 1 | import unohelper 2 | from com.sun.star.lang import XServiceName 3 | from com.sun.star.lang import XMain 4 | import string 5 | import urllib 6 | 7 | g_ImplementationHelper = unohelper.ImplementationHelper() 8 | 9 | class getNode( unohelper.Base, XServiceName, XMain ): 10 | def __init__( self, ctx ): 11 | self.output = "No output" 12 | 13 | def getServiceName( self ): 14 | return self.output 15 | 16 | def run( self, args ): 17 | url = args[0] 18 | username = args[1] 19 | password = args[2] 20 | nodeID = args[3] 21 | 22 | if url.find( 'http://' ) == -1: 23 | url = 'http://' + url 24 | if url[len( url ) - 1] != '/': 25 | url = url + '/' 26 | try: 27 | params = urllib.urlencode( { "Username": username, "Password": password, "NodeID": nodeID } ) 28 | f = urllib.urlopen( url + "odf/authenticate", params ) 29 | output = f.read( ).strip( ) 30 | if output.find( '' ) == 0: 33 | self.output = 'problem:Server unreachable' 34 | elif output.find( '
' ) == 0: 35 | self.output = 'problem:Invalid node ID' 36 | else: 37 | self.output = output 38 | except: 39 | self.output = 'problem:Server unreachable' 40 | 41 | return 1 42 | 43 | g_ImplementationHelper.addImplementation( \ 44 | getNode, "org.openoffice.pyuno.eZsystems.getNode", 45 | ( "com.sun.star.lang.XServiceName", "com.sun.star.lang.XMain" ), ) 46 | -------------------------------------------------------------------------------- /doc/changelogs/2.0/CHANGELOG-1.0.0-to-2.0.0: -------------------------------------------------------------------------------- 1 | Changes from 1.0.0 to 2.0.0 2 | 3 | *Bugs* 4 | 5 | - Fixed export of table headers 6 | - Fixed import support for numbered-paragraph tag 7 | - Fixed proper UTF-8 conversion on export 8 | - Fixed not re-importing allready imported images when replacing a document 9 | - Fixed converting   to spaces on import 10 | - Fixed proper support for importing bold and italic text 11 | - Fixed cache bug when exporting objects. Scaled images was displayed with poor image quality 12 | - Fixed generating complete file list in manifest.xml when exporting objects 13 | - Fixed export of empty table cells 14 | 15 | *Enhancements* 16 | 17 | - Added WebDAV import support for OpenOffice 2 documents 18 | - Added daemon script and macros for document conversion, so you can import Word, RTF files etc. 19 | - Added OpenOffice.org export link directly in the popup menu in the admin interface (3.6+ only) 20 | - Added OpenOffice.org import link directly in the popup menu in the admin interface (3.6+ only) 21 | - Changed document format from OpenOffice.org Writer 1.x to OASIS OpenDocument Text format 22 | - Added support for lists in table cells 23 | - Added .ini option to specify the path to the zip command used for export 24 | - Changed image size calculation to keep images the same after multiple import/exports 25 | - Added sections support when exporting document 26 | - Added support for import of literal text 27 | - Added support for nested lists during import 28 | - Added replace document function 29 | - Added support for matcing OOo styles named "eZCustom mytag" to eZ Publish custom tags 30 | - Added links to export PDF and Word directly in the context menu 31 | - Added support for colspan in tables 32 | - Added ini setting for tmp directory 33 | - Added support for importing and exporting custom inline tags. The tags needs to be defined in the OOo template to be visible on export. Named "eZCustominlin tagname" 34 | 35 | -------------------------------------------------------------------------------- /design/standard/templates/node/oocontextmenu.tpl: -------------------------------------------------------------------------------- 1 | 6 | 7 |
8 | {'OpenOffice.org'|i18n( 'extension/ezodf/popupmenu' )} 9 | 10 | {* Export to OOo / OASIS document *} 11 | 16 | 17 | {* Export to PDF *} 18 | 24 | 25 | {* Export to Word *} 26 | 32 | 33 | {* Import OOo / OASIS document *} 34 | 39 | 40 | 41 | {* Replace OOo / OASIS document *} 42 | 48 | -------------------------------------------------------------------------------- /ooPackage/sources/receive.py: -------------------------------------------------------------------------------- 1 | import unohelper 2 | from com.sun.star.lang import XServiceName 3 | from com.sun.star.lang import XMain 4 | import string 5 | import urllib 6 | import base64 7 | 8 | g_ImplementationHelper = unohelper.ImplementationHelper() 9 | 10 | class receive( unohelper.Base, XServiceName, XMain ): 11 | def __init__( self, ctx ): 12 | self.output = "No output" 13 | 14 | def getServiceName( self ): 15 | return self.output 16 | 17 | def run( self, args ): 18 | url = args[0] 19 | username = args[1] 20 | password = args[2] 21 | nodeID = args[3] 22 | filename = args[4] 23 | 24 | # format the URL 25 | if url.find( 'http://' ) == -1: 26 | url = 'http://' + url 27 | if url[len( url ) - 1] != '/': 28 | url = url + '/' 29 | url = url + 'odf/upload_export' 30 | 31 | # send the request to the server 32 | try: 33 | params = urllib.urlencode( { "Username": username, "Password": password, "NodeID": nodeID } ) 34 | f = urllib.urlopen( url, params ) 35 | output = f.read() 36 | if output.find( 'problem:' ) == 0: 37 | self.output = output 38 | output = base64.standard_b64decode( output ) 39 | try: 40 | fobject = file( filename, 'w' ) 41 | fobject.write( output ) 42 | fobject.close( ) 43 | except: 44 | self.output = 'problem:Couldn\'t write to local temporary file' 45 | self.output = filename 46 | except: 47 | outputList = [] 48 | outputList.append( 'problem:Connection to the server impossible' ) 49 | outputList.append( 'Possible causes are :' ) 50 | outputList.append( '- bad server URL' ) 51 | outputList.append( '- no connection to the server' ) 52 | output = "" 53 | self.output = output.join( outputList ) 54 | self.output = 'Done' 55 | return 1 56 | 57 | g_ImplementationHelper.addImplementation( \ 58 | receive, "org.openoffice.pyuno.eZsystems.receive", 59 | ( "com.sun.star.lang.XServiceName", "com.sun.star.lang.XMain" ), ) 60 | -------------------------------------------------------------------------------- /modules/ezodf/module.php: -------------------------------------------------------------------------------- 1 | 4 | // 5 | // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 6 | // SOFTWARE NAME: eZ Publish 7 | // SOFTWARE RELEASE: 3.9.x 8 | // COPYRIGHT NOTICE: Copyright (C) 1999-2014 eZ Systems AS 9 | // SOFTWARE LICENSE: GNU General Public License v2.0 10 | // NOTICE: > 11 | // This program is free software; you can redistribute it and/or 12 | // modify it under the terms of version 2.0 of the GNU General 13 | // Public License as published by the Free Software Foundation. 14 | // 15 | // This program is distributed in the hope that it will be useful, 16 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | // GNU General Public License for more details. 19 | // 20 | // You should have received a copy of version 2.0 of the GNU General 21 | // Public License along with this program; if not, write to the Free 22 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 23 | // MA 02110-1301, USA. 24 | // 25 | // 26 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 27 | // 28 | 29 | $Module = array( 'name' => 'eZODF', 30 | 'variable_params' => true ); 31 | 32 | $ViewList = array(); 33 | $ViewList['import'] = array( 34 | 'script' => 'import.php', 35 | 'params' => array(), 36 | 'functions' => array( 'import' ), 37 | 'post_actions' => array( 'BrowseActionName' ), 38 | 'unordered_params' => array( 'node_id' => 'NodeID', 39 | 'import_type' => 'ImportType' ) ); 40 | 41 | $ViewList['export'] = array( 42 | 'script' => 'export.php', 43 | 'params' => array(), 44 | 'functions' => array( 'export' ), 45 | 'post_actions' => array( 'BrowseActionName' ), 46 | 'unordered_params' => array( 'node_id' => 'NodeID', 47 | 'export_type' => 'ExportType' ) ); 48 | 49 | 50 | /* 51 | $ViewList['upload_import'] = array( 52 | 'script' => 'upload_import.php', 53 | 'params' => array() ); 54 | 55 | $ViewList['authenticate'] = array( 56 | 'script' => 'authenticate.php', 57 | 'params' => array() ); 58 | 59 | $ViewList['upload_export'] = array( 60 | 'script' => 'upload_export.php', 61 | 'params' => array() ); 62 | */ 63 | 64 | $FunctionList = array(); 65 | $FunctionList['import'] = array(); 66 | $FunctionList['export'] = array(); 67 | 68 | ?> 69 | -------------------------------------------------------------------------------- /modules/ezodf/upload_export.php: -------------------------------------------------------------------------------- 1 | 9 | // This program is free software; you can redistribute it and/or 10 | // modify it under the terms of version 2.0 of the GNU General 11 | // Public License as published by the Free Software Foundation. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of version 2.0 of the GNU General 19 | // Public License along with this program; if not, write to the Free 20 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 21 | // MA 02110-1301, USA. 22 | // 23 | // 24 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 25 | // 26 | 27 | include_once( 'kernel/classes/datatypes/ezuser/ezuser.php' ); 28 | include_once( "extension/ezodf/modules/ezodf/ezooconverter.php" ); 29 | include_once( "lib/ezutils/classes/ezhttptool.php" ); 30 | 31 | $http = eZHTTPTool::instance(); 32 | 33 | if ( $http->hasPostVariable( 'Username' ) ); 34 | $username = $http->postVariable( 'Username' ); 35 | 36 | if ( $http->hasPostVariable( 'Password' ) ); 37 | $password = $http->postVariable( 'Password' ); 38 | 39 | if ( $http->hasPostVariable( 'NodeID' ) ); 40 | $nodeID = $http->postVariable( 'NodeID' ); 41 | 42 | // User authentication 43 | $user = eZUser::loginUser( $username, $password ); 44 | if ( $user == false ) 45 | { 46 | print( 'problem:Authentication failed' ); 47 | eZExecution::cleanExit(); 48 | } 49 | 50 | // Conversion of the stored file 51 | $converter = new eZOOConverter( ); 52 | $ooDocument = $converter->objectToOO( $nodeID ); 53 | 54 | if ( $ooDocument == false ) 55 | { 56 | print( 'problem:Conversion failed' ); 57 | eZExecution::cleanExit( ); 58 | } 59 | 60 | $file = file_get_contents( $ooDocument ); 61 | $file = base64_encode( $file ); 62 | print( $file ); 63 | 64 | // Don't display eZ Publish page structure 65 | eZExecution::cleanExit( ); 66 | 67 | ?> 68 | -------------------------------------------------------------------------------- /uploadhandlers/ezopenofficeuploadhandler.php: -------------------------------------------------------------------------------- 1 | 6 | // 7 | // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 8 | // SOFTWARE NAME: eZ Publish 9 | // SOFTWARE RELEASE: 3.9.x 10 | // COPYRIGHT NOTICE: Copyright (C) 1999-2014 eZ Systems AS 11 | // SOFTWARE LICENSE: GNU General Public License v2.0 12 | // NOTICE: > 13 | // This program is free software; you can redistribute it and/or 14 | // modify it under the terms of version 2.0 of the GNU General 15 | // Public License as published by the Free Software Foundation. 16 | // 17 | // This program is distributed in the hope that it will be useful, 18 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 19 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 | // GNU General Public License for more details. 21 | // 22 | // You should have received a copy of version 2.0 of the GNU General 23 | // Public License along with this program; if not, write to the Free 24 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 25 | // MA 02110-1301, USA. 26 | // 27 | // 28 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 29 | // 30 | 31 | /*! \file ezopenofficehandler.php 32 | */ 33 | 34 | /*! 35 | \class eZOpenofficehandler ezopenofficehandler.php 36 | \brief The class eZOpenofficehandler handles uploads of ODF files 37 | 38 | */ 39 | 40 | class eZOpenofficeUploadHandler extends eZContentUploadHandler 41 | { 42 | function eZOpenofficeUploadHandler() 43 | { 44 | $this->eZContentUploadHandler( 'OOo file handling', 'openoffice' ); 45 | } 46 | 47 | /*! 48 | Handling the uploading of OpenOffice.org docuemnt. 49 | */ 50 | function handleFile( &$upload, &$result, 51 | $filePath, $originalFilename, $mimeinfo, 52 | $location, $existingNode ) 53 | { 54 | $tmpDir = getcwd() . "/" . eZSys::cacheDirectory(); 55 | 56 | $originalFilename = basename( $originalFilename ); 57 | $tmpFile = $tmpDir . "/" . $originalFilename; 58 | copy( $filePath, $tmpFile ); 59 | 60 | $import = new eZOOImport(); 61 | $tmpResult = $import->import( $tmpFile, $location, $originalFilename, 'import', $upload ); 62 | 63 | $result['contentobject'] = $tmpResult['Object']; 64 | $result['contentobject_main_node'] = $tmpResult['MainNode']; 65 | unlink( $tmpFile ); 66 | 67 | 68 | return true; 69 | } 70 | 71 | } 72 | ?> 73 | -------------------------------------------------------------------------------- /doc/eZconversion.txt: -------------------------------------------------------------------------------- 1 | REM eZ Publish document conversion macros 2 | 3 | Sub convertToOOo(strFile as string, strDestFile as string) 4 | 5 | On Error GOTO ErrorHandler 6 | 7 | Dim oDoc as Object 8 | Dim strFilterSubName as String 9 | 10 | strUrl = ConvertToUrl( strFile ) 11 | oDoc = StarDesktop.loadComponentFromURL( strUrl, "_blank", 0, array(MakePropertyValue("Hidden",true))) 12 | oDoc.storeToUrl( ConvertToUrl( strDestFile ), Array()) 13 | oDoc.close(True) 14 | Exit Sub 15 | 16 | ErrorHandler: 17 | Shell("/bin/echo", 0, "Error " & Err & ": " & Error$ & " (line : " & Erl & ")" ) 18 | Shell("/bin/echo", 0, "Tried to convert file from:" + strFile + " To: " + strDestFile ) 19 | 20 | End Sub 21 | 22 | Sub convertToPDF(strFile as string, strDestFile as string) 23 | 24 | On Error GOTO ErrorHandler 25 | 26 | Dim oDoc as Object 27 | Dim strFilterSubName as String 28 | 29 | strUrl = ConvertToUrl( strFile ) 30 | oDoc = StarDesktop.loadComponentFromURL( strUrl, "_blank", 0, array(MakePropertyValue("Hidden",true))) 31 | 32 | cURL = ConvertToURL( strDestFile ) 33 | 34 | oDoc.storeToURL( cURL, Array( MakePropertyValue( "FilterName", "writer_pdf_Export" ) ) 35 | 36 | oDoc.close(True) 37 | Exit Sub 38 | 39 | ErrorHandler: 40 | Shell("/bin/echo", 0, "Error " & Err & ": " & Error$ & " (line : " & Erl & ")" ) 41 | Shell("/bin/echo", 0, "Tried to convert file from:" + strFile + " To: " + strDestFile ) 42 | 43 | End Sub 44 | 45 | Sub convertToDoc(strFile as string, strDestFile as string) 46 | On Error GOTO ErrorHandler 47 | 48 | Dim oDoc as Object 49 | Dim strFilterSubName as String 50 | 51 | strUrl = ConvertToUrl( strFile ) 52 | oDoc = StarDesktop.loadComponentFromURL( strUrl, "_blank", 0, array(MakePropertyValue("Hidden",true))) 53 | 54 | cURL = ConvertToURL( strDestFile ) 55 | 56 | oDoc.storeToURL( cURL, Array( MakePropertyValue( "FilterName", "MS Word 97" ) ) 57 | 58 | oDoc.close(True) 59 | Exit Sub 60 | 61 | ErrorHandler: 62 | Shell("/bin/echo", 0, "Error " & Err & ": " & Error$ & " (line : " & Erl & ")" ) 63 | Shell("/bin/echo", 0, "Tried to convert file from:" + strFile + " To: " + strDestFile ) 64 | 65 | End Sub 66 | 67 | Function MakePropertyValue( Optional cName As String, Optional uValue ) As com.sun.star.beans.PropertyValue 68 | oPropertyValue = createUnoStruct( "com.sun.star.beans.PropertyValue" ) 69 | If Not IsMissing( cName ) Then 70 | oPropertyValue.Name = cName 71 | EndIf 72 | If Not IsMissing( uValue ) Then 73 | oPropertyValue.Value = uValue 74 | EndIf 75 | MakePropertyValue() = oPropertyValue 76 | End Function 77 | -------------------------------------------------------------------------------- /ooPackage/sources/addon.xcu: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | com.sun.star.text.TextDocument 9 | 10 | 11 | Open... 12 | 13 | 14 | macro:///eZextension.Module1.OpenNode 15 | 16 | 17 | _self 18 | 19 | 20 | %origin%/open 21 | 22 | 23 | 24 | 25 | com.sun.star.text.TextDocument 26 | 27 | 28 | Save 29 | 30 | 31 | macro:///eZextension.Module1.SaveNode 32 | 33 | 34 | _self 35 | 36 | 37 | %origin%/save 38 | 39 | 40 | 41 | 42 | com.sun.star.text.TextDocument 43 | 44 | 45 | Save as... 46 | 47 | 48 | macro:///eZextension.Module1.SaveAsNode 49 | 50 | 51 | _self 52 | 53 | 54 | %origin%/saveas 55 | 56 | 57 | 58 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /doc/README.daemon: -------------------------------------------------------------------------------- 1 | 2 | Document conversion daemon. 3 | 4 | 5 | The document conversion daemon is a php script which is bundled with the extension. 6 | It communicates with OpenOffice.org and does the actual conversion of documents. 7 | The script needs to be started with the command-line version of PHP, which means 8 | that you need to execute the following command from the command line: 9 | 10 | $ php extension/ezodf/daemon.php 11 | 12 | 13 | Note: The document conversion daemon will only run under Linux since the socket support in PHP does not work under Windows. 14 | Note: To get the daemon to work you need to have compiled PHP with the following switches: 15 | --enable-cli 16 | --enable-pcntl 17 | --enable-sockets 18 | 19 | During the conversion, daemon runs openoffice from command line to do the actual conversion. The parameters 20 | used for this conversion can be found in deamon.php and is at time of writing: 21 | -writer -invisible -headless -nofirststartwizard -norestore 22 | 23 | The use of -headless implies that ezodf requries OpenOffice 2.4 or higher. 24 | 25 | Document conversion daemon can be configured as xinetd service. For this you need coverttooo.php utility which is 26 | supplied with this ezodf extension. Here is and example of xinetd conf file which needs to be placed 27 | in /etc/xinetd.d/ directory. 28 | File: /etc/xinetd.d/ezpublishconv 29 | service ezpconvertdaemon 30 | { 31 | id = ezpconvertdaemon 32 | type = UNLISTED 33 | socket_type = stream 34 | protocol = tcp 35 | port = 9090 36 | server = /opt/ezpublish/bin/php 37 | server_args = /opt/ezpublish/sites/trunk/extension/ezodf/converttooo.php 38 | user = sp 39 | group = sp 40 | wait = no 41 | disable = no 42 | } 43 | 44 | Where: 45 | /opt/ezpublish/bin/php - is the full path to your php cli executable 46 | /opt/ezpublish/sites/trunk/extension/ezodf/converttooo.php - is the full path to your convert script. 47 | user = sp 48 | group = sp - user and usergroup from which covert tool will be started. 49 | 50 | Openoffice requires HOME env. variable, for proper configuration please edit converttooo.php and on the 51 | top of the file modify the: 52 | $homeDir = "/home/sp"; 53 | 54 | To be sure that openoffice will start from conversion script login to the system with user 55 | from whom convert daemon will run and then: 56 | $ export HOME=[home dir from above] 57 | $ openoffice.org-2.0 58 | If openoffice starts it means that mostprobably you wont have any problems with conversion script. 59 | 60 | So now you can restart xinetd and the service should be available. 61 | 62 | Configuration of daemon as xinetd service is better, since daemon is started each time conversion is required, 63 | and if the daemon crashes for some reason it will be started next time from scratch. Also you can do much better security tuning 64 | with xinetd.($ man xinetd.conf) 65 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /modules/ezodf/upload_import.php: -------------------------------------------------------------------------------- 1 | 9 | // This program is free software; you can redistribute it and/or 10 | // modify it under the terms of version 2.0 of the GNU General 11 | // Public License as published by the Free Software Foundation. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of version 2.0 of the GNU General 19 | // Public License along with this program; if not, write to the Free 20 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 21 | // MA 02110-1301, USA. 22 | // 23 | // 24 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 25 | // 26 | 27 | include_once( "extension/ezodf/modules/ezodf/ezooimport.php" ); 28 | include_once( 'kernel/classes/datatypes/ezuser/ezuser.php' ); 29 | include_once( "lib/ezutils/classes/ezhttptool.php" ); 30 | include_once( "lib/ezutils/classes/ezhttpfile.php" ); 31 | 32 | $http = eZHTTPTool::instance(); 33 | 34 | if ( $http->hasPostVariable( 'Username' ) ); 35 | $username = $http->postVariable( 'Username' ); 36 | 37 | if ( $http->hasPostVariable( 'Password' ) ); 38 | $password = $http->postVariable( 'Password' ); 39 | 40 | if ( $http->hasPostVariable( 'NodeID' ) ); 41 | $nodeID = $http->postVariable( 'NodeID' ); 42 | 43 | if ( $http->hasPostVariable( 'ImportType' ) ); 44 | $importType = $http->postVariable( 'ImportType' ); 45 | 46 | // User authentication 47 | $user = eZUser::loginUser( $username, $password ); 48 | if ( $user == false ) 49 | { 50 | print( 'problem:Authentication failed' ); 51 | eZExecution::cleanExit(); 52 | } 53 | 54 | if ( !eZHTTPFile::canFetch( 'File' ) ) 55 | { 56 | print( 'problem:Can\'t fetch HTTP file.' ); 57 | eZExecution::cleanExit(); 58 | } 59 | 60 | $file = eZHTTPFile::fetch('File'); 61 | 62 | $fileName = $file->attribute( 'filename' ); 63 | $originalFilename = $file->attribute('original_filename'); 64 | 65 | $content = base64_decode( file_get_contents( $fileName ) ); 66 | 67 | $fd = fopen( $fileName, 'w' ); 68 | fwrite( $fd, $content ); 69 | fclose( $fd ); 70 | 71 | // Conversion of the stored file 72 | $import = new eZOOImport(); 73 | $importResult = $import->import( $fileName, $nodeID, $originalFilename, $importType ); 74 | 75 | // Verification : conversion OK ? 76 | if ( $import->getErrorNumber( ) != 0 ) 77 | { 78 | print( 'problem:Import : ' . $import->getErrorMessage( ) ); 79 | eZExecution::cleanExit(); 80 | } 81 | 82 | // End : print return string 83 | print( 'done:File successfully exported with nodeID ' . $importResult['MainNode']->attribute('node_id') ); 84 | 85 | // Don't display eZ Publish page structure 86 | eZExecution::cleanExit(); 87 | 88 | ?> 89 | -------------------------------------------------------------------------------- /settings/odf.ini.append.php: -------------------------------------------------------------------------------- 1 | ] 42 | # DefaultImportTitleAttribute= 43 | # DefaultImportBodyAttribute= 44 | # Is used to content of file into attributes if there is no known sections 45 | # in the OO input file. 46 | # Attribute[]= matches sections from the OO input document with eZ Publish attributes 47 | 48 | [article] 49 | DefaultImportTitleAttribute=title 50 | DefaultImportBodyAttribute=body 51 | Attribute[title]=title 52 | Attribute[intro]=intro 53 | Attribute[body]=body 54 | Attribute[image]=image 55 | Attribute[caption]=caption 56 | Attribute[publish_date]=publish_date 57 | Attribute[unpublish_date]=unpublish_date 58 | 59 | [folder] 60 | DefaultImportTitleAttribute=name 61 | DefaultImportBodyAttribute=description 62 | Attribute[name]=name 63 | Attribute[short_description]=short_description 64 | Attribute[description]=description 65 | 66 | [image] 67 | DefaultImportTitleAttribute=name 68 | DefaultImportBodyAttribute=image 69 | Attribute[name]=name 70 | Attribute[caption]=caption 71 | Attribute[image]=image 72 | 73 | [documentation_page] 74 | DefaultImportTitleAttribute=title 75 | DefaultImportBodyAttribute=body 76 | Attribute[title]=title 77 | Attribute[body]=body 78 | 79 | [blog_post] 80 | DefaultImportTitleAttribute=title 81 | DefaultImportBodyAttribute=body 82 | Attribute[title]=title 83 | Attribute[intro]=intro 84 | Attribute[body]=body 85 | Attribute[image]=image 86 | 87 | # DocumentType tells which are the supported document type by oo 88 | [DocumentType] 89 | # AllowedTypes are those documents which are supported and published directely and need not to convert for support. 90 | AllowedTypes[] 91 | AllowedTypes[]=odt 92 | # ConvertTypes are those documents which can be converted by oo and then it will publish it automatically. 93 | ConvertTypes[] 94 | ConvertTypes[]=doc 95 | 96 | # OO Menu related setting 97 | [OOMenuSettings] 98 | # Name of top nodes. 99 | TopNodeNameList[] 100 | TopNodeNameList[]=RootNode 101 | TopNodeNameList[]=UserRootNode 102 | TopNodeNameList[]=MediaRootNode 103 | 104 | */ ?> 105 | -------------------------------------------------------------------------------- /ooPackage/sources/eZextension/Module1.xba: -------------------------------------------------------------------------------- 1 | 2 | 3 | option explicit 4 | option compatible 5 | 6 | sub openNode( ) 7 | importExport( "Open" ) 8 | end sub 9 | 10 | sub saveNode( ) 11 | dim nodeID as integer 12 | dim oDocInfo as object 13 | dim password as string 14 | dim result as string 15 | dim serverName as string 16 | dim tmpFilePath as string 17 | dim url as string 18 | dim username as string 19 | 20 | oDocInfo = starDesktop.getCurrentComponent( ).getDocumentInfo( ) 21 | serverName = oDocInfo.getPropertyValue( "serverName" ) 22 | url = oDocInfo.getPropertyValue( "url" ) 23 | username = oDocInfo.getPropertyValue( "username" ) 24 | password = oDocInfo.getPropertyValue( "password" ) 25 | nodeID = val( oDocInfo.getPropertyValue( "nodeID" ) ) 26 | tmpFilePath = saveToTmpFile( ) 27 | result = send( url, username, password, nodeID, tmpFilePath, "replace" ) 28 | if inStr( result, "problem:" ) <> 0 then 29 | result = right( result, len( result ) - len( "problem:" ) ) 30 | msgBox( result, 16, "eZ extension" ) 31 | else 32 | result = right( result, len( result ) - len( "done:" ) ) 33 | msgBox( "File successfully replaced", 64, "eZ extension" ) 34 | end if 35 | end sub 36 | 37 | sub saveAsNode( ) 38 | importExport( "Save" ) 39 | end sub 40 | 41 | sub importExport( action as string ) 42 | dim directory as string 43 | dim oButtonContainer as object 44 | dim oDirContainer as object 45 | dim oPathContainer as object 46 | dim oServerContainer as object 47 | dim oToolKit as object 48 | dim oTopWindow as object 49 | dim server as variant 50 | 51 | oToolKit = createUnoService( "com.sun.star.awt.Toolkit" ) 52 | 53 | oTopWindow = createTopWindow( oToolKit, 400, 400, 450, 345 ) 54 | 55 | createFrame( oTopWindow, starDesktop, "TopFrame", action ) 56 | 57 | oServerContainer = serverBoxCreate( oToolKit, oTopWindow ) 58 | 59 | oPathContainer = pathBoxCreate( oToolKit, oTopWindow ) 60 | 61 | oDirContainer = dirBoxCreate( oToolKit, oTopWindow ) 62 | 63 | server = getServer( oServerContainer ) 64 | 65 | directory = getNode( server( 0 ), server( 1 ), server( 2 ), "2" ) 66 | 67 | fillDirContainer( oDirContainer, directory ) 68 | 69 | oButtonContainer = buttonBoxCreate( oToolKit, oTopWindow, action ) 70 | 71 | addLink( oServerContainer, oPathContainer, "linkToPath" ) 72 | addLink( oServerContainer, oDirContainer, "linkToDir" ) 73 | addLink( oServerContainer, oButtonContainer, "linkToButton" ) 74 | addLink( oPathContainer, oServerContainer, "linkToServer" ) 75 | addLink( oPathContainer, oDirContainer, "linkToDir" ) 76 | addLink( oPathContainer, oButtonContainer, "linkToButton" ) 77 | addLink( oDirContainer, oServerContainer, "linkToServer" ) 78 | addLink( oDirContainer, oPathContainer, "linkToPath" ) 79 | addLink( oDirContainer, oButtonContainer, "linkToButton" ) 80 | addLink( oButtonContainer, oServerContainer, "linkToServer" ) 81 | addLink( oButtonContainer, oDirContainer, "linkToDir" ) 82 | 83 | 'Display the dialog 84 | oTopWindow.setVisible( true ) 85 | 86 | end sub 87 | 88 | -------------------------------------------------------------------------------- /modules/ezodf/authenticate.php: -------------------------------------------------------------------------------- 1 | 9 | // This program is free software; you can redistribute it and/or 10 | // modify it under the terms of version 2.0 of the GNU General 11 | // Public License as published by the Free Software Foundation. 12 | // 13 | // This program is distributed in the hope that it will be useful, 14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | // GNU General Public License for more details. 17 | // 18 | // You should have received a copy of version 2.0 of the GNU General 19 | // Public License along with this program; if not, write to the Free 20 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 21 | // MA 02110-1301, USA. 22 | // 23 | // 24 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 25 | // 26 | 27 | 28 | include_once ('lib/ezutils/classes/ezfunctionhandler.php'); 29 | include_once ('lib/ezutils/classes/ezsys.php'); 30 | include_once( 'kernel/classes/datatypes/ezuser/ezuser.php' ); 31 | include_once( "lib/ezutils/classes/ezhttptool.php" ); 32 | 33 | $tpl = eZTemplate::factory(); 34 | $http = eZHTTPTool::instance(); 35 | 36 | if ( $http->hasPostVariable( 'Username' ) ); 37 | $username = $http->postVariable( 'Username' ); 38 | 39 | if ( $http->hasPostVariable( 'Password' ) ); 40 | $password = $http->postVariable( 'Password' ); 41 | 42 | if ( $http->hasPostVariable( 'NodeID' ) ); 43 | $parentNodeID = $http->postVariable( 'NodeID' ); 44 | 45 | // User authentication 46 | $user = eZUser::loginUser( $username, $password ); 47 | if ( $user == false ) 48 | { 49 | print( 'problem:Authentication failed' ); 50 | eZExecution::cleanExit(); 51 | } 52 | else 53 | { 54 | // Print the list of ID nodes.. 55 | //Structure : name, type, ID 56 | $nodes = eZFunctionHandler::execute( 'content','list', array( 'parent_node_id' => $parentNodeID ) ); 57 | 58 | $array = array(); 59 | foreach( $nodes as $node ) 60 | { 61 | $tpl->setVariable( 'node', $node ); 62 | 63 | $nodeID = $node->attribute( 'node_id' ); 64 | $name = $node->attribute( 'name' ); 65 | $className = $node->attribute( 'class_name' ); 66 | $object =& $node->object(); 67 | $contentClass = $object->contentClass(); 68 | $isContainer = $contentClass->attribute( 'is_container' ); 69 | 70 | preg_match( '/\/+[a-z0-9\-\._]+\/?[a-z0-9_\.\-\?\+\/~=&#;,]*[a-z0-9\/]{1}/si', $tpl->fetch( 'design:ezodf/icon.tpl' ), $matches ); 71 | $iconPath = 'http://'. eZSys::hostname(). ':' . eZSys::serverPort() . $matches[0]; 72 | $array[] = array( $nodeID, $name, $className, $isContainer, $iconPath ); 73 | } 74 | 75 | //Test if not empty 76 | if ( empty( $array ) ) 77 | { 78 | print( 'problem:No Items' ); 79 | eZExecution::cleanExit(); 80 | } 81 | 82 | //Convert the array into a string and display it 83 | $display = ''; 84 | foreach( $array as $line ) 85 | { 86 | foreach( $line as $element ) 87 | { 88 | $display .= $element . ';'; 89 | } 90 | $display .= chr( 13 ); 91 | } 92 | 93 | print( $display ); 94 | 95 | // Don't display eZ Publish page structure 96 | eZExecution::cleanExit(); 97 | } 98 | ?> 99 | -------------------------------------------------------------------------------- /scripts/converttooo.php: -------------------------------------------------------------------------------- 1 | 5 | // 6 | // Copyright (C) 1999-2014 eZ Systems AS. All rights reserved. 7 | // 8 | // This source file is part of the eZ Publish (tm) Open Source Content 9 | // Management System. 10 | // 11 | // This file may be distributed and/or modified under the terms of the 12 | // "GNU General Public License" version 2 as published by the Free 13 | // Software Foundation and appearing in the file LICENSE included in 14 | // the packaging of this file. 15 | // 16 | // Licencees holding a valid "eZ Publish professional licence" version 2 17 | // may use this file in accordance with the "eZ Publish professional licence" 18 | // version 2 Agreement provided with the Software. 19 | // 20 | // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING 21 | // THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 22 | // PURPOSE. 23 | // 24 | // The "eZ Publish professional licence" version 2 is available at 25 | // http://ez.no/ez_publish/licences/professional/ and in the file 26 | // PROFESSIONAL_LICENCE included in the packaging of this file. 27 | // For pricing of this licence please contact us via e-mail to licence@ez.no. 28 | // Further contact information is available at http://ez.no/company/contact/. 29 | // 30 | // The "GNU General Public License" (GPL) is available at 31 | // http://www.gnu.org/copyleft/gpl.html. 32 | // 33 | // Contact licence@ez.no if any conditions of this licencing isn't clear to 34 | // you. 35 | // 36 | 37 | /* 38 | 39 | Needs the following in PHP Configuration 40 | 41 | --enable-cli 42 | --enable-pcntl 43 | --enable-sockets 44 | 45 | */ 46 | 47 | $homeDir = "/tmp"; 48 | #$ooexecutable = "openoffice.org-2.0"; 49 | $ooexecutable = "/usr/bin/ooffice"; 50 | 51 | set_time_limit( 0 ); 52 | 53 | /** 54 | * Performs document conversion using OpenOffice.org in command line mode. 55 | * 56 | * @param string $sourceFileName Source filename. 57 | * @param string $convertCommand Conversion to perform. 58 | * @param string $destinationFileName Destination filename. 59 | * @param string $executable OpenOffice.org executable. 60 | * @param string $homeDir Home directory. 61 | * 62 | * @throws Exception 63 | */ 64 | function convertTo( $sourceFileName, $convertCommand, $destinationFileName, $executable, $homeDir ) 65 | { 66 | switch ( $convertCommand ) 67 | { 68 | case "convertToPDF": 69 | case "convertToOOo": 70 | case "convertToDoc": 71 | { 72 | $convertShellCommand = "export HOME=\"$homeDir\"\n" . escapeshellcmd( $executable . " -writer -invisible -headless -nofirststartwizard -norestore" ) . " " . 73 | escapeshellarg( "macro:///eZconversion.Module1.$convertCommand(\"$sourceFileName\", \"$destinationFileName\")" ) . " 2>&1 "; 74 | 75 | $result = shell_exec( $convertShellCommand ); 76 | }break; 77 | 78 | default: 79 | { 80 | throw new Exception( "Unknown command $convertCommand", 1 ); 81 | }break; 82 | } 83 | 84 | if ( !file_exists( $destinationFileName ) ) 85 | { 86 | throw new Exception( "Unknown failure converting document \n command was: '$convertShellCommand' \nresult: $result", 3 ); 87 | } 88 | } 89 | 90 | 91 | echo "eZ Publish document conversion daemon\n"; 92 | // Parse input 93 | $input = fread( STDIN, 1024 ); 94 | 95 | $inputParts = explode( " ", $input ); 96 | 97 | $command = trim( $inputParts[0] ); 98 | $fileName = trim( $inputParts[1] ); 99 | $destName = trim( $inputParts[2] ); 100 | 101 | try 102 | { 103 | if ( !file_exists( $fileName ) ) 104 | { 105 | throw new Exception( "File not found: $fileName", 2 ); 106 | } 107 | 108 | sleep( 10 ); 109 | convertTo( $fileName, $command, $destName, $ooexecutable, $homeDir ); 110 | echo "FilePath: $destName\n"; 111 | 112 | } 113 | catch ( Exception $e ) 114 | { 115 | echo "Error: (", $e->getCode() , ") - ", $e->getMessage(), "\n"; 116 | die( $e->getCode() ); 117 | } 118 | 119 | ?> 120 | -------------------------------------------------------------------------------- /ooPackage/sources/send.py: -------------------------------------------------------------------------------- 1 | import unohelper 2 | from com.sun.star.lang import XServiceName 3 | from com.sun.star.lang import XMain 4 | import string 5 | import httplib 6 | import base64 7 | 8 | g_ImplementationHelper = unohelper.ImplementationHelper() 9 | 10 | class send( unohelper.Base, XServiceName, XMain ): 11 | def __init__( self, ctx ): 12 | self.output = "No output" 13 | 14 | def getServiceName( self ): 15 | return self.output 16 | 17 | def run( self, args ): 18 | url = args[0] 19 | username = args[1] 20 | password = args[2] 21 | nodeID = args[3] 22 | filename = args[4] 23 | importType = args[5] 24 | 25 | # remove the 'http://' substring 26 | url = url.replace( 'http://', '' ) 27 | # keep only the server name 28 | url = url.split( '/' )[0] 29 | 30 | page = '/odf/upload_import' 31 | 32 | # try to read the content of the file 33 | try: 34 | content = open( filename, "r" ).read( ) 35 | except: 36 | self.output = 'problem:Temporary file not found' 37 | return 0 38 | 39 | try: 40 | content = base64.standard_b64encode( content ) 41 | except: 42 | self.output = 'problem:Conversion to Base64 impossible' 43 | return 0 44 | 45 | # create the body of the HTTP message 46 | boundary = 'O_o__BOUNDARY__o_O' 47 | CRLF = '\r\n' 48 | bodyList = [] 49 | bodyList.append( '--' + boundary ) 50 | bodyList.append( 'Content-Disposition: form-data; name="Username"' ) 51 | bodyList.append( '' ) 52 | bodyList.append( str( username ) ) 53 | bodyList.append( '--' + boundary ) 54 | bodyList.append( 'Content-Disposition: form-data; name="Password"' ) 55 | bodyList.append( '' ) 56 | bodyList.append( str( password ) ) 57 | bodyList.append( '--' + boundary ) 58 | bodyList.append( 'Content-Disposition: form-data; name="NodeID"' ) 59 | bodyList.append( '' ) 60 | bodyList.append( str( nodeID ) ) 61 | bodyList.append( '--' + boundary ) 62 | bodyList.append( 'Content-Disposition: form-data; name="ImportType"' ) 63 | bodyList.append( '' ) 64 | bodyList.append( str( importType ) ) 65 | bodyList.append( '--' + boundary ) 66 | bodyList.append( 'Content-Disposition: form-data; name="File"; filename="%s"' % filename ) 67 | bodyList.append( 'Content-Type: application/octet-stream' ) 68 | bodyList.append( 'Content-Transfer-Encoding: binary' ) 69 | bodyList.append( '' ) 70 | bodyList.append( str( content ) ) 71 | bodyList.append( '--' + boundary + '--' ) 72 | bodyList.append( '' ) 73 | body = CRLF.join( bodyList ) 74 | 75 | # create the headers of the HTTP message 76 | headers = { 77 | 'User-Agent': 'INSERT USERAGENTNAME', 78 | 'Content-Type': 'multipart/form-data; boundary=' + boundary 79 | } 80 | 81 | # try to connect to the url and send the message 82 | try: 83 | h = httplib.HTTPConnection( url) 84 | h.request('POST', page, body, headers) 85 | res = h.getresponse( ) 86 | self.output = res.read( ) 87 | return 1 88 | except: 89 | output = "" 90 | outputList = [] 91 | outputList.append( 'problem:Connection to the server impossible\n' ) 92 | outputList.append( 'Possible causes are :\n' ) 93 | outputList.append( '- bad server URL\n' ) 94 | outputList.append( '- no connection to the server\n' ) 95 | self.output = output.join( outputList ) 96 | return 0 97 | 98 | g_ImplementationHelper.addImplementation( \ 99 | send, "org.openoffice.pyuno.eZsystems.send", 100 | ( "com.sun.star.lang.XServiceName", "com.sun.star.lang.XMain" ), ) 101 | -------------------------------------------------------------------------------- /scripts/daemon.php: -------------------------------------------------------------------------------- 1 | 5 | // 6 | // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 7 | // SOFTWARE NAME: eZ Publish 8 | // SOFTWARE RELEASE: 3.9.x 9 | // COPYRIGHT NOTICE: Copyright (C) 1999-2014 eZ Systems AS 10 | // SOFTWARE LICENSE: GNU General Public License v2.0 11 | // NOTICE: > 12 | // This program is free software; you can redistribute it and/or 13 | // modify it under the terms of version 2.0 of the GNU General 14 | // Public License as published by the Free Software Foundation. 15 | // 16 | // This program is distributed in the hope that it will be useful, 17 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 18 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 | // GNU General Public License for more details. 20 | // 21 | // You should have received a copy of version 2.0 of the GNU General 22 | // Public License along with this program; if not, write to the Free 23 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 24 | // MA 02110-1301, USA. 25 | // 26 | // 27 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 28 | // 29 | 30 | /* 31 | 32 | Needs the following in PHP Configuration 33 | 34 | --enable-cli 35 | --enable-pcntl 36 | --enable-sockets 37 | 38 | */ 39 | 40 | $host = "127.0.0.1"; 41 | $port = 9090; 42 | 43 | // Alex 2008/04/11 - Changed executable to 'ooffice' 44 | $ooexecutable = "ooffice"; 45 | 46 | $maxClients = 3; 47 | 48 | 49 | set_time_limit( 0 ); 50 | 51 | $socket = socket_create( AF_INET, SOCK_STREAM, 0) or die( "Could not create socket\n" ); 52 | 53 | // Alex 2008/04/11 - Uncomment the next line in case there are problems with connecting 54 | // to $host and $port (port busy as an effect of a crash) 55 | //socket_set_option( $socket, SOL_SOCKET, SO_REUSEADDR, 1 ); 56 | 57 | $result = socket_bind( $socket, $host, $port ) or die( "Could not bind to socket\n" ); 58 | $result = socket_listen( $socket, $maxClients ) or die( "Could not set up socket listener\n" ); 59 | 60 | print( "Started OpenOffice.org daemon\n" ); 61 | 62 | function convert_to( $sourceFileName, $convertCommand, $destinationFileName ) 63 | { 64 | global $ooexecutable; 65 | 66 | print( "Converting document with $convertCommand\n" ); 67 | 68 | switch ( $convertCommand ) 69 | { 70 | case "convertToPDF": 71 | case "convertToOOo": 72 | case "convertToDoc": 73 | { 74 | $convertShellCommand = escapeshellcmd( $ooexecutable . " -writer -invisible -headless -nofirststartwizard -norestore" ) . " " . 75 | escapeshellarg( "macro:///eZconversion.Module1.$convertCommand(\"$sourceFileName\", \"$destinationFileName\")" ); 76 | 77 | $result = shell_exec( $convertShellCommand ); 78 | 79 | echo "$result\n"; 80 | }break; 81 | 82 | default: 83 | { 84 | echo "Unknown command $convertCommand"; 85 | return "(1)-Unknown command $convertCommand"; 86 | }break; 87 | } 88 | 89 | if ( !file_exists( $destinationFileName ) ) 90 | { 91 | return "(3) - Unknown failure converting document \n $result"; 92 | } 93 | 94 | return true; 95 | } 96 | 97 | 98 | while ( $spawn = socket_accept( $socket )) 99 | { 100 | print( "got new connection\n" ); 101 | $pid = pcntl_fork(); 102 | if ( $pid != 0) 103 | { 104 | // In the main process 105 | socket_close( $spawn ); 106 | } 107 | else 108 | { 109 | // We are in the forked child process 110 | socket_write( $spawn, "eZ Publish document conversion daemon\n"); 111 | 112 | // Parse input 113 | $input = socket_read( $spawn, 1024 ); 114 | 115 | $inputParts = explode( " ", $input ); 116 | 117 | $command = trim( $inputParts[0] ); 118 | $fileName = trim( $inputParts[1] ); 119 | $destName = trim( $inputParts[2] ); 120 | 121 | 122 | if ( file_exists( $fileName ) ) 123 | { 124 | $result = convert_to( $fileName, $command, $destName ); 125 | if ( !( $result === true ) ) 126 | { 127 | echo( "Error: $result" ); 128 | socket_write( $spawn, "Error: $result" ); 129 | } 130 | else 131 | { 132 | echo( "Conversion ok. FilePath: $destName" ); 133 | socket_write( $spawn, "FilePath: $destName" ); 134 | } 135 | } 136 | else 137 | { 138 | echo( "Error: (2)-File not found" ); 139 | socket_write( $spawn, "Error: (2)-File not found" ); 140 | } 141 | 142 | socket_close( $spawn ); 143 | die('Data Recieved on child ' . posix_getpid(). "\n"); 144 | } 145 | } 146 | 147 | socket_close( $socket ); 148 | 149 | ?> 150 | -------------------------------------------------------------------------------- /ooPackage/sources/eZextension/Module2.xba: -------------------------------------------------------------------------------- 1 | 2 | 3 | option explicit 4 | 5 | function serverBoxCreate( oToolKit as object, oParentWindow as object ) as object 6 | dim index as integer 7 | dim oContainer as object 8 | dim oControl as object 9 | dim oControlModel as object 10 | dim oSize as new com.sun.star.awt.Rectangle 11 | dim servers as variant 12 | 13 | 'Create the server container 14 | oSize = rectangle( 75, 15, 300, 25 ) 15 | oContainer = createControlContainer( oToolKit, oParentWindow, oSize, "grey" ) 16 | 17 | servers = parseServerIni( ) 18 | 19 | 'Label 20 | oControlModel = createUnoService( "com.sun.star.awt.UnoControlFixedTextModel" ) 21 | with oControlModel 22 | .Label = "Server : " 23 | .VerticalAlign = com.sun.star.style.VerticalAlignment.MIDDLE 24 | end with 25 | oControl = createUnoService( oControlModel.defaultControl ) 26 | with oControl 27 | .setModel( oControlModel ) 28 | .setPosSize( 0, 0, 70, 25, com.sun.star.awt.PosSize.POSSIZE ) 29 | end with 30 | oContainer.addControl( "Label", oControl ) 31 | 32 | 'Create the list box with dropdown 33 | oControlModel = createUnoService( "com.sun.star.awt.UnoControlListBoxModel" ) 34 | with oControlModel 35 | .Dropdown = true 36 | .MultiSelection = false 37 | end with 38 | oControl = createUnoService( oControlModel.defaultControl ) 39 | with oControl 40 | .setModel( oControlModel ) 41 | .setPosSize( 70, 0, 230, oContainer.PosSize.Height, com.sun.star.awt.PosSize.POSSIZE ) 42 | 'Add the items to the listBox 43 | for index = 0 to UBound( servers, 1 ) 44 | .addItem( servers( index, 0 ), index ) 45 | next index 46 | .addActionListener( createUnoListener( "server", "com.sun.star.awt.XActionListener" ) ) 47 | end with 48 | oContainer.addControl( "serverListBox", oControl ) 49 | 50 | 'Specify the default server 51 | oControl.selectItemPos( 0, true ) 52 | 53 | 'Add hidden labels containing the server configurations 54 | for index = LBound( servers, 1 ) to UBound( servers, 1 ) 55 | oControlModel = createUnoService( "com.sun.star.awt.UnoControlFixedTextModel" ) 56 | oControlModel.Label = servers( index, 1 ) & "__;__" & servers( index, 2 ) & "__;__" & servers( index, 3 ) 57 | ' oControlModel.Label = Join( getArrayLine( servers, index ), "__;__" ) 58 | oControl = createUnoService( oControlModel.defaultControl ) 59 | oControl.setModel( oControlModel ) 60 | oControl.setVisible( false ) 61 | oContainer.addControl( "Server_" & index, oControl ) 62 | next index 63 | 64 | serverBoxCreate = oContainer 65 | end function 66 | 67 | function getServer( oServerContainer as object ) as variant 68 | dim serverNumber, serverString 69 | dim serverArray 70 | 71 | serverArray = DimArray( 2 ) 72 | serverNumber = oServerContainer.getControl( "serverListBox" ).getSelectedItemPos( ) 73 | serverString = oServerContainer.getControl( "Server_" & serverNumber ).Model.Label 74 | serverArray = Split( serverString, "__;__" ) 75 | redim preserve serverArray( 3 ) 76 | serverArray( 3 ) = oServerContainer.getControl( "serverListBox" ).getSelectedItem( ) 77 | getServer = serverArray( ) 78 | end function 79 | 80 | sub serverActionPerformed( oEvent as object ) 81 | dim oServerContainer, oPathContainer, oDirContainer, oButtonContainer 82 | dim server, directory as string 83 | dim pathGlobalVars 84 | dim oControl 85 | dim i 86 | 87 | oServerContainer = getContainerFromEvent( oEvent ) 88 | oPathContainer = getObjectFromLink( oServerContainer, "linkToPath" ) 89 | oDirContainer = getObjectFromLink( oServerContainer, "linkToDir" ) 90 | oButtonContainer = getObjectFromLink( oServerContainer, "linkToButton" ) 91 | 92 | 'getServer 93 | server = getServer( oServerContainer ) 94 | directory = getNode( server( 0 ), server( 1 ), server( 2 ), "2" ) 95 | 96 | 'initialize Path 97 | pathGlobalVars = getPathGlobalVars( oPathContainer ) 98 | if pathGlobalVars( 2 ) <> 0 then 99 | for i = 1 to pathGlobalVars( 2 ) 100 | oControl = oPathContainer.getControl( "Path_" & i ) 101 | oControl.setVisible( false ) 102 | oPathContainer.removeControl( oControl ) 103 | next i 104 | end if 105 | oControl = oPathContainer.getControl( "Path_0" ) 106 | setX( oControl, 21 + 5 ) 107 | updatePathGlobalVars( oPathContainer, 0, 0, 0 ) 108 | 109 | 'Initialize Dir 110 | if updateDirContainer( oDirContainer, directory ) then 111 | updateDirGlobalVars( oDirContainer, 0, "2" ) 112 | enableOKButton( oButtonContainer ) 113 | else 114 | updateDirGlobalVars( oDirContainer, -1, "2" ) 115 | disableOKButton( oButtonContainer ) 116 | end if 117 | end sub 118 | 119 | -------------------------------------------------------------------------------- /design/standard/templates/ezodf/import.tpl: -------------------------------------------------------------------------------- 1 |
2 | {if $error} 3 | {if $error.number|ne(0)} 4 |

[{currentdate()|l10n( shortdatetime )}]{$error.number}) {$error.message}

5 | {/if} 6 | {/if} 7 | 8 | 9 | {if eq($oo_mode,'imported')} 10 |

[{currentdate()|l10n( shortdatetime )}] {"Document is now imported"|i18n("extension/ezodf")}

11 | {/if} 12 | 13 |
14 |

{"OpenOffice.org import"|i18n("extension/ezodf")}

15 |
16 | 17 |
18 | OpenOffice.org 19 |
20 | 21 | {if eq($oo_mode,'imported')} 22 | 23 |

{"Document is now imported"|i18n("extension/ezodf")}

24 |
    25 |
  • {"The object was imported as: %class_name"|i18n('extension/ezodf','', hash( '%class_name', $class_identifier ) )}
  • 26 | {if $published} 27 |
  • {"Document imported as"|i18n("extension/ezodf")} {$node_name|wash}.
  • 28 | {else} 29 |
  • {"The imported document is waiting for an approbation to be published."|i18n( "extension/ezodf" )}
  • 30 | {/if} 31 |
  • {"The images are placed in the media library and can be re-used."|i18n("extension/ezodf")}
  • 32 |
  • {"Import another document"|i18n("extension/ezodf")}
  • 33 |
34 | 35 | {else} 36 | 37 | 38 |

{"Import OpenOffice.org document"|i18n("extension/ezodf")}

39 | 40 | {if $import_type|eq( "replace" )} 41 |

{"Replace document"|i18n("extension/ezodf")}: {$import_node.name|wash}

42 | {elseif is_set( $import_node )} 43 |

{"Import to"|i18n("extension/ezodf")}: {$import_node.name|wash}

44 | {/if} 45 | 46 |

47 | {"You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 48 | asked where to place the document and eZ Publish does the rest. The document is converted into 49 | the appropriate class during the import, you get a notice about this after the import is done. 50 | Images are placed in the media library so you can re-use them in other articles."|i18n("extension/ezodf")} 51 |

52 | 53 |
54 |

55 | 56 | 57 | 58 |

59 | {def $locale_list = ezini( 'RegionalSettings', 'SiteLanguageList' )} 60 | {if $locale_list|count|gt( 1 )} 61 |

62 | {if $import_type|eq( 'replace' )} 63 | {def $available_translations = $import_node.object.available_languages 64 | $options_existing = array() 65 | $options_new = array()} 66 | 67 | 90 | {undef $available_translations $options_existing $options_new} 91 | {else} 92 | 93 | 98 | {/if} 99 |

100 | {else} 101 | 102 | {/if} 103 | {undef $locale_list} 104 | 105 |
106 | 107 |
108 |
109 | 110 | {/if} 111 | 112 |
113 | -------------------------------------------------------------------------------- /ooPackage/sources/eZextension/Module5.xba: -------------------------------------------------------------------------------- 1 | 2 | 3 | option explicit 4 | 5 | 6 | 7 | function buttonBoxCreate( oToolKit as object, oParentWindow as object, action as string ) as object 8 | dim oContainer, oControl, oControlModel 9 | dim oSize as new com.sun.star.awt.Rectangle 10 | 11 | oSize = rectangle( 125, 305, 200, 25 ) 12 | oContainer = createControlContainer( oToolKit, oParentWindow, oSize, "grey" ) 13 | 14 | oControlModel = createUnoService( "com.sun.star.awt.UnoControlButtonModel" ) 15 | with oControlModel 16 | .Label = action 17 | end with 18 | oControl = createUnoService( oControlModel.defaultControl ) 19 | with oControl 20 | .setModel( oControlModel ) 21 | .setContext( oToolKit.getTopWindow( 1 ) ) 22 | .setPosSize( 0, 0, 70, 25, com.sun.star.awt.PosSize.POSSIZE ) 23 | .setActionCommand( action ) 24 | .addActionListener( createUnoListener( "buttonBox", "com.sun.star.awt.XActionListener" ) ) 25 | end with 26 | oContainer.addControl( "OK", oControl ) 27 | 28 | oControlModel = createUnoService( "com.sun.star.awt.UnoControlButtonModel" ) 29 | with oControlModel 30 | .Label = "Cancel" 31 | end with 32 | oControl = createUnoService( oControlModel.defaultControl ) 33 | with oControl 34 | .setModel( oControlModel ) 35 | .setContext( oToolKit.getTopWindow( 1 ) ) 36 | .setPosSize( 130, 0, 70, 25, com.sun.star.awt.PosSize.POSSIZE ) 37 | .setActionCommand( "Cancel" ) 38 | .addActionListener( createUnoListener( "buttonBox", "com.sun.star.awt.XActionListener" ) ) 39 | end with 40 | oContainer.addControl( "Cancel", oControl ) 41 | 42 | buttonBoxCreate = oContainer 43 | end function 44 | 45 | 46 | 47 | sub buttonBoxActionPerformed( oEvent as object ) 48 | dim oButtonContainer, oDirContainer, oServerContainer 49 | dim dirGlobalVars 50 | dim oControl 51 | dim nodeID 52 | dim result 53 | dim oTopWindow 54 | dim server 55 | dim arg as new com.sun.star.beans.PropertyValue 56 | dim oDocInfo 57 | dim tmpFilePath 58 | 59 | oTopWindow = oEvent.Source.getContext( ).getContext( ) 60 | 61 | 'Get containers 62 | oButtonContainer = getContainerFromEvent( oEvent ) 63 | oServerContainer = getObjectFromLink( oButtonContainer, "linkToServer" ) 64 | oDirContainer = getObjectFromLink( oButtonContainer, "linkToDir" ) 65 | 66 | if oEvent.ActionCommand = "Cancel" then 67 | oTopWindow.setVisible( false ) 68 | 69 | elseif oEvent.ActionCommand = "Open" then 70 | dirGlobalVars = getDirGlobalVars( oDirContainer ) 71 | 'Test if the line is really highlighted 72 | oControl = oDirContainer.getControl( "Label_" & val( dirGlobalVars( 2 ) ) ) 73 | if oControl.Model.BackgroundColor = RGB( 223, 223, 223 ) then 74 | oTopWindow.setVisible( false ) 75 | server = getServer( oServerContainer ) 76 | oControl = oDirContainer.getControl( "nodeDescription_" & val( dirGlobalVars( 2 ) ) ) 77 | dirGlobalVars = Split( oControl.Model.Label, "/" ) 78 | nodeID = val( dirGlobalVars( 0 ) ) 79 | result = receive( server( 0 ), server( 1 ), server( 2 ), nodeID, getTempPath( ) & "eZ_imported.odt" ) 80 | if inStr( result, "problem:" ) <> 0 then 81 | result = right( result, len( result ) - len( "problem:" ) ) 82 | msgBox( result, 16, "eZ extension" ) 83 | else 84 | 85 | arg.Name = "AsTemplate" 86 | arg.Value = "True" 87 | starDesktop.loadComponentFromURL( convertToURL( getTempPath( ) & "eZ_imported.odt" ), "_default", 0, Array( arg ) ) 88 | oDocInfo = starDesktop.getCurrentComponent( ).getDocumentInfo( ) 89 | oDocInfo.addProperty( "serverName", 0, server( 3 ) ) 90 | oDocInfo.addProperty( "url", 0, server( 0 ) ) 91 | oDocInfo.addProperty( "username", 0, server( 1 ) ) 92 | oDocInfo.addProperty( "password", 0, server( 2 ) ) 93 | oDocInfo.addProperty( "nodeID", 0, nodeID ) 94 | end if 95 | else 96 | msgBox( "Please choose a node to open", 48, "eZ extension" ) 97 | end if 98 | 99 | elseif oEvent.ActionCommand = "Save" then 100 | oTopWindow.setVisible( false ) 101 | 'Get the current folder nodeID 102 | dirGlobalVars = getDirGlobalVars( oDirContainer ) 103 | nodeID = dirGlobalVars( 3 ) 104 | server = getServer( oServerContainer ) 105 | 106 | tmpFilePath = saveToTmpFile( ) 107 | result = send( server( 0 ), server( 1 ), server( 2 ), nodeID, tmpFilePath, "import" ) 108 | if inStr( result, "problem:" ) <> 0 then 109 | result = right( result, len( result ) - len( "problem:" ) ) 110 | msgBox( result, 16, "eZ extension" ) 111 | else 112 | result = right( result, len( result ) - len( "done:" ) ) 113 | msgBox( result, 64, "eZ extension" ) 114 | end if 115 | else 116 | msgBox( "Should not print this : bad ActionCommand -> " & oEvent.ActionCommand, 16, "eZ extension" ) 117 | end if 118 | 119 | end sub 120 | 121 | sub enableOKButton( oContainer as object ) 122 | if oContainer.getControl( "OK" ).Model.Label = "Open" then 123 | oContainer.getControl( "OK" ).setEnable( true ) 124 | end if 125 | end sub 126 | 127 | sub disableOKButton( oContainer as object ) 128 | if oContainer.getControl( "OK" ).Model.Label = "Open" then 129 | oContainer.getControl( "OK" ).setEnable( false ) 130 | end if 131 | end sub 132 | 133 | -------------------------------------------------------------------------------- /modules/ezodf/export.php: -------------------------------------------------------------------------------- 1 | 4 | // 5 | // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 6 | // SOFTWARE NAME: eZ Publish 7 | // SOFTWARE RELEASE: 3.9.x 8 | // COPYRIGHT NOTICE: Copyright (C) 1999-2014 eZ Systems AS 9 | // SOFTWARE LICENSE: GNU General Public License v2.0 10 | // NOTICE: > 11 | // This program is free software; you can redistribute it and/or 12 | // modify it under the terms of version 2.0 of the GNU General 13 | // Public License as published by the Free Software Foundation. 14 | // 15 | // This program is distributed in the hope that it will be useful, 16 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | // GNU General Public License for more details. 19 | // 20 | // You should have received a copy of version 2.0 of the GNU General 21 | // Public License along with this program; if not, write to the Free 22 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 23 | // MA 02110-1301, USA. 24 | // 25 | // 26 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 27 | // 28 | 29 | $http = eZHTTPTool::instance(); 30 | $module = $Params["Module"]; 31 | $NodeID = $Params['NodeID']; 32 | $exportTypeParam = $Params['ExportType']; 33 | 34 | $tpl = eZTemplate::factory(); 35 | 36 | $success = true; 37 | 38 | if ( $http->hasPostVariable( "ExportButton" ) ) 39 | { 40 | eZContentBrowse::browse( array( 'action_name' => 'OOPlace', 41 | 'description_template' => 'design:ezodf/browse_place.tpl', 42 | 'content' => array(), 43 | 'from_page' => '/ezodf/export/', 44 | 'cancel_page' => '/ezodf/export/' ), 45 | $module ); 46 | return; 47 | } 48 | 49 | $doExport = false; 50 | if ( $module->isCurrentAction( 'OOPlace' ) ) 51 | { 52 | // We have the file and the placement. Do the actual import. 53 | $selectedNodeIDArray = eZContentBrowse::result( 'OOPlace' ); 54 | $nodeID = $selectedNodeIDArray[0]; 55 | $doExport = true; 56 | } 57 | 58 | if ( $http->hasPostVariable( "NodeID" ) ) 59 | { 60 | $nodeID = $http->postVariable( "NodeID" ); 61 | $doExport = true; 62 | } 63 | else if ( is_numeric( $NodeID ) ) 64 | { 65 | $nodeID = $NodeID; 66 | $doExport = true; 67 | } 68 | 69 | $exportType = false; 70 | if ( $http->hasPostVariable( "ExportType" ) ) 71 | { 72 | $type = $http->postVariable( "ExportType" ); 73 | 74 | if ( $type == "PDF" or $type == "Word" ) 75 | { 76 | $exportType = $type; 77 | } 78 | else 79 | { 80 | $tpl->setVariable( "error_string", ezpI18n::tr( 'extension/ezodf/export/error',"Destination file format not supported" ) ); 81 | $success = false; 82 | } 83 | } 84 | else if ( $exportTypeParam == "PDF" or $exportTypeParam == "Word" ) 85 | { 86 | $exportType = $exportTypeParam; 87 | } 88 | else if ( strlen( trim( $exportTypeParam ) ) != 0 ) 89 | { 90 | $tpl->setVariable( "error_string", ezpI18n::tr( 'extension/ezodf/export/error', "Destination file format not supported" ) ); 91 | $success = false; 92 | } 93 | 94 | $ooINI = eZINI::instance( 'odf.ini' ); 95 | //$tmpDir = $ooINI->variable( 'ODFSettings', 'TmpDir' ); 96 | $tmpDir = getcwd() . "/" . eZSys::cacheDirectory(); 97 | 98 | if ( $doExport == true ) 99 | { 100 | if ( is_numeric( $nodeID ) ) 101 | { 102 | $node = eZContentObjectTreeNode::fetch( $nodeID ); 103 | 104 | // Check if we have read access to this node 105 | if ( $node && $node->canRead() ) 106 | { 107 | // Do the actual eZ Publish export 108 | $fileName = eZOOConverter::objectToOO( $nodeID ); 109 | 110 | if ( !is_array( $fileName ) ) 111 | { 112 | $nodeName = $node->attribute( 'name' ); 113 | 114 | $originalFileName = $nodeName . ".odt"; 115 | $contentType = "application/vnd.oasis.opendocument.text"; 116 | 117 | $trans = eZCharTransform::instance(); 118 | $nodeName = $trans->transformByGroup( $nodeName, 'urlalias' ); 119 | 120 | $uniqueStamp = md5( time() ); 121 | 122 | $server = $ooINI->variable( "ODFImport", "OOConverterAddress" ); 123 | $port = $ooINI->variable( "ODFImport", "OOConverterPort" ); 124 | 125 | switch ( $exportType ) 126 | { 127 | case "PDF" : 128 | { 129 | if ( ( $result = daemonConvert( $server, $port, realpath( $fileName ), "convertToPDF", $tmpDir . "/ooo_converted_$uniqueStamp.pdf" ) ) ) 130 | { 131 | $originalFileName = $nodeName . ".pdf"; 132 | $contentType = "application/pdf"; 133 | $fileName = $tmpDir . "/ooo_converted_$uniqueStamp.pdf"; 134 | } 135 | else 136 | { 137 | $success = false; 138 | $tpl->setVariable( "error_string", ezpI18n::tr( 'extension/ezodf/export/error',"PDF conversion failed" ) ); 139 | } 140 | } break; 141 | 142 | case "Word" : 143 | { 144 | if ( ( $result = daemonConvert( $server, $port, realpath( $fileName ), "convertToDoc", $tmpDir . "/ooo_converted_$uniqueStamp.doc" ) ) ) 145 | { 146 | $originalFileName = $nodeName . ".doc"; 147 | $contentType = "application/ms-word"; 148 | $fileName = $tmpDir . "/ooo_converted_$uniqueStamp.doc"; 149 | } 150 | else 151 | { 152 | $success = false; 153 | $tpl->setVariable( "error_string", ezpI18n::tr( 'extension/ezodf/export/error',"Word conversion failed" ) ); 154 | } 155 | } break; 156 | } 157 | } 158 | else 159 | { 160 | $tpl->setVariable( "error_string", $fileName[1] ); 161 | $success = false; 162 | } 163 | } 164 | else 165 | { 166 | $tpl->setVariable( "error_string", ezpI18n::tr( 'extension/ezodf/export/error',"Unable to fetch node, or no read access" ) ); 167 | $success = false; 168 | } 169 | 170 | if ( $success ) 171 | { 172 | $contentLength = filesize( $fileName ); 173 | if ( $contentLength > 0 ) 174 | { 175 | $escapedOriginalFileName = addslashes( $originalFileName ); 176 | 177 | // Download the file 178 | header( "Pragma: " ); 179 | header( "Cache-Control: " ); 180 | // Set cache time out to 10 minutes, this should be good enough to work around an IE bug 181 | header( "Expires: ". gmdate('D, d M Y H:i:s', time() + 600) . 'GMT'); 182 | header( "Content-Length: $contentLength" ); 183 | header( "Content-Type: $contentType" ); 184 | header( "X-Powered-By: eZ Publish" ); 185 | header( "Content-disposition: attachment; filename=\"$escapedOriginalFileName\"" ); 186 | header( "Content-Transfer-Encoding: binary" ); 187 | 188 | $fh = fopen( "$fileName", "rb" ); 189 | 190 | ob_end_clean(); 191 | fpassthru( $fh ); 192 | fclose( $fh ); 193 | 194 | unlink( $fileName ); 195 | eZExecution::cleanExit(); 196 | } 197 | else 198 | { 199 | $tpl->setVariable( "error_string", ezpI18n::tr( 'extension/ezodf/export/error', "Unable to open file %1 on server side", null, array( $fileName ) ) ); 200 | } 201 | } 202 | } 203 | } 204 | 205 | $Result = array(); 206 | $Result['content'] = $tpl->fetch( "design:ezodf/export.tpl" ); 207 | $Result['path'] = array( array( 'url' => '/ezodf/export/', 208 | 'text' => ezpI18n::tr( 'extension/ezodf', 'OpenOffice.org export' ) ) ); 209 | 210 | 211 | /*! 212 | Connects to the eZ Publish document conversion daemon and converts the document to specified format 213 | */ 214 | function daemonConvert( $server, $port, $sourceFile, $conversionCommand, $destFile ) 215 | { 216 | $fp = fsockopen( $server, 217 | $port, 218 | $errorNR, 219 | $errorString, 220 | 10 ); // @as 2008-11-25 - Increase the timeout from 0 to 10 to prevent problems with connection 221 | 222 | if ( $fp ) 223 | { 224 | $welcome = fread( $fp, 1024 ); 225 | 226 | $welcome = trim( $welcome ); 227 | if ( $welcome == "eZ Publish document conversion daemon" ) 228 | { 229 | $commandString = "$conversionCommand $sourceFile $destFile"; 230 | fputs( $fp, $commandString, strlen( $commandString ) ); 231 | 232 | $result = fread( $fp, 1024 ); 233 | $result = trim( $result ); 234 | } 235 | fclose( $fp ); 236 | 237 | return $result; 238 | } 239 | return false; 240 | } 241 | 242 | ?> 243 | -------------------------------------------------------------------------------- /translations/dan-DK/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | OpenOffice.org export 31 | 32 | 33 | 34 | Export eZ Publish content to OpenOffice.org 35 | 36 | 37 | 38 | Error 39 | Fejl 40 | 41 | 42 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 43 | 44 | 45 | 46 | Export Object 47 | 48 | 49 | 50 | Document is now imported 51 | 52 | 53 | 54 | OpenOffice.org import 55 | 56 | 57 | 58 | The object was imported as: %class_name 59 | 60 | 61 | 62 | Document imported as 63 | 64 | 65 | 66 | The images are placed in the media library and can be re-used. 67 | 68 | 69 | 70 | Import another document 71 | 72 | 73 | 74 | Import OpenOffice.org document 75 | 76 | 77 | 78 | Replace document 79 | 80 | 81 | 82 | Import to 83 | 84 | 85 | 86 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 87 | asked where to place the document and eZ Publish does the rest. The document is converted into 88 | the appropriate class during the import, you get a notice about this after the import is done. 89 | Images are placed in the media library so you can re-use them in other articles. 90 | 91 | 92 | 93 | The imported document is waiting for an approbation to be published. 94 | 95 | 96 | 97 | Import document 98 | 99 | 100 | 101 | 102 | extension/ezodf/browse 103 | 104 | Choose document placement 105 | 106 | 107 | 108 | Please choose the placement for the OpenOffice.org object. 109 | 110 | Select the placements and click the %buttonname button. 111 | Using the recent and bookmark items for quick placement is also possible. 112 | Click on placement names to change the browse listing. 113 | 114 | 115 | 116 | Select 117 | 118 | 119 | 120 | 121 | extension/ezodf/export/error 122 | 123 | Destination file format not supported 124 | 125 | 126 | 127 | PDF conversion failed 128 | 129 | 130 | 131 | Word conversion failed 132 | 133 | 134 | 135 | Unable to fetch node, or no read access 136 | 137 | 138 | 139 | Unable to open file %1 on server side 140 | 141 | 142 | 143 | 144 | extension/ezodf/import/error 145 | 146 | File extension or type is not allowed. 147 | 148 | 149 | 150 | Could not parse XML. 151 | 152 | 153 | 154 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 155 | 156 | 157 | 158 | Can not convert the given document. 159 | 160 | 161 | 162 | Unable to call daemon. Fork can not create child process. 163 | 164 | 165 | 166 | Daemon reported error. 167 | 168 | 169 | 170 | Unknown node. 171 | 172 | 173 | 174 | Access denied. 175 | 176 | 177 | 178 | Error during import. 179 | 180 | 181 | 182 | Unknown content class specified in odf.ini: 183 | 184 | 185 | 186 | Unknown error. 187 | 188 | 189 | 190 | Filetype: 191 | 192 | 193 | 194 | Unable to fetch node with id 195 | 196 | 197 | 198 | Folder for images could not be created, access denied. 199 | 200 | 201 | 202 | Document is not supported. 203 | 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | 216 | 217 | 218 | 219 | extension/ezodf/popupmenu 220 | 221 | OpenOffice.org 222 | 223 | 224 | 225 | Export OpenOffice 226 | 227 | 228 | 229 | Export PDF 230 | 231 | 232 | 233 | Export Word 234 | 235 | 236 | 237 | Import OpenOffice 238 | 239 | 240 | 241 | Replace OpenOffice 242 | 243 | 244 | 245 | 246 | -------------------------------------------------------------------------------- /translations/dut-NL/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | OpenOffice.org export 31 | 32 | 33 | 34 | Export eZ Publish content to OpenOffice.org 35 | 36 | 37 | 38 | Error 39 | Fout 40 | 41 | 42 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 43 | 44 | 45 | 46 | Export Object 47 | 48 | 49 | 50 | Document is now imported 51 | 52 | 53 | 54 | OpenOffice.org import 55 | 56 | 57 | 58 | The object was imported as: %class_name 59 | 60 | 61 | 62 | Document imported as 63 | 64 | 65 | 66 | The images are placed in the media library and can be re-used. 67 | 68 | 69 | 70 | Import another document 71 | 72 | 73 | 74 | Import OpenOffice.org document 75 | 76 | 77 | 78 | Replace document 79 | 80 | 81 | 82 | Import to 83 | 84 | 85 | 86 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 87 | asked where to place the document and eZ Publish does the rest. The document is converted into 88 | the appropriate class during the import, you get a notice about this after the import is done. 89 | Images are placed in the media library so you can re-use them in other articles. 90 | 91 | 92 | 93 | The imported document is waiting for an approbation to be published. 94 | 95 | 96 | 97 | Import document 98 | 99 | 100 | 101 | 102 | extension/ezodf/browse 103 | 104 | Choose document placement 105 | 106 | 107 | 108 | Please choose the placement for the OpenOffice.org object. 109 | 110 | Select the placements and click the %buttonname button. 111 | Using the recent and bookmark items for quick placement is also possible. 112 | Click on placement names to change the browse listing. 113 | 114 | 115 | 116 | Select 117 | 118 | 119 | 120 | 121 | extension/ezodf/export/error 122 | 123 | Destination file format not supported 124 | 125 | 126 | 127 | PDF conversion failed 128 | 129 | 130 | 131 | Word conversion failed 132 | 133 | 134 | 135 | Unable to fetch node, or no read access 136 | 137 | 138 | 139 | Unable to open file %1 on server side 140 | 141 | 142 | 143 | 144 | extension/ezodf/import/error 145 | 146 | File extension or type is not allowed. 147 | 148 | 149 | 150 | Could not parse XML. 151 | 152 | 153 | 154 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 155 | 156 | 157 | 158 | Can not convert the given document. 159 | 160 | 161 | 162 | Unable to call daemon. Fork can not create child process. 163 | 164 | 165 | 166 | Daemon reported error. 167 | 168 | 169 | 170 | Unknown node. 171 | 172 | 173 | 174 | Access denied. 175 | 176 | 177 | 178 | Error during import. 179 | 180 | 181 | 182 | Unknown content class specified in odf.ini: 183 | 184 | 185 | 186 | Unknown error. 187 | 188 | 189 | 190 | Filetype: 191 | 192 | 193 | 194 | Unable to fetch node with id 195 | 196 | 197 | 198 | Folder for images could not be created, access denied. 199 | 200 | 201 | 202 | Document is not supported. 203 | 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | 216 | 217 | 218 | 219 | extension/ezodf/popupmenu 220 | 221 | OpenOffice.org 222 | 223 | 224 | 225 | Export OpenOffice 226 | 227 | 228 | 229 | Export PDF 230 | 231 | 232 | 233 | Export Word 234 | 235 | 236 | 237 | Import OpenOffice 238 | 239 | 240 | 241 | Replace OpenOffice 242 | 243 | 244 | 245 | 246 | -------------------------------------------------------------------------------- /translations/ger-DE/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | OpenOffice.org export 31 | 32 | 33 | 34 | Export eZ Publish content to OpenOffice.org 35 | 36 | 37 | 38 | Error 39 | Fehler 40 | 41 | 42 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 43 | 44 | 45 | 46 | Export Object 47 | 48 | 49 | 50 | Document is now imported 51 | 52 | 53 | 54 | OpenOffice.org import 55 | 56 | 57 | 58 | The object was imported as: %class_name 59 | 60 | 61 | 62 | Document imported as 63 | 64 | 65 | 66 | The images are placed in the media library and can be re-used. 67 | 68 | 69 | 70 | Import another document 71 | 72 | 73 | 74 | Import OpenOffice.org document 75 | 76 | 77 | 78 | Replace document 79 | 80 | 81 | 82 | Import to 83 | 84 | 85 | 86 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 87 | asked where to place the document and eZ Publish does the rest. The document is converted into 88 | the appropriate class during the import, you get a notice about this after the import is done. 89 | Images are placed in the media library so you can re-use them in other articles. 90 | 91 | 92 | 93 | The imported document is waiting for an approbation to be published. 94 | 95 | 96 | 97 | Import document 98 | 99 | 100 | 101 | 102 | extension/ezodf/browse 103 | 104 | Choose document placement 105 | 106 | 107 | 108 | Please choose the placement for the OpenOffice.org object. 109 | 110 | Select the placements and click the %buttonname button. 111 | Using the recent and bookmark items for quick placement is also possible. 112 | Click on placement names to change the browse listing. 113 | 114 | 115 | 116 | Select 117 | 118 | 119 | 120 | 121 | extension/ezodf/export/error 122 | 123 | Destination file format not supported 124 | 125 | 126 | 127 | PDF conversion failed 128 | 129 | 130 | 131 | Word conversion failed 132 | 133 | 134 | 135 | Unable to fetch node, or no read access 136 | 137 | 138 | 139 | Unable to open file %1 on server side 140 | 141 | 142 | 143 | 144 | extension/ezodf/import/error 145 | 146 | File extension or type is not allowed. 147 | 148 | 149 | 150 | Could not parse XML. 151 | 152 | 153 | 154 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 155 | 156 | 157 | 158 | Can not convert the given document. 159 | 160 | 161 | 162 | Unable to call daemon. Fork can not create child process. 163 | 164 | 165 | 166 | Daemon reported error. 167 | 168 | 169 | 170 | Unknown node. 171 | 172 | 173 | 174 | Access denied. 175 | 176 | 177 | 178 | Error during import. 179 | 180 | 181 | 182 | Unknown content class specified in odf.ini: 183 | 184 | 185 | 186 | Unknown error. 187 | 188 | 189 | 190 | Filetype: 191 | 192 | 193 | 194 | Unable to fetch node with id 195 | 196 | 197 | 198 | Folder for images could not be created, access denied. 199 | 200 | 201 | 202 | Document is not supported. 203 | 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | 216 | 217 | 218 | 219 | extension/ezodf/popupmenu 220 | 221 | OpenOffice.org 222 | 223 | 224 | 225 | Export OpenOffice 226 | 227 | 228 | 229 | Export PDF 230 | 231 | 232 | 233 | Export Word 234 | 235 | 236 | 237 | Import OpenOffice 238 | 239 | 240 | 241 | Replace OpenOffice 242 | 243 | 244 | 245 | 246 | -------------------------------------------------------------------------------- /translations/swe-SE/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | OpenOffice.org export 31 | 32 | 33 | 34 | Export eZ Publish content to OpenOffice.org 35 | 36 | 37 | 38 | Error 39 | Fel 40 | 41 | 42 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 43 | 44 | 45 | 46 | Export Object 47 | 48 | 49 | 50 | Document is now imported 51 | 52 | 53 | 54 | OpenOffice.org import 55 | 56 | 57 | 58 | The object was imported as: %class_name 59 | 60 | 61 | 62 | Document imported as 63 | 64 | 65 | 66 | The images are placed in the media library and can be re-used. 67 | 68 | 69 | 70 | Import another document 71 | 72 | 73 | 74 | Import OpenOffice.org document 75 | 76 | 77 | 78 | Replace document 79 | 80 | 81 | 82 | Import to 83 | 84 | 85 | 86 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 87 | asked where to place the document and eZ Publish does the rest. The document is converted into 88 | the appropriate class during the import, you get a notice about this after the import is done. 89 | Images are placed in the media library so you can re-use them in other articles. 90 | 91 | 92 | 93 | The imported document is waiting for an approbation to be published. 94 | 95 | 96 | 97 | Import document 98 | 99 | 100 | 101 | 102 | extension/ezodf/browse 103 | 104 | Choose document placement 105 | 106 | 107 | 108 | Please choose the placement for the OpenOffice.org object. 109 | 110 | Select the placements and click the %buttonname button. 111 | Using the recent and bookmark items for quick placement is also possible. 112 | Click on placement names to change the browse listing. 113 | 114 | 115 | 116 | Select 117 | 118 | 119 | 120 | 121 | extension/ezodf/export/error 122 | 123 | Destination file format not supported 124 | 125 | 126 | 127 | PDF conversion failed 128 | 129 | 130 | 131 | Word conversion failed 132 | 133 | 134 | 135 | Unable to fetch node, or no read access 136 | 137 | 138 | 139 | Unable to open file %1 on server side 140 | 141 | 142 | 143 | 144 | extension/ezodf/import/error 145 | 146 | File extension or type is not allowed. 147 | 148 | 149 | 150 | Could not parse XML. 151 | 152 | 153 | 154 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 155 | 156 | 157 | 158 | Can not convert the given document. 159 | 160 | 161 | 162 | Unable to call daemon. Fork can not create child process. 163 | 164 | 165 | 166 | Daemon reported error. 167 | 168 | 169 | 170 | Unknown node. 171 | 172 | 173 | 174 | Access denied. 175 | 176 | 177 | 178 | Error during import. 179 | 180 | 181 | 182 | Unknown content class specified in odf.ini: 183 | 184 | 185 | 186 | Unknown error. 187 | 188 | 189 | 190 | Filetype: 191 | 192 | 193 | 194 | Unable to fetch node with id 195 | 196 | 197 | 198 | Folder for images could not be created, access denied. 199 | 200 | 201 | 202 | Document is not supported. 203 | 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | 216 | 217 | 218 | 219 | extension/ezodf/popupmenu 220 | 221 | OpenOffice.org 222 | 223 | 224 | 225 | Export OpenOffice 226 | 227 | 228 | 229 | Export PDF 230 | 231 | 232 | 233 | Export Word 234 | 235 | 236 | 237 | Import OpenOffice 238 | 239 | 240 | 241 | Replace OpenOffice 242 | 243 | 244 | 245 | 246 | -------------------------------------------------------------------------------- /translations/untranslated/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | Error 31 | 32 | 33 | 34 | Export Object 35 | 36 | 37 | 38 | OpenOffice.org import 39 | 40 | 41 | 42 | OpenOffice.org export 43 | 44 | 45 | 46 | Document is now imported 47 | 48 | 49 | 50 | The object was imported as: %class_name 51 | 52 | 53 | 54 | Document imported as 55 | 56 | 57 | 58 | Import another document 59 | 60 | 61 | 62 | Import OpenOffice.org document 63 | 64 | 65 | 66 | Replace document 67 | 68 | 69 | 70 | Import to 71 | 72 | 73 | 74 | Export eZ Publish content to OpenOffice.org 75 | 76 | 77 | 78 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 79 | 80 | 81 | 82 | The images are placed in the media library and can be re-used. 83 | 84 | 85 | 86 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 87 | asked where to place the document and eZ Publish does the rest. The document is converted into 88 | the appropriate class during the import, you get a notice about this after the import is done. 89 | Images are placed in the media library so you can re-use them in other articles. 90 | 91 | 92 | 93 | The imported document is waiting for an approbation to be published. 94 | 95 | 96 | 97 | Import document 98 | 99 | 100 | 101 | 102 | extension/ezodf/browse 103 | 104 | Choose document placement 105 | 106 | 107 | 108 | Please choose the placement for the OpenOffice.org object. 109 | 110 | Select the placements and click the %buttonname button. 111 | Using the recent and bookmark items for quick placement is also possible. 112 | Click on placement names to change the browse listing. 113 | 114 | 115 | 116 | Select 117 | 118 | 119 | 120 | 121 | extension/ezodf/export/error 122 | 123 | Destination file format not supported 124 | 125 | 126 | 127 | PDF conversion failed 128 | 129 | 130 | 131 | Word conversion failed 132 | 133 | 134 | 135 | Unable to fetch node, or no read access 136 | 137 | 138 | 139 | Unable to open file %1 on server side 140 | 141 | 142 | 143 | 144 | extension/ezodf/import/error 145 | 146 | File extension or type is not allowed. 147 | 148 | 149 | 150 | Could not parse XML. 151 | 152 | 153 | 154 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 155 | 156 | 157 | 158 | Can not convert the given document. 159 | 160 | 161 | 162 | Unable to call daemon. Fork can not create child process. 163 | 164 | 165 | 166 | Daemon reported error. 167 | 168 | 169 | 170 | Unknown node. 171 | 172 | 173 | 174 | Access denied. 175 | 176 | 177 | 178 | Error during import. 179 | 180 | 181 | 182 | Unknown content class specified in odf.ini: 183 | 184 | 185 | 186 | Unknown error. 187 | 188 | 189 | 190 | Filetype: 191 | 192 | 193 | 194 | Unable to fetch node with id 195 | 196 | 197 | 198 | Folder for images could not be created, access denied. 199 | 200 | 201 | 202 | Document is not supported. 203 | 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | 216 | 217 | 218 | 219 | extension/ezodf/popupmenu 220 | 221 | Export PDF 222 | 223 | 224 | 225 | Export Word 226 | 227 | 228 | 229 | OpenOffice.org 230 | 231 | 232 | 233 | Export OpenOffice 234 | 235 | 236 | 237 | Import OpenOffice 238 | 239 | 240 | 241 | Replace OpenOffice 242 | 243 | 244 | 245 | 246 | -------------------------------------------------------------------------------- /translations/chi-CN/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | Upload file 31 | 上传文件 32 | 33 | 34 | Error 35 | 错误 36 | 37 | 38 | Export Object 39 | 导出对象 40 | 41 | 42 | OpenOffice.org import 43 | OpenOffice.org导入 44 | 45 | 46 | OpenOffice.org export 47 | OpenOffice.org导出 48 | 49 | 50 | Document is now imported 51 | 文档导入成功 52 | 53 | 54 | The object was imported as: %class_name 55 | 该对象被导入为: %class_name 56 | 57 | 58 | Document imported as 59 | 文档被导入为 60 | 61 | 62 | Import another document 63 | 导入另一个文档 64 | 65 | 66 | Import OpenOffice.org document 67 | 导入OpenOffice.org文档 68 | 69 | 70 | Replace document 71 | 替换文档 72 | 73 | 74 | Import to 75 | 导入至 76 | 77 | 78 | Export eZ Publish content to OpenOffice.org 79 | 80 | 81 | 82 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 83 | 84 | 85 | 86 | The images are placed in the media library and can be re-used. 87 | 88 | 89 | 90 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 91 | asked where to place the document and eZ Publish does the rest. The document is converted into 92 | the appropriate class during the import, you get a notice about this after the import is done. 93 | Images are placed in the media library so you can re-use them in other articles. 94 | 95 | 96 | 97 | The imported document is waiting for an approbation to be published. 98 | 99 | 100 | 101 | Import document 102 | 103 | 104 | 105 | 106 | extension/ezodf/browse 107 | 108 | Choose document placement 109 | 选择文档的位置 110 | 111 | 112 | Please choose the placement for the OpenOffice.org object. 113 | 114 | Select the placements and click the %buttonname button. 115 | Using the recent and bookmark items for quick placement is also possible. 116 | Click on placement names to change the browse listing. 117 | 请选择OpenOffice.org对象的放置位置。 118 | 119 | 选择位置然后点击%buttonname按钮。 120 | 也可以使用最近浏览和书签来快速定位。 121 | 点击位置名称刷新浏览目录树。 122 | 123 | 124 | Select 125 | 选择 126 | 127 | 128 | 129 | extension/ezodf/export/error 130 | 131 | Destination file format not supported 132 | 目标文件格式不支持 133 | 134 | 135 | PDF conversion failed 136 | PDF转换失败 137 | 138 | 139 | Word conversion failed 140 | 单词转换失败 141 | 142 | 143 | Unable to fetch node, or no read access 144 | 无法提取节点,或者没有读权限 145 | 146 | 147 | Unable to open file %1 on server side 148 | 无法打开服务器端文件%1 149 | 150 | 151 | 152 | extension/ezodf/import/error 153 | 154 | File extension or type is not allowed. 155 | 文件扩展名或类型不支持。 156 | 157 | 158 | Could not parse XML. 159 | 无法解析XML。 160 | 161 | 162 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 163 | 无法打开套接字。请检查extension/ezodf/daemon.php是否启动。 164 | 165 | 166 | Can not convert the given document. 167 | 无法转换指定的文档。 168 | 169 | 170 | Unable to call daemon. Fork can not create child process. 171 | 无法调用后台进程。无法生成子进程。 172 | 173 | 174 | Daemon reported error. 175 | 后台进程报错。 176 | 177 | 178 | Unknown node. 179 | 未知节点。 180 | 181 | 182 | Access denied. 183 | 拒绝访问。 184 | 185 | 186 | Error during import. 187 | 导入过程中出错。 188 | 189 | 190 | Unknown content class specified in odf.ini: 191 | odf.ini中指定的类未知: 192 | 193 | 194 | Unknown error. 195 | 未知错误。 196 | 197 | 198 | Filetype: 199 | 文件类型: 200 | 201 | 202 | Folder for images could not be created, access denied. 203 | 无法创建图片文件夹,拒绝访问。 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | 无法导入。没找到文件。已经导入? 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | 无法导入文档,提供的位置nodeID不合法。 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | 无法保存上传的文件,无法导入。 216 | 217 | 218 | Unable to fetch node with id 219 | 220 | 221 | 222 | Document is not supported. 223 | 224 | 225 | 226 | 227 | extension/ezodf/popupmenu 228 | 229 | Export PDF 230 | 导入PDF 231 | 232 | 233 | Export Word 234 | 导入Word 235 | 236 | 237 | OpenOffice.org 238 | OpenOffice.org 239 | 240 | 241 | Export OpenOffice 242 | 导出OpenOffice 243 | 244 | 245 | Import OpenOffice 246 | 导入OpenOffice 247 | 248 | 249 | Replace OpenOffice 250 | 替换OpenOffice 251 | 252 | 253 | 254 | -------------------------------------------------------------------------------- /translations/chi-TW/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | Upload file 31 | 上傳檔案 32 | 33 | 34 | Error 35 | 錯誤 36 | 37 | 38 | Export Object 39 | 匯出物件 40 | 41 | 42 | OpenOffice.org import 43 | OpenOffice.org 匯入 44 | 45 | 46 | OpenOffice.org export 47 | OpenOffice.org 匯出 48 | 49 | 50 | Document is now imported 51 | 現在文件已匯入 52 | 53 | 54 | The object was imported as: %class_name 55 | 將物件匯入為:%class_name 56 | 57 | 58 | Document imported as 59 | 將文件匯入為 60 | 61 | 62 | Import another document 63 | 匯入另一份文件 64 | 65 | 66 | Import OpenOffice.org document 67 | 匯入 OpenOffice.org 文件 68 | 69 | 70 | Replace document 71 | 置換文件 72 | 73 | 74 | Import to 75 | 匯入到 76 | 77 | 78 | Export eZ Publish content to OpenOffice.org 79 | 80 | 81 | 82 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 83 | 84 | 85 | 86 | The images are placed in the media library and can be re-used. 87 | 88 | 89 | 90 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 91 | asked where to place the document and eZ Publish does the rest. The document is converted into 92 | the appropriate class during the import, you get a notice about this after the import is done. 93 | Images are placed in the media library so you can re-use them in other articles. 94 | 95 | 96 | 97 | The imported document is waiting for an approbation to be published. 98 | 99 | 100 | 101 | Import document 102 | 103 | 104 | 105 | 106 | extension/ezodf/browse 107 | 108 | Choose document placement 109 | 選擇文件位置 110 | 111 | 112 | Please choose the placement for the OpenOffice.org object. 113 | 114 | Select the placements and click the %buttonname button. 115 | Using the recent and bookmark items for quick placement is also possible. 116 | Click on placement names to change the browse listing. 117 | 請選擇 OpenOffice.org 物件的位置 118 | 選取位置之後按下 %buttonname 鈕。 119 | 也可以使用最近開啟與書籤項目進行快速放置。 120 | 按下位置名稱以變更瀏覽清單。 121 | 122 | 123 | Select 124 | 選擇 125 | 126 | 127 | 128 | extension/ezodf/export/error 129 | 130 | Destination file format not supported 131 | 不支援目的檔案格式 132 | 133 | 134 | PDF conversion failed 135 | PDF 轉換失敗 136 | 137 | 138 | Word conversion failed 139 | Word 轉換失敗 140 | 141 | 142 | Unable to fetch node, or no read access 143 | 無法擷取節點,或是沒有讀取權限 144 | 145 | 146 | Unable to open file %1 on server side 147 | 無法在伺服器端開啟檔案 %1 148 | 149 | 150 | 151 | extension/ezodf/import/error 152 | 153 | File extension or type is not allowed. 154 | 不允許擴充檔名或者型態。 155 | 156 | 157 | Could not parse XML. 158 | 無法解析 XML。 159 | 160 | 161 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 162 | 無法開啟通訊端。請檢查 extension/ezodf/daemon.php 是否正在運行。 163 | 164 | 165 | Can not convert the given document. 166 | 無法轉換所給的文件。 167 | 168 | 169 | Unable to call daemon. Fork can not create child process. 170 | 無法呼叫守護程式。無法藉由衍生建立子程序。 171 | 172 | 173 | Daemon reported error. 174 | 守護程式回報錯誤。 175 | 176 | 177 | Unknown node. 178 | 不明的節點。 179 | 180 | 181 | Access denied. 182 | 存取被拒。 183 | 184 | 185 | Error during import. 186 | 匯入時發生錯誤。 187 | 188 | 189 | Unknown content class specified in odf.ini: 190 | 在 odf.ini 中所指定的不明內容類別: 191 | 192 | 193 | Unknown error. 194 | 不明錯誤。 195 | 196 | 197 | Filetype: 198 | 檔案類型: 199 | 200 | 201 | Folder for images could not be created, access denied. 202 | 無法建立圖像資料夾,存取被拒。 203 | 204 | 205 | Cannot import. File not found. Already imported? 206 | 無法匯入。找不到檔案。已經匯入了嗎? 207 | 208 | 209 | Cannot import document, supplied placement nodeID is not valid. 210 | 無法匯入文件,所提供的位置 nodeID 無效。 211 | 212 | 213 | Cannot store uploaded file, cannot import. 214 | 無法儲存上傳的檔案,無法匯入。 215 | 216 | 217 | Unable to fetch node with id 218 | 219 | 220 | 221 | Document is not supported. 222 | 223 | 224 | 225 | 226 | extension/ezodf/popupmenu 227 | 228 | Export PDF 229 | 匯出 PDF 230 | 231 | 232 | Export Word 233 | 匯出 Word 234 | 235 | 236 | OpenOffice.org 237 | 238 | 239 | 240 | Export OpenOffice 241 | 242 | 243 | 244 | Import OpenOffice 245 | 246 | 247 | 248 | Replace OpenOffice 249 | 250 | 251 | 252 | 253 | -------------------------------------------------------------------------------- /translations/jpn-JP/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | Upload file 31 | ファイルをアップロード 32 | 33 | 34 | Error 35 | エラー 36 | 37 | 38 | Export Object 39 | エクスポート 40 | 41 | 42 | OpenOffice.org import 43 | OpenOffice.orgインポート 44 | 45 | 46 | OpenOffice.org export 47 | OpenOffice.orgエクスポート 48 | 49 | 50 | Document is now imported 51 | ドキュメントはインポートされました 52 | 53 | 54 | The object was imported as: %class_name 55 | オブジェクトは%class_nameとしてインポートされました 56 | 57 | 58 | Document imported as 59 | インポートされたドキュメント: 60 | 61 | 62 | Import another document 63 | 他のドキュメントをインポート 64 | 65 | 66 | Import OpenOffice.org document 67 | OpenOffice.orgドキュメントをインポート 68 | 69 | 70 | Replace document 71 | ドキュメントをリプレイス 72 | 73 | 74 | Import to 75 | インポート先: 76 | 77 | 78 | Export eZ Publish content to OpenOffice.org 79 | eZ PublishのコンテンツをOpenOffice.orgへエクスポート 80 | 81 | 82 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 83 | eZ Publish のコンテンツをOpenOffice.org Writer へエクスポートします。 84 | 85 | 86 | The images are placed in the media library and can be re-used. 87 | 画像はメディアリソースへ保存されました。再利用が可能です。 88 | 89 | 90 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 91 | asked where to place the document and eZ Publish does the rest. The document is converted into 92 | the appropriate class during the import, you get a notice about this after the import is done. 93 | Images are placed in the media library so you can re-use them in other articles. 94 | OpenOffice.org WriterドキュメントをeZ Publishへインポートします。ドキュメントの配置先を指定して下さい。 95 | インポート完了後に通知が表示されます。画像はメディアリソースに保存されますので、後に再利用が可能です。 96 | 97 | 98 | The imported document is waiting for an approbation to be published. 99 | 100 | 101 | 102 | Import document 103 | 104 | 105 | 106 | 107 | extension/ezodf/browse 108 | 109 | Choose document placement 110 | ドキュメントの配置先を選択してください 111 | 112 | 113 | Please choose the placement for the OpenOffice.org object. 114 | 115 | Select the placements and click the %buttonname button. 116 | Using the recent and bookmark items for quick placement is also possible. 117 | Click on placement names to change the browse listing. 118 | OpenOffice.orgドキュメントの配置先を選択して下さい。 119 | 配置先を選択し、%buttonnameをクリックして下さい。 120 | ブックマークやアイテムの履歴を利用することも可能です。 121 | ブラウズリストを移動するには名前をクリックして下さい。 122 | 123 | 124 | Select 125 | 選択 126 | 127 | 128 | 129 | extension/ezodf/export/error 130 | 131 | Destination file format not supported 132 | フォーマットがサポートされていません 133 | 134 | 135 | PDF conversion failed 136 | PDFのコンバージョンに失敗しました 137 | 138 | 139 | Word conversion failed 140 | Wordのコンバージョンに失敗しました 141 | 142 | 143 | Unable to fetch node, or no read access 144 | ノードが見つからないか、アクセスがありません。 145 | 146 | 147 | Unable to open file %1 on server side 148 | ファイル%1を開けません。 149 | 150 | 151 | 152 | extension/ezodf/import/error 153 | 154 | File extension or type is not allowed. 155 | ファイルエクステンション又はタイプが無効です。 156 | 157 | 158 | Could not parse XML. 159 | XMLを分析できませんでした 160 | 161 | 162 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 163 | ソケットを開けません。extension/ezodf/daemon.phpが起動しているか確認して下さい。 164 | 165 | 166 | Can not convert the given document. 167 | このドキュメントを変換できません。 168 | 169 | 170 | Unable to call daemon. Fork can not create child process. 171 | デーモンへアクセスできません。フォークがチャイルドプロセスを作成できません。 172 | 173 | 174 | Daemon reported error. 175 | デーモンがエラーを起こしています。 176 | 177 | 178 | Unknown node. 179 | 不明なノード 180 | 181 | 182 | Access denied. 183 | アクセスが拒否されました 184 | 185 | 186 | Error during import. 187 | インポート中にエラーが起きました 188 | 189 | 190 | Unknown content class specified in odf.ini: 191 | odf.iniに不明なコンテンツクラスが見つかりました: 192 | 193 | 194 | Unknown error. 195 | 不明なエラー 196 | 197 | 198 | Filetype: 199 | ファイルタイプ: 200 | 201 | 202 | Folder for images could not be created, access denied. 203 | アクセスが拒否されました。画像フォルダーが作成できませんでした。 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | インポートできません。ファイルが見つかりませんでした。既にインポートしていますか? 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | ドキュメントをインポートできません。ノードIDが無効です。 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | アップロードしたファイルを保存できません。 216 | 217 | 218 | Unable to fetch node with id 219 | ノードが見つかりません 220 | 221 | 222 | Document is not supported. 223 | ドキュメントはサポートされていません。 224 | 225 | 226 | 227 | extension/ezodf/popupmenu 228 | 229 | Export PDF 230 | PDFをエクスポート 231 | 232 | 233 | Export Word 234 | Wordをエクスポート 235 | 236 | 237 | OpenOffice.org 238 | OpenOffice.org 239 | 240 | 241 | Export OpenOffice 242 | OpenOfficeファイルにエクスポートする 243 | 244 | 245 | Import OpenOffice 246 | OpenOfficeファイルをインポートする 247 | 248 | 249 | Replace OpenOffice 250 | OpenOfficeファイルをリプレイスする 251 | 252 | 253 | 254 | -------------------------------------------------------------------------------- /modules/ezodf/import.php: -------------------------------------------------------------------------------- 1 | 4 | // 5 | // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 6 | // SOFTWARE NAME: eZ Publish 7 | // SOFTWARE RELEASE: 3.9.x 8 | // COPYRIGHT NOTICE: Copyright (C) 1999-2014 eZ Systems AS 9 | // SOFTWARE LICENSE: GNU General Public License v2.0 10 | // NOTICE: > 11 | // This program is free software; you can redistribute it and/or 12 | // modify it under the terms of version 2.0 of the GNU General 13 | // Public License as published by the Free Software Foundation. 14 | // 15 | // This program is distributed in the hope that it will be useful, 16 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | // GNU General Public License for more details. 19 | // 20 | // You should have received a copy of version 2.0 of the GNU General 21 | // Public License along with this program; if not, write to the Free 22 | // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 23 | // MA 02110-1301, USA. 24 | // 25 | // 26 | // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ## 27 | // 28 | 29 | function makeErrorArray( $num, $msg ) 30 | { 31 | return array( 'number' => $num, 'message' => $msg ); 32 | } 33 | 34 | $http = eZHTTPTool::instance(); 35 | $module = $Params["Module"]; 36 | $NodeID = $Params['NodeID']; 37 | $ImportType = $Params['ImportType']; 38 | 39 | $tpl = eZTemplate::factory(); 40 | 41 | $tpl->setVariable( 'error', false ); 42 | $tpl->setVariable( 'import_type', 'import' ); 43 | 44 | $doImport = false; 45 | $replaceObject = false; 46 | // Check if we should create a new document as a child of the selected or 47 | // replace it creating a new version 48 | if ( $http->hasPostVariable( "ImportType" ) ) 49 | { 50 | $type = $http->postVariable( "ImportType" ); 51 | if ( $type == "replace" ) 52 | { 53 | $replaceObject = true; 54 | } 55 | } 56 | 57 | // Check import type in GET variables 58 | if ( $ImportType == "replace" ) 59 | { 60 | $replaceObject = true; 61 | } 62 | 63 | if ( $http->hasPostVariable( "NodeID" ) or is_numeric( $NodeID ) ) 64 | { 65 | if ( is_numeric( $NodeID ) ) 66 | $nodeID = $NodeID; 67 | else 68 | $nodeID = $http->postVariable( "NodeID" ); 69 | 70 | $doImport = true; 71 | $node = eZContentObjectTreeNode::fetch( $nodeID ); 72 | 73 | if ( $replaceObject == true ) 74 | { 75 | $tpl->setVariable( 'import_type', "replace" ); 76 | $http->setSessionVariable( 'oo_import_type', 'replace' ); 77 | } 78 | else 79 | { 80 | $http->setSessionVariable( 'oo_import_type', 'import' ); 81 | } 82 | 83 | $tpl->setVariable( 'import_node', $node ); 84 | $http->setSessionVariable( 'oo_direct_import_node', $nodeID ); 85 | } 86 | 87 | if ( $http->hasPostVariable( 'Locale' ) ) 88 | { 89 | $http->setSessionVariable( 90 | 'oo_import_locale', $http->postVariable( 'Locale' ) 91 | ); 92 | } 93 | 94 | if ( $module->isCurrentAction( 'OOPlace' ) ) 95 | { 96 | // We have the file and the placement. Do the actual import. 97 | $selectedNodeIDArray = eZContentBrowse::result( 'OOPlace' ); 98 | 99 | $nodeID = $selectedNodeIDArray[0]; 100 | 101 | if ( is_numeric( $nodeID ) ) 102 | { 103 | $fileName = $http->sessionVariable( "oo_import_filename" ); 104 | if ( file_exists( $fileName ) ) 105 | { 106 | $import = new eZOOImport(); 107 | $result = $import->import( 108 | $http->sessionVariable( "oo_import_filename" ), 109 | $nodeID, 110 | $http->sessionVariable( "oo_import_original_filename" ), 111 | "import", 112 | null, 113 | $http->sessionVariable( 'oo_import_locale' ) 114 | ); 115 | // Cleanup of uploaded file 116 | //unlink( $http->sessionVariable( "oo_import_filename" ) ); 117 | 118 | 119 | if( $result ) 120 | { 121 | $tpl->setVariable( 'class_identifier', $result['ClassIdentifier'] ); 122 | $tpl->setVariable( 'url_alias', $result['URLAlias'] ); 123 | $tpl->setVariable( 'node_name', $result['NodeName'] ); 124 | $tpl->setVariable( 'oo_mode', 'imported' ); 125 | } 126 | else 127 | { 128 | if( $import->getErrorNumber() != 0 ) 129 | { 130 | $tpl->setVariable( 'error', makeErrorArray( $import->getErrorNumber(), $import->getErrorMessage() ) ); 131 | } 132 | else 133 | { 134 | $tpl->setVariable( 'error', makeErrorArray( eZOOImport::ERROR_DOCNOTSUPPORTED, 135 | ezpI18n::tr( 'extension/ezodf/import/error', "Document is not supported." ) ) ); 136 | } 137 | 138 | } 139 | $http->removeSessionVariable( 'oo_import_step' ); 140 | $http->removeSessionVariable( 'oo_import_filename' ); 141 | $http->removeSessionVariable( 'oo_import_original_filename' ); 142 | $http->removeSessionVariable( 'oo_import_locale' ); 143 | } 144 | else 145 | { 146 | eZDebug::writeError( "Cannot import. File not found. Already imported?" ); 147 | $tpl->setVariable( 'error', makeErrorArray( eZOOImport::ERROR_FILENOTFOUND, 148 | ezpI18n::tr( 'extension/ezodf/import/error', "Cannot import. File not found. Already imported?" ) ) ); 149 | } 150 | } 151 | else 152 | { 153 | eZDebug::writeError( "Cannot import document, supplied placement nodeID is not valid." ); 154 | $tpl->setVariable( 'error', makeErrorArray( eZOOImport::ERROR_PLACEMENTINVALID, 155 | ezpI18n::tr( 'extension/ezodf/import/error', "Cannot import document, supplied placement nodeID is not valid." ) ) ); 156 | } 157 | 158 | // $tpl->setVariable( 'oo_mode', 'imported' ); 159 | } 160 | else 161 | { 162 | $tpl->setVariable( 'oo_mode', 'browse' ); 163 | 164 | if( eZHTTPFile::canFetch( "oo_file" ) ) 165 | { 166 | $file = eZHTTPFile::fetch( "oo_file" ); 167 | 168 | if ( $file ) 169 | { 170 | if ( $file->store() ) 171 | { 172 | $fileName = $file->attribute( 'filename' ); 173 | 174 | $originalFileName = $file->attribute( 'original_filename' ); 175 | 176 | // If we have the NodeID do the import/replace directly 177 | if ( $http->sessionVariable( 'oo_direct_import_node' ) ) 178 | { 179 | $nodeID = $http->sessionVariable( 'oo_direct_import_node' ); 180 | $importType = $http->sessionVariable( 'oo_import_type' ); 181 | if ( $importType != "replace" ) 182 | $importType = "import"; 183 | $import = new eZOOImport(); 184 | $result = $import->import( 185 | $fileName, $nodeID, $originalFileName, 186 | $importType, null, 187 | $http->sessionVariable( 'oo_import_locale' ) 188 | ); 189 | // Cleanup of uploaded file 190 | unlink( $fileName ); 191 | 192 | if ( $result ) 193 | { 194 | $tpl->setVariable( 'class_identifier', $result['ClassIdentifier'] ); 195 | $tpl->setVariable( 'url_alias', $result['URLAlias'] ); 196 | $tpl->setVariable( 'node_name', $result['NodeName'] ); 197 | $tpl->setVariable( 'published', $result['Published'] ); 198 | $tpl->setVariable( 'oo_mode', 'imported' ); 199 | } 200 | else 201 | { 202 | if( $import->getErrorNumber() != 0 ) 203 | { 204 | $tpl->setVariable( 'error', makeErrorArray( $import->getErrorNumber(), $import->getErrorMessage() ) ); 205 | } 206 | else 207 | { 208 | $tpl->setVariable( 'error', makeErrorArray( eZOOImport::ERROR_DOCNOTSUPPORTED, 209 | ezpI18n::tr( 'extension/ezodf/import/error',"Document is not supported." ) ) ); 210 | } 211 | } 212 | $http->removeSessionVariable( 'oo_direct_import_node' ); 213 | $http->removeSessionVariable( 'oo_import_locale' ); 214 | } 215 | else 216 | { 217 | // Make the user browser for document placement 218 | $http->setSessionVariable( 'oo_import_step', 'browse' ); 219 | $http->setSessionVariable( 'oo_import_filename', $fileName ); 220 | $http->setSessionVariable( 'oo_import_original_filename', $originalFileName ); 221 | 222 | eZContentBrowse::browse( array( 'action_name' => 'OOPlace', 223 | 'description_template' => 'design:ezodf/browse_place.tpl', 224 | 'content' => array(), 225 | 'from_page' => '/ezodf/import/', 226 | 'cancel_page' => '/ezodf/import/' ), 227 | $module ); 228 | return; 229 | } 230 | } 231 | else 232 | { 233 | eZDebug::writeError( "Cannot store uploaded file, cannot import" ); 234 | $tpl->setVariable( 'error', makeErrorArray( eZOOImport::ERROR_CANNOTSTORE, 235 | ezpI18n::tr( 'extension/ezodf/import/error',"Cannot store uploaded file, cannot import." ) ) ); 236 | } 237 | } 238 | } 239 | } 240 | 241 | 242 | 243 | $Result = array(); 244 | $Result['content'] = $tpl->fetch( "design:ezodf/import.tpl" ); 245 | $Result['path'] = array( array( 'url' => '/ezodf/import/', 246 | 'text' => ezpI18n::tr( 'extension/ezodf', 'OpenOffice.org import' ) )); 247 | 248 | 249 | 250 | ?> 251 | -------------------------------------------------------------------------------- /translations/cro-HR/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | Upload file 31 | Učitaj datoteku 32 | 33 | 34 | Error 35 | Greška 36 | 37 | 38 | Export Object 39 | Izvezi objekt 40 | 41 | 42 | OpenOffice.org import 43 | OpenOffice.org uvoz 44 | 45 | 46 | OpenOffice.org export 47 | OpenOffice.org izvoz 48 | 49 | 50 | Document is now imported 51 | Dokument se uvozi 52 | 53 | 54 | The object was imported as: %class_name 55 | Objekt je uvezen kao: %class_name 56 | 57 | 58 | Document imported as 59 | Dokument uvezen kao 60 | 61 | 62 | Import another document 63 | Uvezi drugi dokument 64 | 65 | 66 | Import OpenOffice.org document 67 | Uvezi OpenOffice.org dokument 68 | 69 | 70 | Replace document 71 | Zamijeni dokument 72 | 73 | 74 | Import to 75 | Uvezi u 76 | 77 | 78 | Export eZ Publish content to OpenOffice.org 79 | Izvezi eZ Publish sadržaj u OpenOffice.org 80 | 81 | 82 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 83 | Ovdje možete izvesti bilo koji eZ Publish objekt u OpenOffice.org Writer format dokumenta. 84 | 85 | 86 | The images are placed in the media library and can be re-used. 87 | Slike su smještene u biblioteku medija i mogu biti korištene više puta. 88 | 89 | 90 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 91 | asked where to place the document and eZ Publish does the rest. The document is converted into 92 | the appropriate class during the import, you get a notice about this after the import is done. 93 | Images are placed in the media library so you can re-use them in other articles. 94 | S ove stranice možete uvesti OpenOffice.org Writer direktno u eZ Publish Od vas će se tražiti 95 | da odaberete lokaciju dokumenta i eZ Publish će odraditi ostatak. Dokument će biti konvertiran 96 | u odgovarajuću klasu prilikom uvoza i bit ćete obavješteni o tome nakon što je uvoz završen. 97 | Slike će biti smještene u biblioteku medija da ih možete koristiti u člancima. 98 | 99 | 100 | The imported document is waiting for an approbation to be published. 101 | Uvezeni dokument čeka na odobrenje za objavu. 102 | 103 | 104 | Import document 105 | 106 | 107 | 108 | 109 | extension/ezodf/browse 110 | 111 | Choose document placement 112 | Odaberite lokaciju dokumenta 113 | 114 | 115 | Please choose the placement for the OpenOffice.org object. 116 | 117 | Select the placements and click the %buttonname button. 118 | Using the recent and bookmark items for quick placement is also possible. 119 | Click on placement names to change the browse listing. 120 | Odaberite lokaciju za OpenOffice.org objekt. 121 | 122 | Odaberite lokacije i kliknite %buttonname tipku. 123 | Odabiranje lokacija je također moguće koristeći favorite. 124 | Kliknite na nazive lokacija da biste promijenili izlist. 125 | 126 | 127 | Select 128 | Odaberi 129 | 130 | 131 | 132 | extension/ezodf/export/error 133 | 134 | Destination file format not supported 135 | Odredišni format datoteke nije podržan 136 | 137 | 138 | PDF conversion failed 139 | Konverzija u PDF neuspješna 140 | 141 | 142 | Word conversion failed 143 | Konverzija u Word neuspješna 144 | 145 | 146 | Unable to fetch node, or no read access 147 | Nije moguće dohvatiti čvor ili ne postoje prava za čitanje 148 | 149 | 150 | Unable to open file %1 on server side 151 | Nije moguće otvoriti datoteku %1 na serveru 152 | 153 | 154 | 155 | extension/ezodf/import/error 156 | 157 | File extension or type is not allowed. 158 | Nastavak datoteke nije dozvoljen. 159 | 160 | 161 | Could not parse XML. 162 | Nije moguće parsirati XML. 163 | 164 | 165 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 166 | Nije moguće otvoriti vezu. Provjerite je li pokrenut extension/ezodf/daemon.php. 167 | 168 | 169 | Can not convert the given document. 170 | Nije moguće konvertirati dokument. 171 | 172 | 173 | Unable to call daemon. Fork can not create child process. 174 | Nije moguće pozvati demon proces. Nije moguće stvoriti podprocese. 175 | 176 | 177 | Daemon reported error. 178 | Demon je prijavio grešku. 179 | 180 | 181 | Unknown node. 182 | Nepoznati čvor. 183 | 184 | 185 | Access denied. 186 | Pristup nije dozvoljen. 187 | 188 | 189 | Error during import. 190 | Greška prilikom uvoza. 191 | 192 | 193 | Unknown content class specified in odf.ini: 194 | Nepoznata klasa navedena u odf.ini: 195 | 196 | 197 | Unknown error. 198 | Nepoznata greška. 199 | 200 | 201 | Filetype: 202 | Vrsta datoteke: 203 | 204 | 205 | Unable to fetch node with id 206 | Nije moguće dohvatiti čvor s ID-em 207 | 208 | 209 | Folder for images could not be created, access denied. 210 | Nije moguće kreirati direktorij za slike jer nemate prava pristupa. 211 | 212 | 213 | Document is not supported. 214 | Dokument nije podržan. 215 | 216 | 217 | Cannot import. File not found. Already imported? 218 | Nije moguće uvesti datoteku jer nije pronađena. Možda je već uvezena? 219 | 220 | 221 | Cannot import document, supplied placement nodeID is not valid. 222 | Nije moguće uvesti dokument, dani ID lokacije nije ispravan. 223 | 224 | 225 | Cannot store uploaded file, cannot import. 226 | Uvoz nije moguć. Nije moguće pohraniti učitanu datoteku. 227 | 228 | 229 | 230 | extension/ezodf/popupmenu 231 | 232 | Export PDF 233 | Izvezi PDF 234 | 235 | 236 | Export Word 237 | Izvezi Word 238 | 239 | 240 | OpenOffice.org 241 | OpenOffice.org 242 | 243 | 244 | Export OpenOffice 245 | Izvezi OpenOffice 246 | 247 | 248 | Import OpenOffice 249 | Uvezi OpenOffice 250 | 251 | 252 | Replace OpenOffice 253 | Zamijeni OpenOffice 254 | 255 | 256 | 257 | -------------------------------------------------------------------------------- /translations/ita-IT/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | Upload file 31 | Carica file 32 | 33 | 34 | Error 35 | Errore 36 | 37 | 38 | Export Object 39 | Esporta Oggetto 40 | 41 | 42 | OpenOffice.org import 43 | Importazione OpenOffice.org 44 | 45 | 46 | OpenOffice.org export 47 | Esportazione OpenOffice.org 48 | 49 | 50 | Document is now imported 51 | Documento in fase di importatazione 52 | 53 | 54 | The object was imported as: %class_name 55 | L'oggetto è stato importato come: %class_name 56 | 57 | 58 | Document imported as 59 | Documento importato come 60 | 61 | 62 | Import another document 63 | Importa un altro documento 64 | 65 | 66 | Import OpenOffice.org document 67 | Importa un documento OpenOffice.org 68 | 69 | 70 | Replace document 71 | Sostituisci documento 72 | 73 | 74 | Import to 75 | Importa a 76 | 77 | 78 | Export eZ Publish content to OpenOffice.org 79 | Esporta un contenuto eZ Publish in OpenOffice.org 80 | 81 | 82 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 83 | Qui puoi esportare qualunque oggetto contenuto di eZ Publish in un documento in formato OpenOffice.org Writer. 84 | 85 | 86 | The images are placed in the media library and can be re-used. 87 | Le immagini vengono collocate nella libreria media e possono essere riutilizzate. 88 | 89 | 90 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 91 | asked where to place the document and eZ Publish does the rest. The document is converted into 92 | the appropriate class during the import, you get a notice about this after the import is done. 93 | Images are placed in the media library so you can re-use them in other articles. 94 | Puoi importare documenti OpenOffice.org Writer direttamente in eZ Publish da questa pagina. Ti verrà chiesto dove posizionare i documenti e eZ Publish farà il resto. Il documento viene convertito nella classe appropriata durante l'importazione, ne riceverai notifica al completamento dell'importazione. 95 | Le immagini vengono collocate nella libreria media in modo da poter essere riutilizzate. 96 | 97 | 98 | The imported document is waiting for an approbation to be published. 99 | Il documento importato è in attesa di approvazione per la pubblicazione. 100 | 101 | 102 | Import document 103 | 104 | 105 | 106 | 107 | extension/ezodf/browse 108 | 109 | Choose document placement 110 | Scegli la posizione del documento 111 | 112 | 113 | Please choose the placement for the OpenOffice.org object. 114 | 115 | Select the placements and click the %buttonname button. 116 | Using the recent and bookmark items for quick placement is also possible. 117 | Click on placement names to change the browse listing. 118 | Scegli la collocazione per l'oggetto OpenOffice.org. 119 | Scegli le tue collocazioni e premi il pulsante %buttonname. 120 | È possibile usare gli elementi preferiti e recenti per una veloce collocazione. 121 | Clicca sui nomi delle collocazioni per modificare l'elenco da sfogliare. 122 | 123 | 124 | Select 125 | Seleziona 126 | 127 | 128 | 129 | extension/ezodf/export/error 130 | 131 | Destination file format not supported 132 | Formato del file di destinazione non supportato 133 | 134 | 135 | PDF conversion failed 136 | Conversione in pdf non riuscita 137 | 138 | 139 | Word conversion failed 140 | Conversione in word non riuscita 141 | 142 | 143 | Unable to fetch node, or no read access 144 | Impossibile trovare il nodo o mancato permesso di lettura 145 | 146 | 147 | Unable to open file %1 on server side 148 | Impossibile aprire il file %1 sul server 149 | 150 | 151 | 152 | extension/ezodf/import/error 153 | 154 | File extension or type is not allowed. 155 | Tipo di estensione o tipo di file non ammesso. 156 | 157 | 158 | Could not parse XML. 159 | Impossibile elaborare la parte XML. 160 | 161 | 162 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 163 | Impossibile aprire il socket. Controllare che il demone extension/ezodf/daemon.php sia in esecuzione. 164 | 165 | 166 | Can not convert the given document. 167 | Impossibile convertire il documento fornito. 168 | 169 | 170 | Unable to call daemon. Fork can not create child process. 171 | Impossibile richiamare il demone. Fork non riesce a caricare il processo figlio. 172 | 173 | 174 | Daemon reported error. 175 | Il demone ha riportato un errore. 176 | 177 | 178 | Unknown node. 179 | Nodo sconosciuto. 180 | 181 | 182 | Access denied. 183 | Accesso negato. 184 | 185 | 186 | Error during import. 187 | Errore durante l'importazione. 188 | 189 | 190 | Unknown content class specified in odf.ini: 191 | Classe sconociuta specificata in odf.ini: 192 | 193 | 194 | Unknown error. 195 | Errore sconosciuto. 196 | 197 | 198 | Filetype: 199 | Tipo di file: 200 | 201 | 202 | Folder for images could not be created, access denied. 203 | La cartella per le immagini non può essere creata, accesso negato. 204 | 205 | 206 | Cannot import. File not found. Already imported? 207 | Impossibile importare. File non trovato. Già importato? 208 | 209 | 210 | Cannot import document, supplied placement nodeID is not valid. 211 | Impossibile importare il documento, il nodeID specificato non è valido. 212 | 213 | 214 | Cannot store uploaded file, cannot import. 215 | Impossibile salvare il file caricato, impossibile importare. 216 | 217 | 218 | Unable to fetch node with id 219 | Impossibile trovare il nodo con id 220 | 221 | 222 | Document is not supported. 223 | Documento non supportato. 224 | 225 | 226 | 227 | extension/ezodf/popupmenu 228 | 229 | Export PDF 230 | Esporta PDF 231 | 232 | 233 | Export Word 234 | Esporta Word 235 | 236 | 237 | OpenOffice.org 238 | OpenOffice.org 239 | 240 | 241 | Export OpenOffice 242 | Esporta OpenOffice 243 | 244 | 245 | Import OpenOffice 246 | Importa OpenOffice 247 | 248 | 249 | Replace OpenOffice 250 | Sostituisci OpenOffice 251 | 252 | 253 | 254 | -------------------------------------------------------------------------------- /translations/cze-CZ/translation.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | design/ezodf/import 6 | 7 | File: 8 | 9 | 10 | 11 | Create or update the translation in: 12 | 13 | 14 | 15 | Existing translations 16 | 17 | 18 | 19 | New translations 20 | 21 | 22 | 23 | Import in: 24 | 25 | 26 | 27 | 28 | extension/ezodf 29 | 30 | OpenOffice.org export 31 | OpenOffice.org export 32 | 33 | 34 | Export eZ Publish content to OpenOffice.org 35 | Exportovat obsah eZ Publish do OpenOffice.org 36 | 37 | 38 | Error 39 | Chyba 40 | 41 | 42 | Here you can export any eZ Publish content object to an OpenOffice.org Writer document format. 43 | Zde můžete exportovat jakýkoli předmět obsahu eZ Publish do formátu dokumentu OpenOffice.org Writer. 44 | 45 | 46 | Export Object 47 | Exportovat Předmět 48 | 49 | 50 | Document is now imported 51 | Dokument je nyní importovaný 52 | 53 | 54 | OpenOffice.org import 55 | Import OpenOffice.org 56 | 57 | 58 | The object was imported as: %class_name 59 | Předmět byl importovaný jako: %class_name 60 | 61 | 62 | Document imported as 63 | Dokument importovaný jako 64 | 65 | 66 | The images are placed in the media library and can be re-used. 67 | Obrázky jsou vkládány do mediální knihovny a mohou býti znovu použity. 68 | 69 | 70 | Import another document 71 | Importovat další dokument 72 | 73 | 74 | Upload file 75 | Nahrát soubor 76 | 77 | 78 | Import OpenOffice.org document 79 | Importovat OpenOffice.org dokument 80 | 81 | 82 | Replace document 83 | Nahradit dokument 84 | 85 | 86 | Import to 87 | Importovat do 88 | 89 | 90 | You can import OpenOffice.org Writer documents directly into eZ Publish from this page. You are 91 | asked where to place the document and eZ Publish does the rest. The document is converted into 92 | the appropriate class during the import, you get a notice about this after the import is done. 93 | Images are placed in the media library so you can re-use them in other articles. 94 | Můžete importovat dokumenty OpenOffice.org Writer přímo do eZ Publish z této stránky. Jste optáni kam umístit dokument a eZ Publish se postará o zbytek. Dokument je převeden do odpovídající třídy během importu, poté co je import hotový, obdržíte o tom zprávu. Obrázky jsou umístěny v mediální knihovně, tudíž je můžete znovu použít v dalších článcích. 95 | 96 | 97 | The imported document is waiting for an approbation to be published. 98 | 99 | 100 | 101 | Import document 102 | 103 | 104 | 105 | 106 | extension/ezodf/browse 107 | 108 | Choose document placement 109 | Vybrat umístění dokumentu 110 | 111 | 112 | Please choose the placement for the OpenOffice.org object. 113 | 114 | Select the placements and click the %buttonname button. 115 | Using the recent and bookmark items for quick placement is also possible. 116 | Click on placement names to change the browse listing. 117 | Prosím vyberte umístění pro předmět OpenOffice.org. 118 | Vyberte umístění a klikněte na %buttonname tlačítko. 119 | Pro rychlé umístění je také možné použít již zmíněné a záložky 120 | Klikněte na uspořádání jmen pro změnu prohlížení seznamu. 121 | 122 | 123 | 124 | Select 125 | Vybrat 126 | 127 | 128 | 129 | extension/ezodf/export/error 130 | 131 | Destination file format not supported 132 | Není podporován cílový formát souboru 133 | 134 | 135 | 136 | PDF conversion failed 137 | PDF konverze selhala 138 | 139 | 140 | Word conversion failed 141 | Word konverze selhala 142 | 143 | 144 | Unable to fetch node, or no read access 145 | Není možné dosáhnout uzlu nebo přečíst přístup 146 | 147 | 148 | Unable to open file %1 on server side 149 | Není možné otevřít file %1 na straně serveru 150 | 151 | 152 | 153 | extension/ezodf/import/error 154 | 155 | File extension or type is not allowed. 156 | Není povolen typ nebo přípona souboru. 157 | 158 | 159 | Could not parse XML. 160 | Není možné analyzovat XML. 161 | 162 | 163 | Can not open socket. Please check if extension/ezodf/daemon.php is running. 164 | Nemůže otevřít port. Prosím zkontrolujte, zda funguje extension/ezodf/daemon.php. 165 | 166 | 167 | Can not convert the given document. 168 | Nemůže konvertovat daný dokument. 169 | 170 | 171 | Unable to call daemon. Fork can not create child process. 172 | Není možné se spojit s daemon. Fork nemůže vytvořit podřízený proces. 173 | 174 | 175 | Daemon reported error. 176 | Daemon nahlásil chybu. 177 | 178 | 179 | Unknown node. 180 | Neznámý uzel. 181 | 182 | 183 | Access denied. 184 | Přístup odmítnut. 185 | 186 | 187 | Error during import. 188 | Chyba během importu. 189 | 190 | 191 | Unknown content class specified in odf.ini: 192 | Neznámá kvalita obsahu specifikovaná v odf. ini: 193 | 194 | 195 | Unknown error. 196 | Neznámá chyba. 197 | 198 | 199 | Filetype: 200 | Tip souboru: 201 | 202 | 203 | Folder for images could not be created, access denied. 204 | Složka pro obrázky nemůže být vytvořena, přístup byl odmítnut. 205 | 206 | 207 | Document is not supported. 208 | Dokument není podporován. 209 | 210 | 211 | Cannot import. File not found. Already imported? 212 | Nemůže importovat. Soubor nenalezen. Již importováno? 213 | 214 | 215 | Cannot import document, supplied placement nodeID is not valid. 216 | Nemůže importovat dokument, podporované umístění uzluID není platné. 217 | 218 | 219 | Cannot store uploaded file, cannot import. 220 | Nemůže uložit nahraný soubor, nemůže importovat. 221 | 222 | 223 | Unable to fetch node with id 224 | 225 | 226 | 227 | 228 | extension/ezodf/popupmenu 229 | 230 | OpenOffice.org 231 | OpenOffice.org 232 | 233 | 234 | Export OpenOffice 235 | Exportovat OpenOffice 236 | 237 | 238 | Export PDF 239 | Exportovat PDF 240 | 241 | 242 | Export Word 243 | Exportovat Word 244 | 245 | 246 | Import OpenOffice 247 | Importovat OpenOffice 248 | 249 | 250 | Replace OpenOffice 251 | Naradit OpenOffice 252 | 253 | 254 | 255 | --------------------------------------------------------------------------------