Skip to content

Commit

Permalink
version 1.1.8
Browse files Browse the repository at this point in the history
  • Loading branch information
packeta-user committed May 11, 2020
1 parent eb323e0 commit dba0b05
Show file tree
Hide file tree
Showing 32 changed files with 4,077 additions and 2,452 deletions.
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.gitattributes export-ignore
.gitignore export-ignore
*README.md export-ignore
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.idea
234 changes: 165 additions & 69 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,69 +1,165 @@
<h1>Modul pro VirtueMart 3</h1>
<h2>Instalace</h2>
<ol style="color: black; ">
<li>
<ul>
<li><a href="https://github.com/Zasilkovna/virtuemart3/archive/master.zip">Stáhnout soubor modulu »</a></li>
<li>V případě, že používáte modul One Page Checkout od VirtuePlanet <a href="https://github.com/Zasilkovna/virtuemart3/archive/VirtuePlanetOPC.zip">upravenou verzi stáhnete zde »</a></li>
</ul>
</li>
<li>Modul vyžaduje minimálně verzi <b>Joomla 3.0</b> a <b>VirtueMart 3.0.x</b>. Máte-li starší, napište nám prosím používanou verzi a adresu e-shopu na <a href="mailto:technicka.podpora@zasilkovna.cz">technicka.podpora@zasilkovna.cz</a>.</li>
<li>
Přihlašte se do administrace Joomly, otevřete nabídku Extensions -> Extension manager a nahrajte nainstalujte modul<br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033047/5410b934-39c4-11e5-8335-ba934bc9cf7c.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033047/5410b934-39c4-11e5-8335-ba934bc9cf7c.png"></a><br><br>
</li>
<li>
Mělo by se zobrazit hlášení o úspěšné instalaci. Nyní je potřeba modul povolit.<br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033152/11e93936-39c5-11e5-976c-d65d15f0b644.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033152/11e93936-39c5-11e5-976c-d65d15f0b644.png"></a>
<br><br>
</li>
<li>
Nastavení hesla API, názvu obchodu, dobírky a další se provede na stránce <b>Components – VirtueMart – Configuration – ZASILKOVNA</b> v panelu Config. Váše heslo API najdete ve své klientské sekci, pod <strong><em>Můj účet</em></strong><br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033470/8035128c-39c7-11e5-81c1-f88fa906f5ad.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033470/8035128c-39c7-11e5-81c1-f88fa906f5ad.png"></a><br><br>
</li>
<li>
Po nastavení hesla API je potřeba přidat dopravní metody. V <b>Components – VirtueMart – Shop – Shipment Methods</b> přidejte novou dopravní metodu a vyberte <b>Shipment method: Zasilkovna VM3</b><br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033592/f5afc4b6-39c8-11e5-8415-7778fd07601b.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033592/f5afc4b6-39c8-11e5-8415-7778fd07601b.png"></a><br><br>
</li>
<li>
U dopravní metody je ještě potřeba <b>nastavit cenu, daň a cílovou zemi</b> (pokud chcete povolit všechny země, žádnou nevybírejte). Nastavení provedete rozkliknutím dopravní metody v panelu <b>Configuration</b><br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033594/f781f296-39c8-11e5-837d-d929255e1653.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033594/f781f296-39c8-11e5-837d-d929255e1653.png"></a><br><br>
</li>
<li>
Nyní by měla být zásilkovna nabízena jako další možnost dopravy. <br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033596/f96466b6-39c8-11e5-91c2-deffb26fa703.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033596/f96466b6-39c8-11e5-91c2-deffb26fa703.png"></a><br><br>
</li>
<li>
Pokud si přejete <b>omezit některé kombinace doprava-platba</b>, postupujte dle návodu v nastavení modulu (Components - VirtueMart - Configuration - ZASILKOVNA) panel Config dole. Poté můžete v tabulce zaškrtat povolené kombinace.<br><br>
</li>
<li>
Dále až budete mít nějaké objednávky se způsobem dopravy Zásilkovna, můžete je automaticky podat do systému Zásilkovny, vytisknout štítky nebo exportovat do CSV. To vše se provede v nastavení modulu (Components - VirtueMart - Configuration - ZASILKOVNA) panelu <b>EXPORT</b><br><br>
<a href="https://cloud.githubusercontent.com/assets/11771520/9033598/fb3b509e-39c8-11e5-952a-5f400c8ba3d4.png"><img src="https://cloud.githubusercontent.com/assets/11771520/9033598/fb3b509e-39c8-11e5-952a-5f400c8ba3d4.png"></a><br><br>
</li>
</ol>
<h2>Informace o modulu</h2>
<p>Podporované verze:</p>
<ul>
<li>VirtueMart 3.0.x a novější</li>
<li>Joomla! 3.0 a novější</li>
<li>Při problému s použitím v jiné verzi nás kontaktujte na adrese <a href="mailto:technicka.podpora@zasilkovna.cz">technicka.podpora@zasilkovna.cz</a></li>
</ul>
<p>Poskytované funkce:</p>
<ul>
<li>Instalace typu dopravního modulu Zásilkovna
<ul>
<li>možnost rozlišení ceny dle cílové země</li>
<li>volba typu zobrazení stejná jako v <a href="http://www.zasilkovna.cz/pristup-k-pobockam/pruvodce">průvodci vložením poboček (JS API)</a></li>
<li>vybraná pobočka se zobrazuje v detailu objednávky v uživatelské (front-office) i administrátorské (back-office) sekci</li>
</ul>
</li>
<li>Možnost exportu souboru s objednávkami
<ul>
<li>možnost označit objednávky, export CSV souboru pro hromadné podání zásilek</li>
<li>vyznačení již exportovaných objednávek</li>
<li>automatické a manuální označení dobírek</li>
</ul>
</li>
<li>Možnost přímého podání do systému Zásilkovna a tisku štítků</li>
<li>Možnost zakázání některých kombinací doprava-platba</li>
</ul>
[Návod v češtině](https://github.com/Zasilkovna/virtuemart3#modul-pro-virtuemart-3-+-joomla-3)

# Module for VirtueMart 3 + Joomla 3

### Download module

[Actual version 1.1.8]

### Installation

The current version of the module is available on the github in the repository https://github.com/Zasilkovna/virtuemart3.
To download the module directly as a zip package, click the button **Clone or download** and choose an option **Download ZIP**.

To install the plug-in, you need to do the following:

- log in to Joomla administration (usually at {domain} / administrator)
- in the top menu, select ** Extensions / Manage / Install **
- in the tab **Upload Package File** drag the installation package to the marked section, or click **Or Browse for file** and select the installation package file

### Plugin configuration

#### Basic configuration

- In the Joomla administration, select in the top menu **VirtueMart** / **Configuration**.
- Select in the left menu **CONFIGURATION** / **PACKETA**.
- Go to the ** Configuration ** tab.
- Fill in **API key** which you can find in the [client section] (https://client.packeta.com/cs/support/) » Client support.
- Enter ** E-shop ID ** - the sender name you have set in the client section of your [sender] (https://client.packeta.com/cs/senders/).


##### General rules

- **default price** - the shipping price applies if the country-specific default price is not filled
- **Maximum weight** - for orders with a larger weight, the Packeta shipping method will not be offered in the cart
- **free shipping** - if the order price is higher, free shipping

#### Configuring Weighting Rules and Pricing

Pro každou podporovanou zemi je možné nastavit:
- ** default price ** - the price will be applied if you do not fill in the pricing rules, or the order weight exceeds the set weighting rules for a particular country
- ** free shipping ** - if the order price is higher, free shipping
- ** Weight rules ** - click ** Add ** to set prices for different order weights. To cancel the weight rule, click the ** Remove ** button

Save the configuration with the ** Save ** button in the upper left corner of the page.
Next, select ** VirtueMart ** / ** Shipment Methods ** in the top menu and add a new shipping method. The added method must have ** Shipment Method ** set to ** VM3 Mail **

#### List of orders

- In the Joomla administration, select the item in the top menu **VirtueMart** / **Configuration**.
- Select in the left menu **CONFIGURATION** / **PACKETA**.
- Go to the ** Orders ** tab.
- To export shipments, check the checkbox in the first column of the order and then click the ** CSV ** button (when exporting to a csv file) or the ** Submit Shipments ** button (in case of direct submission).

- Export shipments to CSV file:
- Mark orders (by checkbox) that you want to export to CSV file.
- Above the list of orders, click the ** CSV ** button to save the file.

- Direct submission (via API):
- Mark orders (checkbox) that you want to send to the Packeta.
- Above the list of orders, click the ** Submit Shipments ** button.
- To print labels, check the checkbox in the ** Print Labels ** column of the order, then click the ** Print Labels ** button above the order list.

### Module information

#### Supported languages:

- czech
- english

#### Supported versions:

- VirtueMart 3 + Joomla 3
- If you have trouble using the module, please contact us at [technicka.podpora@zasilkovna.cz](mailto:technicka.podpora@zasilkovna.cz)

#### Functions provided:

- Widget integration in eshop cart
- Set different prices for different target countries
- Setting prices according to weight rules
- Free shipping from the specified price or weight of the order
- Export shipments to csv file, which can be imported in [client section](https://client.packeta.com/)
- Přímé podání zásilek do systému Zásilkovny a tisk štítků
- Direct orders submission to the Packeta system and labels printing


# Modul pro VirtueMart 3 + Joomla 3

### Stažení modulu

[Aktuální verze 1.1.8]

### Instalace

Aktuální verze modulu je dostupná na githubu v repository https://github.com/Zasilkovna/virtuemart3.
Pro přímé stažení modulu jako zip balíčku je potřeba kliknout na tlačítko **Clone or download** a zvolit možnost **Download ZIP**.

Pro instalaci plug-inu je potřeba provést následující kroky:

- přihlašte se do administrace systému Joomla (obvykle na adrese {doména}/administrator)
- v horním menu vyberte položku **Rozšíření / Spravovat / Instalovat**
- v záložce **Upload Package File** přetáhněte instalační balíček do vyznačené části, nebo klikněte na tlačítko **Or Browse for file** a vyberte soubor s instalačním balíčkem

### Konfigurace plug-inu

#### Základní konfigurace

- V administraci systému Joomla vyberte v horním menu položku **VirtueMart** / **Configuration**.
- V levém menu vyberte položku **CONFIGURATION** / **PACKETA**.
- Přejděte na záložku **Konfigurace**.
- Vyplňte **API klíč** který naleznete v [klientské sekci](https://client.packeta.com/cs/support/) » Klientská podpora.
- Zadejte **Identifikátor eshopu** - označení odesílatele které máte nastaveno v klientské sekci u vašeho [odesílatele](https://client.packeta.com/cs/senders/).


##### Obecná pravidla

- **Výchozí cena** - cena za přepravu se použije v případě, že není vyplněna výchozí cena u konkrétní země
- **Maximální váha** - u objednávek s větší hmotnostní nebude v košíku přepravní metoda Zásilkovna nabízena
- **Doprava zdarma** - pokud bude cena objednávky vyšší bude doprava zdarma

#### Konfigurace váhových pravidel a cen

Pro každou podporovanou zemi je možné nastavit:
- **Výchozí cena** - cena se použije pokud nevyplníte cenová pravidla, nebo hmotnost objednávky přesáhne nastavená váhová pravidla pro konkrétní zemi
- **Doprava zdarma** - pokud bude cena objednávky vyšší bude doprava zdarma
- **Váhová pravidla** - kliknutím na tlačítko **Přidat** můžete nastavit ceny pro různé váhy objednávky. Pro zrušení váhového pravidla klikněte na tlačítko **Odebrat**

Konfiguraci uložte tlačítkem **Save** v levém horním rohu stránky.
Dále je potřeba zvolit v horním menu položku **VirtueMart** / **Shipment Methods** a přidat novou metodu dopravy. Přidaná metoda musí mít parametr **Shipment Method** nastavený na **Zasilkovna VM3**

#### Seznam objednávek

- V administraci systému Joomla vyberte v horním menu položku **VirtueMart** / **Configuration**.
- V levém menu vyberte položku **CONFIGURATION** / **PACKETA**.
- Přejděte na záložku **Objednávky**.
- Pro export zásilek je potřeba zaškrtnout checkbox v prvním sloupci u objednávky a poté kliknout na tlačítko **CSV** (při exportu do csv souboru) nebo na tlačítko **Podat zásilky** (v případě přímého podání).

- Export zásilek do CSV souboru:
- Označte objednávky (zaškrtnutím checkboxu) které chcete exportovat do CSV souboru.
- Nad seznamem objednávek naleznete klikněte na tlačítko **CSV** a soubor uložte.

- Přímé podání zásilek (přes API):
- Označte objednávky (zaškrtnutím checkboxu) které chcete odeslat do Zásilkovny.
- Nad seznamem objednávek naleznete klikněte na tlačítko **Podat zásilky**.
- Pro tisk šítků je zaškrtněte checkbox ve sloupci **Tisk štítků** u příslušné objednávky a poté klikněte na tlačítko **Vytisknout štítky** nad seznamem objednávek.

### Informace o modulu

#### Podporované jazyky:

- čeština
- angličtina

#### Podporované verze:

- VirtueMart 3 + Joomla 3
- Při problému s použitím modulu nás kontaktujte na adrese [technicka.podpora@zasilkovna.cz](mailto:technicka.podpora@zasilkovna.cz)

#### Poskytované funkce:

- Integrace widgetu v košíku eshopu
- Nastavení různé ceny pro různé cílové země
- Nastavení cen podle váhových pravidel
- Doprava zdarma od zadané ceny nebo hmotnosti objednávky
- Export zásilek do csv souboru, který lze importovat v [klientské sekci](https://client.packeta.com/)
- Přímé podání zásilek do systému Zásilkovny a tisk štítků
54 changes: 43 additions & 11 deletions install.zasilkovna.php
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,16 @@ public function preflight($route, JAdapterInstance $adapter) {

}

function endsWith($haystack, $needle)
{
$length = strlen($needle);
if ($length == 0) {
return true;
}

return (substr($haystack, -$length) === $needle);
}

/**
* Called after any type of action
*
Expand All @@ -80,14 +90,16 @@ public function postflight($route, JAdapterInstance $adapter) {
$media_path = JPATH_ROOT . DS . 'media' . DS . 'com_zasilkovna' . DS;
recurse_copy($media_path . 'admin' . DS . 'com_virtuemart' . DS, $vm_admin_path . DS);

$db =& JFactory::getDBO();
$q = "SELECT DISTINCT element FROM `#__extensions` WHERE `type` = 'language' AND `element` IN ('en-GB','cs-CZ','sk-SK')";
$db->setQuery($q);

while($obj = $db->loadNextObject()) {
$langCode = $obj->element;
recurse_copy($media_path . 'admin' . DS . $langCode . '.plg_vmshipment_zasilkovna.ini', JPATH_ADMINISTRATOR . DS . 'language' . DS . $langCode . DS . $langCode . '.plg_vmshipment_zasilkovna.ini');
}
$files = scandir($media_path . 'admin' . DS);
foreach ($files as $index => $filename){
if ($this->endsWith($filename, '.ini')){
$locale = explode('.',$filename)[0];
if (file_exists(JPATH_ADMINISTRATOR . DS . 'language' . DS . $locale))
{
recurse_copy($media_path . 'admin' . DS . $filename, JPATH_ADMINISTRATOR . DS . 'language' . DS . $locale . DS . $filename);
}
}
}

$db =& JFactory::getDBO();
$q = "CREATE TABLE IF NOT EXISTS #__virtuemart_zasilkovna_branches (
Expand Down Expand Up @@ -119,6 +131,7 @@ public function postflight($route, JAdapterInstance $adapter) {
`virtuemart_country_id` varchar(255) DEFAULT NULL,
`adult_content` smallint(1) DEFAULT '0',
`is_cod` smallint(1) DEFAULT NULL,
`packet_cod` decimal(15,2) DEFAULT '0',
`exported` smallint(1) DEFAULT NULL,
`printed_label` smallint(1) DEFAULT '0',
`shipment_name` varchar(5000) DEFAULT NULL,
Expand All @@ -136,7 +149,8 @@ public function postflight($route, JAdapterInstance $adapter) {
$db->setQuery($q);
$db->query();

$q = "INSERT INTO #__virtuemart_adminmenuentries (`module_id`, `parent_id`, `name`, `link`, `depends`, `icon_class`, `ordering`, `published`, `tooltip`, `view`, `task`) VALUES
$q = "
INSERT INTO #__virtuemart_adminmenuentries (`module_id`, `parent_id`, `name`, `link`, `depends`, `icon_class`, `ordering`, `published`, `tooltip`, `view`, `task`) VALUES
(5, 0, 'ZASILKOVNA', '', '', 'vmicon vmicon-16-zasilkovna', 1, 1, '', 'zasilkovna', '');";
$db->setQuery($q);
$db->query();
Expand All @@ -163,6 +177,21 @@ public function install(JAdapterInstance $adapter) {
* @return boolean True on success
*/
public function update(JAdapterInstance $adapter) {
// update of admin part of module
$vm_admin_path = JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_virtuemart';
$media_path = JPATH_ROOT . DS . 'media' . DS . 'com_zasilkovna' . DS;
recurse_copy($media_path . 'admin' . DS . 'com_virtuemart' . DS, $vm_admin_path . DS);

$files = scandir($media_path . 'admin' . DS);
foreach ($files as $index => $filename){
if ($this->endsWith($filename, '.ini')){
$locale = explode('.',$filename)[0];
if (file_exists(JPATH_ADMINISTRATOR . DS . 'language' . DS . $locale))
{
recurse_copy($media_path . 'admin' . DS . $filename, JPATH_ADMINISTRATOR . DS . 'language' . DS . $locale . DS . $filename);
}
}
}

}

Expand All @@ -183,8 +212,11 @@ public function uninstall(JAdapterInstance $adapter) {
recurse_delete($vm_admin_path . DS . 'views' . DS . 'zasilkovna' . DS);
recurse_delete($vm_admin_path . DS . 'controllers' . DS . 'zasilkovna.php');
recurse_delete(JPATH_ADMINISTRATOR . DS . 'language' . DS . 'en-GB' . DS . 'en-GB.plg_vmshipment_zasilkovna.ini');


recurse_delete(JPATH_ADMINISTRATOR . DS . 'language' . DS . 'cs-CZ' . DS . 'cs-CZ.plg_vmshipment_zasilkovna.ini');
recurse_delete(JPATH_ADMINISTRATOR . DS . 'language' . DS . 'sk-SK' . DS . 'sk-SK.plg_vmshipment_zasilkovna.ini');
recurse_delete(JPATH_ADMINISTRATOR . DS . 'language' . DS . 'pl-PL' . DS . 'pl-PL.plg_vmshipment_zasilkovna.ini');
recurse_delete(JPATH_ADMINISTRATOR . DS . 'language' . DS . 'hu-HU' . DS . 'hu-HU.plg_vmshipment_zasilkovna.ini');
recurse_delete(JPATH_ADMINISTRATOR . DS . 'language' . DS . 'ro-RO' . DS . 'ro-RO.plg_vmshipment_zasilkovna.ini');
}

}
Expand Down
Loading

0 comments on commit dba0b05

Please sign in to comment.