trikita77
Новичок
Всем добрый день!
есть проблема с интеграцией Gallery, начальными познаниями программирования в PHP и отсутствие однозначного ответа на требуемый вопрос в поиске по форуму.
Суть:
- сайт падает в 500;
- error.log хостинга:
11:00:38 Warning: Invalid argument supplied for foreach() in /home/...../public_html/core/cache/includes/elements/modsnippet/4.include.cache.php on line 105
11:00:38 PHP Fatal error: Cannot use string offset as an array in /home/..../public_html/core/cache/includes/elements/modsnippet/4.include.cache.php on line 143
- выдержка кода сниппета Gallery:
....
/* iterate */
$imageProperties = $modx->getOption('imageProperties',$scriptProperties,'');
$imageProperties = !empty($imageProperties) ? $modx->fromJSON($imageProperties) : array();
$imageProperties = array_merge(array(
'w' => (int)$modx->getOption('imageWidth',$scriptProperties,500),
'h' => (int)$modx->getOption('imageHeight',$scriptProperties,500),
'zc' => (boolean)$modx->getOption('imageZoomCrop',$scriptProperties,0),
'far' => (string)$modx->getOption('imageFar',$scriptProperties,false),
'q' => (int)$modx->getOption('imageQuality',$scriptProperties,90),),
$imageProperties); <------------строка 105-------------->
$thumbProperties = $modx->getOption('thumbProperties',$scriptProperties,'');
$thumbProperties = !empty($thumbProperties) ? $modx->fromJSON($thumbProperties) : array();
$thumbProperties = array_merge(array(
'w' => (int)$modx->getOption('thumbWidth',$scriptProperties,100),
'h' => (int)$modx->getOption('thumbHeight',$scriptProperties,100),
'zc' => (boolean)$modx->getOption('thumbZoomCrop',$scriptProperties,1),
'far' => (string)$modx->getOption('thumbFar',$scriptProperties,'C'),
'q' => (int)$modx->getOption('thumbQuality',$scriptProperties,90),
),$thumbProperties);
....
...
/** @var galItem $item */
foreach ($data['items'] as $item) {
$itemArray = $item->toArray();
$itemArray['idx'] = $idx;
$itemArray['cls'] = $itemCls;
if ($itemArray['id'] == $highlightItem) {
$itemArray['cls'] .= ' '.$activeCls;
}
$itemArray['filename'] = basename($item->get('filename'));
$itemArray['image_absolute'] = $filesUrl.$item->get('filename');
$itemArray['fileurl'] = $itemArray['image_absolute'];
$itemArray['filepath'] = $filesPath.$item->get('filename'); <----строка 143------>
$itemArray['filesize'] = $item->get('filesize');
$itemArray['thumbnail'] = $item->get('thumbnail',$thumbProperties);
$itemArray['image'] = $item->get('thumbnail',$imageProperties);
$itemArray['image_attributes'] = $imageAttributes;
$itemArray['link_attributes'] = $linkAttributes;
.....
помогите новичку, пож.??
есть проблема с интеграцией Gallery, начальными познаниями программирования в PHP и отсутствие однозначного ответа на требуемый вопрос в поиске по форуму.
Суть:
- сайт падает в 500;
- error.log хостинга:
11:00:38 Warning: Invalid argument supplied for foreach() in /home/...../public_html/core/cache/includes/elements/modsnippet/4.include.cache.php on line 105
11:00:38 PHP Fatal error: Cannot use string offset as an array in /home/..../public_html/core/cache/includes/elements/modsnippet/4.include.cache.php on line 143
- выдержка кода сниппета Gallery:
....
/* iterate */
$imageProperties = $modx->getOption('imageProperties',$scriptProperties,'');
$imageProperties = !empty($imageProperties) ? $modx->fromJSON($imageProperties) : array();
$imageProperties = array_merge(array(
'w' => (int)$modx->getOption('imageWidth',$scriptProperties,500),
'h' => (int)$modx->getOption('imageHeight',$scriptProperties,500),
'zc' => (boolean)$modx->getOption('imageZoomCrop',$scriptProperties,0),
'far' => (string)$modx->getOption('imageFar',$scriptProperties,false),
'q' => (int)$modx->getOption('imageQuality',$scriptProperties,90),),
$imageProperties); <------------строка 105-------------->
$thumbProperties = $modx->getOption('thumbProperties',$scriptProperties,'');
$thumbProperties = !empty($thumbProperties) ? $modx->fromJSON($thumbProperties) : array();
$thumbProperties = array_merge(array(
'w' => (int)$modx->getOption('thumbWidth',$scriptProperties,100),
'h' => (int)$modx->getOption('thumbHeight',$scriptProperties,100),
'zc' => (boolean)$modx->getOption('thumbZoomCrop',$scriptProperties,1),
'far' => (string)$modx->getOption('thumbFar',$scriptProperties,'C'),
'q' => (int)$modx->getOption('thumbQuality',$scriptProperties,90),
),$thumbProperties);
....
...
/** @var galItem $item */
foreach ($data['items'] as $item) {
$itemArray = $item->toArray();
$itemArray['idx'] = $idx;
$itemArray['cls'] = $itemCls;
if ($itemArray['id'] == $highlightItem) {
$itemArray['cls'] .= ' '.$activeCls;
}
$itemArray['filename'] = basename($item->get('filename'));
$itemArray['image_absolute'] = $filesUrl.$item->get('filename');
$itemArray['fileurl'] = $itemArray['image_absolute'];
$itemArray['filepath'] = $filesPath.$item->get('filename'); <----строка 143------>
$itemArray['filesize'] = $item->get('filesize');
$itemArray['thumbnail'] = $item->get('thumbnail',$thumbProperties);
$itemArray['image'] = $item->get('thumbnail',$imageProperties);
$itemArray['image_attributes'] = $imageAttributes;
$itemArray['link_attributes'] = $linkAttributes;
.....
помогите новичку, пож.??