Version Notes
No notes
Download this release
Release Info
Developer | Yireo |
Extension | Yireo_Vm2Mage |
Version | 0.10.28 |
Comparing to | |
See all releases |
Code changes from version 0.10.25 to 0.10.28
app/code/community/Yireo/Vm2Mage/Helper/Data.php
CHANGED
@@ -73,9 +73,12 @@ class Yireo_Vm2Mage_Helper_Data extends Mage_Core_Helper_Abstract
|
|
73 |
}
|
74 |
|
75 |
$logfile = self::getDebugLog();
|
76 |
-
|
77 |
-
|
|
|
78 |
}
|
|
|
|
|
79 |
}
|
80 |
|
81 |
/*
|
@@ -132,10 +135,16 @@ class Yireo_Vm2Mage_Helper_Data extends Mage_Core_Helper_Abstract
|
|
132 |
$value = Mage::helper('vm2mage')->decodeString($value);
|
133 |
}
|
134 |
|
|
|
135 |
$name = Mage::helper('vm2mage')->decodeString($name);
|
|
|
136 |
if(!empty($value)) {
|
137 |
$array[$name] = $value;
|
138 |
}
|
|
|
|
|
|
|
|
|
139 |
}
|
140 |
return $array;
|
141 |
}
|
@@ -152,4 +161,38 @@ class Yireo_Vm2Mage_Helper_Data extends Mage_Core_Helper_Abstract
|
|
152 |
|
153 |
return $string;
|
154 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
}
|
73 |
}
|
74 |
|
75 |
$logfile = self::getDebugLog();
|
76 |
+
|
77 |
+
if(!is_writable($logfile)) {
|
78 |
+
throw new Exception('Logfile '.$logfile.' not writable');
|
79 |
}
|
80 |
+
|
81 |
+
file_put_contents($logfile, $string."\n", FILE_APPEND);
|
82 |
}
|
83 |
|
84 |
/*
|
135 |
$value = Mage::helper('vm2mage')->decodeString($value);
|
136 |
}
|
137 |
|
138 |
+
$originalName = $name;
|
139 |
$name = Mage::helper('vm2mage')->decodeString($name);
|
140 |
+
|
141 |
if(!empty($value)) {
|
142 |
$array[$name] = $value;
|
143 |
}
|
144 |
+
|
145 |
+
if ($name != $originalName) {
|
146 |
+
unset($array[$originalName]);
|
147 |
+
}
|
148 |
}
|
149 |
return $array;
|
150 |
}
|
161 |
|
162 |
return $string;
|
163 |
}
|
164 |
+
|
165 |
+
public function getStoreId($data)
|
166 |
+
{
|
167 |
+
if (is_array($data)) {
|
168 |
+
if (!empty($data['store_id'])) {
|
169 |
+
$data = $data['store_id'];
|
170 |
+
} elseif (!empty($data['store'])) {
|
171 |
+
$data = $data['store'];
|
172 |
+
}
|
173 |
+
}
|
174 |
+
|
175 |
+
if (!empty($data) && (is_string($data) || is_numeric($data))) {
|
176 |
+
$store = Mage::getModel('core/store')->load($data);
|
177 |
+
$storeId = $store->getId();
|
178 |
+
if ($storeId > 0) {
|
179 |
+
return $storeId;
|
180 |
+
}
|
181 |
+
}
|
182 |
+
|
183 |
+
return $this->getDefaultWebsite()->getDefaultStore()->getId();
|
184 |
+
}
|
185 |
+
|
186 |
+
public function getDefaultStoreId($data)
|
187 |
+
{
|
188 |
+
$currentStoreId = $this->getStoreId($data);
|
189 |
+
$websiteId = Mage::getModel('core/store')->load($currentStoreId)->getWebsiteId();
|
190 |
+
return Mage::app()->getWebsite($websiteId)->getDefaultGroup()->getDefaultStoreId();
|
191 |
+
}
|
192 |
+
|
193 |
+
public function getDefaultWebsite()
|
194 |
+
{
|
195 |
+
$websites = Mage::app()->getWebsites();
|
196 |
+
return $websites[1];
|
197 |
+
}
|
198 |
}
|
app/code/community/Yireo/Vm2Mage/Helper/Image.php
CHANGED
@@ -44,15 +44,61 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
44 |
Mage::helper('vm2mage')->debug('No download-methods available');
|
45 |
return null;
|
46 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
|
48 |
/*
|
49 |
* Add all remote images to this product
|
50 |
*
|
51 |
* @param Mage_Catalog_Model_Product $product
|
52 |
* @param array $images
|
53 |
-
* @return
|
54 |
*/
|
55 |
-
public function addImages(
|
56 |
{
|
57 |
// Option to renew images or not
|
58 |
$renewImages = (bool)Mage::getStoreConfig('vm2mage/settings/renew_images');
|
@@ -74,64 +120,32 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
74 |
}
|
75 |
|
76 |
// Detect images first
|
77 |
-
$
|
78 |
-
$hasThumbImage = false;
|
79 |
-
if(is_array($images) && !empty($images)) {
|
80 |
-
foreach($images as $image) {
|
81 |
-
if(empty($image['type'])) $image['type'] = null;
|
82 |
-
|
83 |
-
if($image['type'] == 'full_image') $hasFullImage = true;
|
84 |
-
if($image['type'] == 'thumbnail') $hasThumbImage = true;
|
85 |
-
}
|
86 |
-
}
|
87 |
|
88 |
// Loop through the images and create them
|
89 |
$migratedFiles = array();
|
90 |
if(is_array($images) && !empty($images)) {
|
91 |
foreach($images as $image) {
|
92 |
|
93 |
-
if(empty($image['md5sum'])) $image['md5sum'] = null;
|
94 |
-
if(empty($image['label'])) $image['label'] = $product->getName();
|
95 |
-
if(empty($image['file'])) $image['file'] = null;
|
96 |
if(!empty($image['md5sum']) && in_array($image['md5sum'], $migratedFiles)) continue;
|
|
|
97 |
|
98 |
-
$imageTypes =
|
99 |
|
100 |
if(count($images) == 1) {
|
101 |
$imageTypes[] = 'thumbnail';
|
102 |
$imageTypes[] = 'image';
|
103 |
$imageTypes[] = 'small_image';
|
104 |
-
|
105 |
-
} elseif($image['type'] == 'full_image') {
|
106 |
-
$imageTypes[] = 'image';
|
107 |
-
$imageTypes[] = 'small_image';
|
108 |
-
if(count($images) == 1) $imageTypes[] = 'thumbnail';
|
109 |
-
|
110 |
-
} elseif($image['type'] == 'thumb_image') {
|
111 |
-
$imageTypes[] = 'thumbnail';
|
112 |
}
|
113 |
|
114 |
-
if($hasFullImage == false) {
|
115 |
-
$imageTypes[] = 'image';
|
116 |
-
$imageTypes[] = 'small_image';
|
117 |
-
$hasFullImage = true;
|
118 |
-
}
|
119 |
-
|
120 |
-
if($hasThumbImage == false) {
|
121 |
-
$imageTypes[] = 'thumbnail';
|
122 |
-
$hasThumbImage = true;
|
123 |
-
}
|
124 |
-
|
125 |
$imageTypes = array_unique($imageTypes);
|
126 |
|
127 |
$result = self::addLocalImage($product, $image['file'], $image['label'], $imageTypes);
|
128 |
if($result != false) {
|
129 |
-
$product = $result;
|
130 |
$migratedFiles[] = $image['md5sum'];
|
131 |
} elseif(!empty($image['url'])) {
|
132 |
-
$result = self::addRemoteImage($product, $image['url'], $image['md5sum'], $image['
|
133 |
if($result != false) {
|
134 |
-
$product = $result;
|
135 |
$migratedFiles[] = $image['md5sum'];
|
136 |
}
|
137 |
}
|
@@ -141,7 +155,7 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
141 |
// Save the product
|
142 |
$product->save();
|
143 |
|
144 |
-
return
|
145 |
}
|
146 |
|
147 |
/*
|
@@ -150,13 +164,11 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
150 |
* @param Mage_Catalog_Model_Product $product
|
151 |
* @param string $url
|
152 |
* @param string $md5sum
|
153 |
-
* @param string $type
|
154 |
* @param string $label thumb_image|full_image|gallery
|
155 |
-
* @return
|
156 |
*/
|
157 |
-
public function addRemoteImage(
|
158 |
{
|
159 |
-
|
160 |
// Try to create the import-directory it it does not exist
|
161 |
$base_dir = Mage::getBaseDir('media').DS.'import';
|
162 |
if(!is_dir($base_dir)) @mkdir($base_dir);
|
@@ -203,7 +215,7 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
203 |
}
|
204 |
|
205 |
// Return the changed product-object
|
206 |
-
return
|
207 |
}
|
208 |
|
209 |
/*
|
@@ -213,9 +225,9 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
213 |
* @param string $file
|
214 |
* @param string $type
|
215 |
* @param string $label thumb_image|full_image|gallery
|
216 |
-
* @return
|
217 |
*/
|
218 |
-
public function addLocalImage(
|
219 |
{
|
220 |
// Check if local-image-loading is enabled
|
221 |
if(Mage::getStoreConfig('vm2mage/settings/local_images') == 0) {
|
@@ -271,6 +283,6 @@ class Yireo_Vm2Mage_Helper_Image extends Yireo_Vm2Mage_Helper_Data
|
|
271 |
}
|
272 |
|
273 |
// Return the changed product-object
|
274 |
-
return
|
275 |
}
|
276 |
}
|
44 |
Mage::helper('vm2mage')->debug('No download-methods available');
|
45 |
return null;
|
46 |
}
|
47 |
+
|
48 |
+
public function convertImages($images)
|
49 |
+
{
|
50 |
+
if(!is_array($images) || empty($images)) {
|
51 |
+
return $images;
|
52 |
+
}
|
53 |
+
|
54 |
+
$newImages = array();
|
55 |
+
foreach($images as $imageIndex => $image) {
|
56 |
+
|
57 |
+
if(empty($image['file']) && empty($image['url'])) {
|
58 |
+
unset($images[$imageIndex]);
|
59 |
+
continue;
|
60 |
+
}
|
61 |
+
|
62 |
+
if(!isset($image['md5sum'])) $image['md5sum'] = null;
|
63 |
+
if(!isset($image['file'])) $image['file'] = null;
|
64 |
+
if(!isset($image['type'])) $image['type'] = null;
|
65 |
+
if(!isset($image['url'])) $image['url'] = null;
|
66 |
+
if(!isset($image['types'])) $image['types'] = array();
|
67 |
+
|
68 |
+
if($image['type'] == 'full_image') {
|
69 |
+
$image['types'][] = 'image';
|
70 |
+
$image['types'][] = 'small_image';
|
71 |
+
}
|
72 |
+
|
73 |
+
if($image['type'] == 'thumb_image') {
|
74 |
+
$image['types'][] = 'thumbnail';
|
75 |
+
}
|
76 |
+
|
77 |
+
if($image['type'] == 'gallery') {
|
78 |
+
$image['types'][] = 'gallery';
|
79 |
+
}
|
80 |
+
|
81 |
+
unset($image['type']);
|
82 |
+
|
83 |
+
$hash = md5($image['file'].$image['url']);
|
84 |
+
if (!isset($newImages[$hash])) {
|
85 |
+
$newImages[$hash] = $image;
|
86 |
+
} else {
|
87 |
+
$newImages[$hash]['types'] = array_merge($newImages[$hash]['types'], $image['types']);
|
88 |
+
}
|
89 |
+
}
|
90 |
+
|
91 |
+
return $newImages;
|
92 |
+
}
|
93 |
|
94 |
/*
|
95 |
* Add all remote images to this product
|
96 |
*
|
97 |
* @param Mage_Catalog_Model_Product $product
|
98 |
* @param array $images
|
99 |
+
* @return bool
|
100 |
*/
|
101 |
+
public function addImages(&$product = null, $images = null)
|
102 |
{
|
103 |
// Option to renew images or not
|
104 |
$renewImages = (bool)Mage::getStoreConfig('vm2mage/settings/renew_images');
|
120 |
}
|
121 |
|
122 |
// Detect images first
|
123 |
+
$images = $this->convertImages($images);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
124 |
|
125 |
// Loop through the images and create them
|
126 |
$migratedFiles = array();
|
127 |
if(is_array($images) && !empty($images)) {
|
128 |
foreach($images as $image) {
|
129 |
|
|
|
|
|
|
|
130 |
if(!empty($image['md5sum']) && in_array($image['md5sum'], $migratedFiles)) continue;
|
131 |
+
if(empty($image['label'])) $image['label'] = $product->getName();
|
132 |
|
133 |
+
$imageTypes = $image['types'];
|
134 |
|
135 |
if(count($images) == 1) {
|
136 |
$imageTypes[] = 'thumbnail';
|
137 |
$imageTypes[] = 'image';
|
138 |
$imageTypes[] = 'small_image';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
139 |
}
|
140 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
141 |
$imageTypes = array_unique($imageTypes);
|
142 |
|
143 |
$result = self::addLocalImage($product, $image['file'], $image['label'], $imageTypes);
|
144 |
if($result != false) {
|
|
|
145 |
$migratedFiles[] = $image['md5sum'];
|
146 |
} elseif(!empty($image['url'])) {
|
147 |
+
$result = self::addRemoteImage($product, $image['url'], $image['md5sum'], $image['label'], $imageTypes);
|
148 |
if($result != false) {
|
|
|
149 |
$migratedFiles[] = $image['md5sum'];
|
150 |
}
|
151 |
}
|
155 |
// Save the product
|
156 |
$product->save();
|
157 |
|
158 |
+
return true;
|
159 |
}
|
160 |
|
161 |
/*
|
164 |
* @param Mage_Catalog_Model_Product $product
|
165 |
* @param string $url
|
166 |
* @param string $md5sum
|
|
|
167 |
* @param string $label thumb_image|full_image|gallery
|
168 |
+
* @return bool
|
169 |
*/
|
170 |
+
public function addRemoteImage(&$product = null, $url = null, $md5sum = null, $label = null, $types = array())
|
171 |
{
|
|
|
172 |
// Try to create the import-directory it it does not exist
|
173 |
$base_dir = Mage::getBaseDir('media').DS.'import';
|
174 |
if(!is_dir($base_dir)) @mkdir($base_dir);
|
215 |
}
|
216 |
|
217 |
// Return the changed product-object
|
218 |
+
return true;
|
219 |
}
|
220 |
|
221 |
/*
|
225 |
* @param string $file
|
226 |
* @param string $type
|
227 |
* @param string $label thumb_image|full_image|gallery
|
228 |
+
* @return bool
|
229 |
*/
|
230 |
+
public function addLocalImage(&$product = null, $file = null, $label = null, $types = array())
|
231 |
{
|
232 |
// Check if local-image-loading is enabled
|
233 |
if(Mage::getStoreConfig('vm2mage/settings/local_images') == 0) {
|
283 |
}
|
284 |
|
285 |
// Return the changed product-object
|
286 |
+
return true;
|
287 |
}
|
288 |
}
|
app/code/community/Yireo/Vm2Mage/Model/Product/Api.php
CHANGED
@@ -59,9 +59,16 @@ class Yireo_Vm2Mage_Model_Product_Api extends Mage_Catalog_Model_Product_Api
|
|
59 |
// Try to get the productId by looking for the SKU
|
60 |
$sku = $data['sku'];
|
61 |
$productId = Mage::getModel('catalog/product')->getIdBySku($sku);
|
62 |
-
$storeId = (
|
63 |
$taxId = (isset($data['product_tax_id'])) ? $data['product_tax_id'] : 0;
|
64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
// Load the product by its productId
|
66 |
if($productId > 0) {
|
67 |
$isNew = false;
|
@@ -312,7 +319,7 @@ class Yireo_Vm2Mage_Model_Product_Api extends Mage_Catalog_Model_Product_Api
|
|
312 |
}
|
313 |
|
314 |
// Configure this product as configurable product
|
315 |
-
if($data['has_children'] > 0) {
|
316 |
if($typeId == Mage_Catalog_Model_Product_Type::TYPE_GROUPED) {
|
317 |
$rs = Mage::helper('vm2mage/product')->addChildrenToGrouped($data['children'], $product);
|
318 |
} elseif($typeId == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
|
@@ -327,7 +334,7 @@ class Yireo_Vm2Mage_Model_Product_Api extends Mage_Catalog_Model_Product_Api
|
|
327 |
// Get the remote images
|
328 |
if(isset($data['images'])) {
|
329 |
try {
|
330 |
-
|
331 |
} catch(Exception $e) {
|
332 |
return array(0, $e->getMessage());
|
333 |
}
|
59 |
// Try to get the productId by looking for the SKU
|
60 |
$sku = $data['sku'];
|
61 |
$productId = Mage::getModel('catalog/product')->getIdBySku($sku);
|
62 |
+
$storeId = Mage::helper('vm2mage')->getStoreId($data);
|
63 |
$taxId = (isset($data['product_tax_id'])) ? $data['product_tax_id'] : 0;
|
64 |
|
65 |
+
// Only set this store if its not the default Store View
|
66 |
+
if (Mage::app()->isSingleStoreMode() == false) {
|
67 |
+
if($storeId != Mage::helper('vm2mage')->getDefaultStoreId($storeId)) {
|
68 |
+
$product->setStoreId($storeId);
|
69 |
+
}
|
70 |
+
}
|
71 |
+
|
72 |
// Load the product by its productId
|
73 |
if($productId > 0) {
|
74 |
$isNew = false;
|
319 |
}
|
320 |
|
321 |
// Configure this product as configurable product
|
322 |
+
if(isset($data['has_children']) && $data['has_children'] > 0) {
|
323 |
if($typeId == Mage_Catalog_Model_Product_Type::TYPE_GROUPED) {
|
324 |
$rs = Mage::helper('vm2mage/product')->addChildrenToGrouped($data['children'], $product);
|
325 |
} elseif($typeId == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
|
334 |
// Get the remote images
|
335 |
if(isset($data['images'])) {
|
336 |
try {
|
337 |
+
Mage::helper('vm2mage/image')->addImages($product, $data['images']);
|
338 |
} catch(Exception $e) {
|
339 |
return array(0, $e->getMessage());
|
340 |
}
|
app/code/community/Yireo/Vm2Mage/etc/config.xml
CHANGED
@@ -14,7 +14,7 @@
|
|
14 |
|
15 |
<modules>
|
16 |
<Yireo_Vm2Mage>
|
17 |
-
<version>0.10.
|
18 |
</Yireo_Vm2Mage>
|
19 |
</modules>
|
20 |
|
14 |
|
15 |
<modules>
|
16 |
<Yireo_Vm2Mage>
|
17 |
+
<version>0.10.28</version>
|
18 |
</Yireo_Vm2Mage>
|
19 |
</modules>
|
20 |
|
package.xml
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
-
<package><name>Yireo_Vm2Mage</name><version>0.10.
|
1 |
<?xml version="1.0"?>
|
2 |
+
<package><name>Yireo_Vm2Mage</name><version>0.10.28</version><stability>stable</stability><license>Open Source License</license><channel>community</channel><extends></extends><summary>No summary</summary><description>No description</description><notes>No notes</notes><authors><author><name>Yireo</name><user>yireo</user><email>info@yireo.com</email></author></authors><date>2015-08-26</date><time>8:20:26</time><compatible></compatible><dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies><contents><target name="mage"><dir name="skin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="vm2mage"><file name="check-error.png" hash="6a3c4bbf7dff2e4db08183b14329ef9c"/><file name="check-ok.png" hash="9fb629c79fc4a487088ac4aeeb23e40b"/><file name="check-warning.png" hash="39ccef05471d39a99a8fa2ddf4471d20"/></dir></dir></dir></dir></dir></dir><dir name="app"><dir name="etc"><dir name="modules"><file name="Yireo_Vm2Mage.xml" hash="bee76713ff8df9db330a8385b2465041"/></dir></dir><dir name="design"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="vm2mage"><file name="check.phtml" hash="953b257a96841c5efadac97f0cf6614e"/></dir></dir></dir></dir></dir></dir><dir name="code"><dir name="community"><dir name="Yireo"><dir name="Vm2Mage"><dir name="sql"><dir name="vm2mage_setup"><file name="mysql4-install-0.10.3.php" hash="853a8f5781d1f91356aefbf7ae954d2b"/><file name="mysql4-install-0.5.4.php" hash="af2d480575e32b4f601c0f3d40e49f01"/><file name="mysql4-upgrade-0.10.2-0.10.3.php" hash="39759a5daed7e92bd3aa50c661c2e287"/></dir></dir><dir name="etc"><file name="api.xml" hash="044835e8aef903ec0eaad068d7b428ae"/><file name="config.xml" hash="b2f2029758c83f5da605ed89c7894622"/><file name="system.xml" hash="675f2984aa4df1298f753be702171a78"/></dir><dir name="controllers"><file name="IndexController.php" hash="beb4a2afae7c48ab6360ccb0759b96bc"/></dir><dir name="Model"><file name="Observer.php" hash="61fca0f64bc8c994a4cab745a77252e0"/><dir name="Widget"><file name="Api.php" hash="dd313f26b2d2f37ee17f632e9b24b182"/></dir><dir name="User"><file name="Api.php" hash="dd49ff1f49914f8554609c2c79307f47"/></dir><dir name="Rewrite"><dir name="Category"><dir name="Attribute"><dir name="Backend"><file name="Image.php" hash="9880fd05bb4bdbb8fc551ee7cace2e9d"/></dir></dir></dir></dir><dir name="Product"><file name="Api.php" hash="bda772c201df3972093706511e361fc4"/></dir><dir name="Order"><file name="Api.php" hash="0e5c94716fbb347e2fef4b1b0f3d19bc"/></dir><dir name="Category"><file name="Api.php" hash="6b3dfea5f56030e735e74338c64d315c"/></dir><dir name="Attribute"><file name="Api.php" hash="aa0e201a5dc42cc7bf9b3d22c060c307"/></dir></dir><dir name="Helper"><file name="Attribute.php" hash="84734510b3170b65e782db7a90f715f9"/><file name="Category.php" hash="2780d3ce633e1f6b8ea345506d0cc89a"/><file name="Data.php" hash="52970459ed2468ecfac4c6e66ef81fd4"/><file name="Image.php" hash="e2a8600d705ef120398322116b9b3143"/><file name="Price.php" hash="2d7253c4d727935c79f8e4d861329fa5"/><file name="Product.php" hash="ca99ba63309b9add9f5bb1f9be2f88da"/></dir><dir name="Block"><file name="Check.php" hash="1409b8333e818a532fee3aa88c3a1977"/></dir></dir></dir></dir></dir></dir></target></contents></package>
|