Export notification

This commit is contained in:
Christoph Haas 2016-11-29 18:35:36 +01:00
parent b10415a3fe
commit 984c552ef1
7 changed files with 108 additions and 153 deletions

View File

@ -2,8 +2,9 @@
<project version="4"> <project version="4">
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="aae153d8-808f-4371-b0e9-9ee7ff904cab" name="Default" comment=""> <list default="true" id="aae153d8-808f-4371-b0e9-9ee7ff904cab" name="Default" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/Makefile" afterPath="$PROJECT_DIR$/Makefile" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/build.xml" afterPath="$PROJECT_DIR$/build.xml" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/plugin.contactimporter.js" afterPath="$PROJECT_DIR$/js/plugin.contactimporter.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/js/ui/ContextMenu.js" afterPath="$PROJECT_DIR$/js/ui/ContextMenu.js" />
</list> </list>
<ignored path="contactimporter.iws" /> <ignored path="contactimporter.iws" />
<ignored path=".idea/workspace.xml" /> <ignored path=".idea/workspace.xml" />
@ -24,108 +25,31 @@
</component> </component>
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf> <leaf>
<file leaf-file-name="ContextMenu.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/js/ui/ContextMenu.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="159">
<caret line="101" column="8" selection-start-line="101" selection-start-column="8" selection-end-line="104" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="plugin.contactimporter.js" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/js/plugin.contactimporter.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="525">
<caret line="80" column="0" selection-start-line="80" selection-start-column="0" selection-end-line="80" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ImportPanel.js" pinned="false" current-in-tab="false"> <file leaf-file-name="ImportPanel.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/js/dialogs/ImportPanel.js"> <entry file="file://$PROJECT_DIR$/js/dialogs/ImportPanel.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="15"> <state relative-caret-position="570">
<caret line="1" column="17" selection-start-line="1" selection-start-column="17" selection-end-line="1" selection-end-column="59" /> <caret line="581" column="8" selection-start-line="581" selection-start-column="8" selection-end-line="583" selection-end-column="8" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ResponseHandler.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/js/data/ResponseHandler.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1200">
<caret line="80" column="13" selection-start-line="80" selection-start-column="8" selection-end-line="80" selection-end-column="13" />
<folding>
<element signature="n#!!doc" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="download.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/php/download.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-225">
<caret line="3" column="15" selection-start-line="3" selection-start-column="15" selection-end-line="3" selection-end-column="57" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="module.contact.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/php/module.contact.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-16319">
<caret line="25" column="0" selection-start-line="25" selection-start-column="0" selection-end-line="25" selection-end-column="0" />
<folding>
<element signature="e#6#919#0#PHP" expanded="true" />
<element signature="e#959#992#0#PHP" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="plugin.contactimporter.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/php/plugin.contactimporter.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="675">
<caret line="84" column="83" selection-start-line="84" selection-start-column="83" selection-end-line="84" selection-end-column="83" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="upload.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/php/upload.php">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="780">
<caret line="72" column="1" selection-start-line="72" selection-start-column="1" selection-end-line="72" selection-end-column="1" />
<folding>
<element signature="e#6#911#0#PHP" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="plugin_calendarimporter.po" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/languages/en_US.UTF-8/LC_MESSAGES/plugin_calendarimporter.po">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="build.xml" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/build.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="165">
<caret line="167" column="18" selection-start-line="167" selection-start-column="18" selection-end-line="167" selection-end-column="18" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="manifest.xml" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/manifest.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ImportContentPanel.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/js/dialogs/ImportContentPanel.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="474">
<caret line="44" column="20" selection-start-line="44" selection-start-column="20" selection-end-line="44" selection-end-column="55" />
<folding> <folding>
<element signature="n#!!doc" expanded="true" /> <element signature="n#!!doc" expanded="true" />
</folding> </folding>
@ -145,14 +69,14 @@
<option value="$PROJECT_DIR$/php/module.contact.php" /> <option value="$PROJECT_DIR$/php/module.contact.php" />
<option value="$PROJECT_DIR$/php/plugin.contactimporter.php" /> <option value="$PROJECT_DIR$/php/plugin.contactimporter.php" />
<option value="$PROJECT_DIR$/config.php" /> <option value="$PROJECT_DIR$/config.php" />
<option value="$PROJECT_DIR$/js/plugin.contactimporter.js" />
<option value="$PROJECT_DIR$/js/ABOUT.js" /> <option value="$PROJECT_DIR$/js/ABOUT.js" />
<option value="$PROJECT_DIR$/js/ui/ContextMenu.js" />
<option value="$PROJECT_DIR$/js/dialogs/ImportContentPanel.js" /> <option value="$PROJECT_DIR$/js/dialogs/ImportContentPanel.js" />
<option value="$PROJECT_DIR$/js/dialogs/ImportPanel.js" /> <option value="$PROJECT_DIR$/js/dialogs/ImportPanel.js" />
<option value="$PROJECT_DIR$/js/data/ResponseHandler.js" /> <option value="$PROJECT_DIR$/js/data/ResponseHandler.js" />
<option value="$PROJECT_DIR$/php/upload.php" /> <option value="$PROJECT_DIR$/php/upload.php" />
<option value="$PROJECT_DIR$/build.xml" /> <option value="$PROJECT_DIR$/build.xml" />
<option value="$PROJECT_DIR$/js/ui/ContextMenu.js" />
<option value="$PROJECT_DIR$/js/plugin.contactimporter.js" />
</list> </list>
</option> </option>
</component> </component>
@ -422,18 +346,18 @@
<updated>1480428196914</updated> <updated>1480428196914</updated>
<workItem from="1480428199144" duration="44000" /> <workItem from="1480428199144" duration="44000" />
<workItem from="1480428259775" duration="69000" /> <workItem from="1480428259775" duration="69000" />
<workItem from="1480428330068" duration="5601000" /> <workItem from="1480428330068" duration="6335000" />
</task> </task>
<servers /> <servers />
</component> </component>
<component name="TimeTrackingManager"> <component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="5714000" /> <option name="totallyTimeSpent" value="6448000" />
</component> </component>
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="65" y="24" width="1792" height="999" extended-state="6" /> <frame x="65" y="24" width="1792" height="999" extended-state="7" />
<editor active="false" /> <editor active="true" />
<layout> <layout>
<window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
@ -505,14 +429,6 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/js/plugin.contactimporter.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="585">
<caret line="138" column="53" selection-start-line="138" selection-start-column="18" selection-end-line="138" selection-end-column="53" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/js/dialogs/fields.txt"> <entry file="file://$PROJECT_DIR$/js/dialogs/fields.txt">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-3900"> <state relative-caret-position="-3900">
@ -521,14 +437,6 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/js/ui/ContextMenu.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="660">
<caret line="65" column="53" selection-start-line="65" selection-start-column="18" selection-end-line="65" selection-end-column="53" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/js/dialogs/ImportContentPanel.js"> <entry file="file://$PROJECT_DIR$/js/dialogs/ImportContentPanel.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="474"> <state relative-caret-position="474">
@ -539,14 +447,6 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/js/dialogs/ImportPanel.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="15">
<caret line="1" column="17" selection-start-line="1" selection-start-column="17" selection-end-line="1" selection-end-column="59" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/js/data/ResponseHandler.js"> <entry file="file://$PROJECT_DIR$/js/data/ResponseHandler.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1200"> <state relative-caret-position="1200">
@ -589,7 +489,7 @@
<state relative-caret-position="780"> <state relative-caret-position="780">
<caret line="72" column="1" selection-start-line="72" selection-start-column="1" selection-end-line="72" selection-end-column="1" /> <caret line="72" column="1" selection-start-line="72" selection-start-column="1" selection-end-line="72" selection-end-column="1" />
<folding> <folding>
<element signature="e#6#911#0#PHP" expanded="true" /> <element signature="e#6#911#0#PHP" expanded="false" />
</folding> </folding>
</state> </state>
</provider> </provider>
@ -618,6 +518,32 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/js/dialogs/ImportPanel.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="570">
<caret line="581" column="8" selection-start-line="581" selection-start-column="8" selection-end-line="583" selection-end-column="8" />
<folding>
<element signature="n#!!doc" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/js/ui/ContextMenu.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="159">
<caret line="101" column="8" selection-start-line="101" selection-start-column="8" selection-end-line="104" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/js/plugin.contactimporter.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="525">
<caret line="80" column="0" selection-start-line="80" selection-start-column="0" selection-end-line="80" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</component> </component>
<component name="masterDetails"> <component name="masterDetails">
<states> <states>

View File

@ -88,6 +88,11 @@ Zarafa.plugins.contactimporter.ImportPlugin = Ext.extend(Zarafa.core.Plugin, {
scope: this scope: this
}); });
// Notify user
// # TRANSLATORS: {0} will be replaced by the number of contacts that will be exported
container.getNotifier().notify('info', dgettext('plugin_contactimporter', 'Contact Export'), String.format(dgettext('plugin_contactimporter', 'Exporting {0} contacts. Please wait...'), recordIds.length));
// request attachment preperation // request attachment preperation
container.getRequest().singleRequest( container.getRequest().singleRequest(
'contactmodule', 'contactmodule',

View File

@ -99,6 +99,10 @@ Zarafa.plugins.contactimporter.ui.ContextMenu = Ext.extend(Zarafa.hierarchy.ui.C
scope: this scope: this
}); });
// Notify user
// # TRANSLATORS: {0} will be replaced by the number of contacts that will be exported
container.getNotifier().notify('info', dgettext('plugin_contactimporter', 'Contact Export'), String.format(dgettext('plugin_contactimporter', 'Exporting {0} contacts. Please wait...'), this.records.get('content_count')));
// request attachment preperation // request attachment preperation
container.getRequest().singleRequest( container.getRequest().singleRequest(
'contactmodule', 'contactmodule',

View File

@ -1,8 +1,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Plugin Contactimporter\n" "Project-Id-Version: Plugin Contactimporter\n"
"POT-Creation-Date: 2016-11-29 15:59+0100\n" "POT-Creation-Date: 2016-11-29 18:35+0100\n"
"PO-Revision-Date: 2016-11-29 15:59+0100\n" "PO-Revision-Date: 2016-11-29 18:35+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Christoph Haas <christoph.h@sprinternet.at>\n" "Language-Team: Christoph Haas <christoph.h@sprinternet.at>\n"
"Language: de\n" "Language: de\n"
@ -70,7 +70,7 @@ msgstr "Kontakte werden hochgeladen und verarbeitet..."
#: js/dialogs/ImportPanel.js:432 js/dialogs/ImportPanel.js:531 #: js/dialogs/ImportPanel.js:432 js/dialogs/ImportPanel.js:531
#: js/dialogs/ImportPanel.js:539 js/dialogs/ImportPanel.js:586 #: js/dialogs/ImportPanel.js:539 js/dialogs/ImportPanel.js:586
#: js/plugin.contactimporter.js:164 #: js/plugin.contactimporter.js:169
msgid "Error" msgid "Error"
msgstr "Fehler" msgstr "Fehler"
@ -104,32 +104,42 @@ msgstr "Importieren fehlgeschlagen: {0}"
msgid "Export vCard" msgid "Export vCard"
msgstr "vCard exportieren" msgstr "vCard exportieren"
#: js/plugin.contactimporter.js:110 js/ui/ContextMenu.js:135 #. TRANSLATORS: {0} will be replaced by the number of contacts that will be exported
#. TRANSLATORS: {0} will be replaced by the number of contacts that will be exported
#: js/plugin.contactimporter.js:93 js/ui/ContextMenu.js:104
msgid "Contact Export"
msgstr "Kontaktexport"
#: js/plugin.contactimporter.js:93 js/ui/ContextMenu.js:104
msgid "Exporting {0} contacts. Please wait..."
msgstr "Exportiere {0} Kontakte. Bitte warten..."
#: js/plugin.contactimporter.js:115 js/ui/ContextMenu.js:139
msgid "Warning" msgid "Warning"
msgstr "Warnung" msgstr "Warnung"
#: js/plugin.contactimporter.js:139 #: js/plugin.contactimporter.js:144
msgid "Import to Contacts" msgid "Import to Contacts"
msgstr "In Kontakte importieren" msgstr "In Kontakte importieren"
#: js/plugin.contactimporter.js:178 #: js/plugin.contactimporter.js:183
msgid "Please wait" msgid "Please wait"
msgstr "Bitte warten" msgstr "Bitte warten"
#: js/plugin.contactimporter.js:179 #: js/plugin.contactimporter.js:184
msgid "Loading attachment..." msgid "Loading attachment..."
msgstr "Lade Anhang..." msgstr "Lade Anhang..."
#: js/plugin.contactimporter.js:180 #: js/plugin.contactimporter.js:185
msgid "Initializing..." msgid "Initializing..."
msgstr "Initialisierung..." msgstr "Initialisierung..."
#. TRANSLATORS: {0} will be replaced by the percentage value (0-100) #. TRANSLATORS: {0} will be replaced by the percentage value (0-100)
#: js/plugin.contactimporter.js:193 #: js/plugin.contactimporter.js:198
msgid "{0}% loaded" msgid "{0}% loaded"
msgstr "{0}% geladen" msgstr "{0}% geladen"
#: js/plugin.contactimporter.js:305 #: js/plugin.contactimporter.js:310
msgid "Contactimporter Plugin" msgid "Contactimporter Plugin"
msgstr "Kontakt Plugin" msgstr "Kontakt Plugin"

View File

@ -1,8 +1,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Plugin Contactimporter\n" "Project-Id-Version: Plugin Contactimporter\n"
"POT-Creation-Date: 2016-11-29 15:47+0100\n" "POT-Creation-Date: 2016-11-29 18:34+0100\n"
"PO-Revision-Date: 2016-11-29 15:47+0100\n" "PO-Revision-Date: 2016-11-29 18:34+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Christoph Haas <christoph.h@sprinternet.at>\n" "Language-Team: Christoph Haas <christoph.h@sprinternet.at>\n"
"Language: en_US\n" "Language: en_US\n"
@ -70,7 +70,7 @@ msgstr "Uploading and parsing contacts..."
#: js/dialogs/ImportPanel.js:432 js/dialogs/ImportPanel.js:531 #: js/dialogs/ImportPanel.js:432 js/dialogs/ImportPanel.js:531
#: js/dialogs/ImportPanel.js:539 js/dialogs/ImportPanel.js:586 #: js/dialogs/ImportPanel.js:539 js/dialogs/ImportPanel.js:586
#: js/plugin.contactimporter.js:164 #: js/plugin.contactimporter.js:169
msgid "Error" msgid "Error"
msgstr "Error" msgstr "Error"
@ -104,32 +104,42 @@ msgstr "Import failed: {0}"
msgid "Export vCard" msgid "Export vCard"
msgstr "Export vCard" msgstr "Export vCard"
#: js/plugin.contactimporter.js:110 js/ui/ContextMenu.js:135 #. TRANSLATORS: {0} will be replaced by the number of contacts that will be exported
#. TRANSLATORS: {0} will be replaced by the number of contacts that will be exported
#: js/plugin.contactimporter.js:93 js/ui/ContextMenu.js:104
msgid "Contact Export"
msgstr "Contact Export"
#: js/plugin.contactimporter.js:93 js/ui/ContextMenu.js:104
msgid "Exporting {0} contacts. Please wait..."
msgstr "Exporting {0} contacts. Please wait..."
#: js/plugin.contactimporter.js:115 js/ui/ContextMenu.js:139
msgid "Warning" msgid "Warning"
msgstr "Warning" msgstr "Warning"
#: js/plugin.contactimporter.js:139 #: js/plugin.contactimporter.js:144
msgid "Import to Contacts" msgid "Import to Contacts"
msgstr "Import to Contacts" msgstr "Import to Contacts"
#: js/plugin.contactimporter.js:178 #: js/plugin.contactimporter.js:183
msgid "Please wait" msgid "Please wait"
msgstr "Please wait" msgstr "Please wait"
#: js/plugin.contactimporter.js:179 #: js/plugin.contactimporter.js:184
msgid "Loading attachment..." msgid "Loading attachment..."
msgstr "Loading attachment..." msgstr "Loading attachment..."
#: js/plugin.contactimporter.js:180 #: js/plugin.contactimporter.js:185
msgid "Initializing..." msgid "Initializing..."
msgstr "Initializing..." msgstr "Initializing..."
#. TRANSLATORS: {0} will be replaced by the percentage value (0-100) #. TRANSLATORS: {0} will be replaced by the percentage value (0-100)
#: js/plugin.contactimporter.js:193 #: js/plugin.contactimporter.js:198
msgid "{0}% loaded" msgid "{0}% loaded"
msgstr "{0}% loaded" msgstr "{0}% loaded"
#: js/plugin.contactimporter.js:305 #: js/plugin.contactimporter.js:310
msgid "Contactimporter Plugin" msgid "Contactimporter Plugin"
msgstr "Contactimporter Plugin" msgstr "Contactimporter Plugin"