function _getClonerOptions(&$node) { $attrs = $node->attributes(); $optAttrs = array(); foreach ($attrs as $key => $value) { if (strpos($key, 'opt_') !== 0) continue; $optAttrs[$key] = JText::_($value); } $params = AriParametersHelper::flatParametersToArray($optAttrs); $clonerOptions = AriParametersHelper::getUniqueOverrideParameters( array( 'numFormat' => '#{$num}.', 'enableNumFormat' => true, 'defaultItemCount' => 3, 'message' => array( 'removeConfirm' => 'Are you sure you want to remove this item?', 'removeAllConfirm' => 'Are you sure you want to remove all items?' ) ), isset($params['opt']) ? $params['opt'] : array(), true); return count($clonerOptions) > 0 ? $clonerOptions : new stdClass(); }
function getUniqueOverrideParameters($srcParams, $overrideParams, $caseInsensitive = false) { $uniqueParams = array(); foreach ($srcParams as $srcKey => $srcValue) { if (is_array($srcValue)) { if (isset($overrideParams[$srcKey]) || ($caseInsensitive && isset($overrideParams[strtolower($srcKey)]))) { $subParams = AriParametersHelper::getUniqueOverrideParameters( $srcValue, isset($overrideParams[$srcKey]) ? $overrideParams[$srcKey] : $overrideParams[strtolower($srcKey)], $caseInsensitive); if (count($subParams) > 0) $uniqueParams[$srcKey] = $subParams; } } else if (array_key_exists($srcKey, $overrideParams) || ($caseInsensitive && array_key_exists(strtolower($srcKey), $overrideParams))) { $overrideValue = AriUtils2::parseValueBySample( isset($overrideParams[$srcKey]) ? $overrideParams[$srcKey] : $overrideParams[strtolower($srcKey)], $srcValue); if ($overrideValue != $srcValue) $uniqueParams[$srcKey] = $overrideValue; } } return $uniqueParams; }
function getJsOptions($overrideOptions = array()) { $defOptions = array( 'showDownloadLink' => false, 'hoverDownloadLink' => true, 'downloadLinkTitle' => 'Open the image in new window', 'disableRightClick' => false, 'enableShow' => false, 'pauseDuration' => 5000, 'autoStart' => false, 'continiousShow' => false, 'continious' => false, 'find' => 'sexylightbox', 'zIndex' => 32000, 'color' => 'black', 'emergefrom' => 'top', 'showDuration' => 200, 'closeDuration' => 400, 'moveDuration' => 1000, 'moveEffect' => 'easeInOutBack', 'resizeDuration' => 1000, 'resizeEffect' => 'easeInOutBack', 'movieAutoPlay' => false, 'wMode' => 'transparent', 'shake' => array( 'distance' => 10, 'duration' => 100, 'loops' => 2, 'transition' => 'easeInOutBack' ) ); $jsOptions = AriParametersHelper::getUniqueOverrideParameters($defOptions, $overrideOptions); $jsOptions['dir'] = str_replace(' ', '%20', JURI::root(true)) . '/modules/mod_arisexylightbox/includes/js/sexyimages'; if (!empty($overrideOptions['overlayStyle'])) { $fixOverlayStyle = array(); $overlayStyle = $overrideOptions['overlayStyle']; foreach ($overlayStyle as $key => $value) { if (!is_null($value) && strlen($value) > 0) $fixOverlayStyle[$key] = $value; } $jsOptions['overlayStyle'] = $fixOverlayStyle; } return $jsOptions; }