/** * Resize Image * * @param name string filename of the image * @param type string what kind of image: product, category * @param options array array of options: width, height, path, thumb_path * @return thumb full path */ function resize($name, $type = 'product', $options = array()) { // Check File presence if (!JFile::exists($name)) { return false; } JImport('com_tienda.library.image', JPATH_ADMINISTRATOR . 'components'); $img = new TiendaImage($name); $types = array('product', 'category', 'manufacturer'); if (!in_array($type, $types)) { $type = 'product'; } return $this->resizeImage($img, $type, $options); }
<?php /** * BreezingForms - A Joomla Forms Application * @version 1.8 * @package BreezingForms * @copyright (C) 2008-2012 by Markus Bopp * @license Released under the terms of the GNU General Public License **/ defined('_JEXEC') or die('Direct Access to this location is not allowed.'); $active_language_code = JRequest::getVar('active_language_code', ''); if ($active_language_code != '') { $active_language_code = '_translation' . $active_language_code; } JImport('joomla.html.editor'); $editor = JFactory::getEditor(); echo '<input type="submit" class="btn btn-primary" value="' . JText::_('SAVE') . '" onclick="saveText();parent.SqueezeBox.close();"/><br/><br/>'; echo '<div style="width:700px;">' . $editor->display("bfEditor", '', 700, 300, 40, 20, 1) . '</div>'; echo '<br/><input type="submit" class="btn btn-primary" value="' . JText::_('SAVE') . '" onclick="saveText();parent.SqueezeBox.close();"/>'; echo '<script> function bfLoadText(){ var keyPageIntro = "pageIntro' . $active_language_code . '"; var keyDescription = "description' . $active_language_code . '"; var item = parent.app.findDataObjectItem(parent.app.selectedTreeElement.id, parent.app.dataObject); // workaround for quote bug with jce var testEditor = ' . $editor->getContent('bfEditor') . ' if(testEditor == "item.properties[keyPageIntro]" || testEditor == "item.properties[keyDescription]"){ if(item && item.properties.type == "page"){
public function render() { if (isset($this->rootMdata['themebootstrapUseProgress']) && $this->rootMdata['themebootstrapUseProgress']) { echo '<div class="progress"><div id="bfProgressBar" class="bar"></div></div> <script type="text/javascript"> <!-- function bfUpdateProgress(){ if(ff_currentpage > 1){ var pages = JQuery(".bfPage").size()' . ($this->rootMdata['lastPageThankYou'] ? '-1' : '') . '; var result = Math.round(((ff_currentpage-1) / pages)*100); JQuery("#bfProgressBar").css("width",result+"%"); }else{ JQuery("#bfProgressBar").css("width","0%"); } } JQuery(document).ready(function(){ setInterval("bfUpdateProgress()", 500); }); --> </script>'; } $this->process($this->dataObject); echo '</div>' . "\n"; // closing last page $this->headers(); if ($this->hasResponsiveDatePicker) { JFactory::getDocument()->addScript(JURI::root(true) . '/components/com_breezingforms/libraries/jquery/pickadate/picker.js'); JFactory::getDocument()->addScript(JURI::root(true) . '/components/com_breezingforms/libraries/jquery/pickadate/picker.date.js'); $lang = JFactory::getLanguage()->getTag(); $lang = explode('-', $lang); $lang = strtolower($lang[0]); if (JFile::exists(JPATH_SITE . '/components/com_breezingforms/libraries/jquery/pickadate/translations/' . $lang . '.js')) { JFactory::getDocument()->addScript(JURI::root(true) . '/components/com_breezingforms/libraries/jquery/pickadate/translations/' . $lang . '.js'); } JFactory::getDocument()->addStyleSheet(JURI::root(true) . '/components/com_breezingforms/libraries/jquery/pickadate/themes/default.css'); JFactory::getDocument()->addStyleSheet(JURI::root(true) . '/components/com_breezingforms/libraries/jquery/pickadate/themes/default.date.css'); } // we must make sure that everything mootools related is included after moxie and plupload if (isset(JFactory::getDocument()->_scripts)) { foreach (JFactory::getDocument()->_scripts as $script_name => $script_value) { if (basename($script_name) != 'moxie.js' && basename($script_name) != 'plupload.js' && basename($script_name) != 'calendar.js' && basename($script_name) != 'calendar-setup.js') { unset(JFactory::getDocument()->_scripts[$script_name]); JFactory::getDocument()->_scripts[$script_name] = $script_value; } } } // we gonna add a blank to each textarea, since the value is transferred upon submit // requires a different mandatory validation than ff_valuenotempty if (count($this->htmltextareas)) { JImport('joomla.html.editor'); $editor = JFactory::getEditor(); $htmltextarea_out = ''; foreach ($this->htmltextareas as $htmltextarea) { $htmltextarea_out .= 'JQuery("[name=\\"' . $htmltextarea . '\\"]").val(JQuery.trim(JQuery("[name=\\"' . $htmltextarea . '\\"]").val())+" ");' . "\n"; $htmltextarea_out .= 'bf_htmltextareas.push("' . rtrim(trim($editor->getContent($htmltextarea)), ';') . '")' . "\n"; $htmltextarea_out .= 'bf_htmltextareanames.push("' . $htmltextarea . '")' . "\n"; } echo '<script type="text/javascript"> <!-- var bf_htmltextareas = []; var bf_htmltextareanames = []; function bf_htmltextareainit(){ ' . $htmltextarea_out . ' } //--> </script>'; } if ($this->hasFlashUpload) { $tickets = JFactory::getSession()->get('bfFlashUploadTickets', array()); $tickets[$this->flashUploadTicket] = array(); // stores file info for later processing JFactory::getSession()->set('bfFlashUploadTickets', $tickets); echo '<input type="hidden" name="bfFlashUploadTicket" value="' . $this->flashUploadTicket . '"/>' . "\n"; JFactory::getDocument()->addScript(JURI::root(true) . '/components/com_breezingforms/libraries/jquery/center.js'); JFactory::getDocument()->addScriptDeclaration(' var bfUploaders = []; var bfUploaderErrorElements = []; var bfFlashUploadInterval = null; var bfFlashUploaders = new Array(); var bfFlashUploadersLength = 0; function bfRefreshAll(){ for( var i = 0; i < bfUploaders.length; i++ ){ bfUploaders[i].refresh(); } } function bfInitAll(){ for( var i = 0; i < bfUploaders.length; i++ ){ bfUploaders[i].init(); } } function bfDoFlashUpload(){ JQuery("#bfSubmitMessage").css("visibility","hidden"); JQuery(".bfErrorMessage").html(""); JQuery(".bfErrorMessage").css("display","none"); for(var i = 0; i < bfUploaderErrorElements.length; i++){ JQuery("#"+bfUploaderErrorElements[i]).html(""); } bfUploaderErrorElements = []; if(ff_validation(0) == ""){ try{ bfFlashUploadInterval = window.setInterval( bfCheckFlashUploadProgress, 1000 ); if(bfFlashUploadersLength > 0){ JQuery("#bfFileQueue").bfcenter(true); JQuery("#bfFileQueue").css("visibility","visible"); for( var i = 0; i < bfUploaders.length; i++ ){ bfUploaders[i].start(); } } } catch(e){alert(e)} } else { if(typeof bfUseErrorAlerts == "undefined"){ alert(error); } else { bfShowErrors(error); } ff_validationFocus(""); document.getElementById("bfSubmitButton").disabled = false; } } function bfCheckFlashUploadProgress(){ if( JQuery("#bfFileQueue").html() == "" ){ // empty indicates that all queues are uploaded or in any way cancelled JQuery("#bfFileQueue").css("visibility","hidden"); window.clearInterval( bfFlashUploadInterval ); if(typeof bfAjaxObject101 != \'undefined\' || typeof bfReCaptchaLoaded != \'undefined\'){ ff_submitForm2(); }else{ ff_validate_submit(document.getElementById("bfSubmitButton"), "click"); } JQuery(".bfFlashFileQueueClass").html(""); if(bfFlashUploadersLength > 0){ JQuery("#bfSubmitMessage").bfcenter(true); JQuery("#bfSubmitMessage").css("visibility","visible"); } } } '); echo "<div style=\"visibility:hidden;\" id=\"bfFileQueue\"></div>"; echo "<div style=\"visibility:hidden;\" id=\"bfSubmitMessage\">" . BFText::_('COM_BREEZINGFORMS_SUBMIT_MESSAGE') . "</div>"; } echo '<noscript>Please turn on javascript to submit your data. Thank you!</noscript>' . "\n"; JFactory::getDocument()->addScriptDeclaration('//-->'); }
<?php defined('_JEXEC') or defined('_VALID_MOS') or die('Restricted access'); JImport('joomla.application.helper'); require_once JApplicationHelper::getPath('html'); require_once JApplicationHelper::getPath('admin_functions'); JTable::addIncludePath(JPATH_ADMINISTRATOR . DS . 'components' . DS . $option . DS . 'tables'); switch ($task) { case 'listnames': listMemberNames($option); break; case 'memberoptions': listMemberOptions($option); break; case 'login': loginMember($option); break; case 'logout': logoutMember($option); break; case 'newmember': newMember($option); break; case 'newmemberpurchase': newMemberPurchase($option); break; case 'oldmemberpurchase': oldMemberPurchase($option); break; case 'savenewmember': saveNewMember($option);
public static function getEditableTemplate($contentbuilder_form_id, $record_id, array $record, array $elements_allowed, $execPrepare = true) { jimport('joomla.version'); $version = new JVersion(); if (version_compare($version->getShortVersion(), '1.6', '>=')) { JHtml::_('behavior.framework'); } $failed_values = JFactory::getSession()->get('cb_failed_values', null, 'com_contentbuilder.' . $contentbuilder_form_id); if ($failed_values !== null) { JFactory::getSession()->clear('cb_failed_values', 'com_contentbuilder.' . $contentbuilder_form_id); } $db = JFactory::getDBO(); $db->setQuery("Select `type`, reference_id, editable_template, editable_prepare, edit_by_type, act_as_registration, registration_name_field, registration_username_field, registration_email_field, registration_email_repeat_field, registration_password_field, registration_password_repeat_field From #__contentbuilder_forms Where id = " . intval($contentbuilder_form_id)); $result = $db->loadAssoc(); if (is_array($result) && $result['editable_template']) { $user = null; if ($result['act_as_registration']) { if ($record_id) { $form = contentbuilder::getForm($result['type'], $result['reference_id']); $meta = $form->getRecordMetadata($record_id); $db->setQuery("Select * From #__users Where id = " . $meta->created_id); $user = $db->loadObject(); } else { if (JFactory::getUser()->get('id', 0)) { $db->setQuery("Select * From #__users Where id = " . JFactory::getUser()->get('id', 0)); $user = $db->loadObject(); } } } $labels = array(); $validations = array(); if (!$result['edit_by_type']) { $db->setQuery("Select `label`,`reference_id`,`validations` From #__contentbuilder_elements Where form_id = " . intval($contentbuilder_form_id)); $labels_ = $db->loadAssocList(); foreach ($labels_ as $label_) { $labels[$label_['reference_id']] = $label_['label']; $validations[$label_['reference_id']] = $label_['validations']; } } $hasLabels = count($labels); $form_type = $result['type']; $form_reference_id = $result['reference_id']; $form = self::getForm($form_type, $form_reference_id); $template = $result['editable_template']; $items = array(); foreach ($record as $item) { if (in_array($item->recElementId, $elements_allowed)) { $items[$item->recName] = array(); $items[$item->recName]['id'] = $item->recElementId; $items[$item->recName]['label'] = $hasLabels ? $labels[$item->recElementId] : $item->recTitle; if ($result['act_as_registration'] && $user !== null) { if ($result['registration_name_field'] == $item->recElementId) { $item->recValue = $user->name; } else { if ($result['registration_username_field'] == $item->recElementId) { $item->recValue = $user->username; } else { if ($result['registration_email_field'] == $item->recElementId) { $item->recValue = $user->email; } else { if ($result['registration_email_repeat_field'] == $item->recElementId) { $item->recValue = $user->email; } } } } } $items[$item->recName]['value'] = $item->recValue ? $item->recValue : ''; } } // in case if there is no record given, provide the element data but an empty value $hasRecords = true; if (!count($record)) { $hasRecords = false; $names = $form->getElementNames(); if (!count($labels)) { $labels = $form->getElementLabels(); } foreach ($names as $elementId => $name) { if (!isset($items[$name])) { $items[$name] = array(); } $items[$name]['id'] = $elementId; $items[$name]['label'] = $labels[$elementId]; $items[$name]['value'] = ''; } } $item = null; if ($execPrepare) { eval($result['editable_prepare']); } $the_init_scripts = "\n" . '<script type="text/javascript">' . "\n" . '<!--' . "\n"; foreach ($items as $key => $item) { $db->setQuery("Select * From #__contentbuilder_elements Where published = 1 And editable = 1 And reference_id = " . $db->Quote($item['id']) . " And form_id = " . intval($contentbuilder_form_id) . " Order By ordering"); $element = $db->loadAssoc(); $autocomplete = ''; if ($result['act_as_registration']) { if ($result['registration_name_field'] == $element['reference_id']) { $element['default_value'] = $user !== null ? $user->name : ''; $autocomplete = 'autocomplete="off" '; } else { if ($result['registration_username_field'] == $element['reference_id']) { $element['default_value'] = $user !== null ? $user->username : ''; $autocomplete = 'autocomplete="off" '; } else { if ($result['registration_email_field'] == $element['reference_id']) { $element['default_value'] = $user !== null ? $user->email : ''; $autocomplete = 'autocomplete="off" '; } else { if ($result['registration_email_repeat_field'] == $element['reference_id']) { $element['default_value'] = $user !== null ? $user->email : ''; $autocomplete = 'autocomplete="off" '; } else { if ($result['registration_password_field'] == $element['reference_id']) { $element['force_password'] = true; $autocomplete = 'autocomplete="off" '; } else { if ($result['registration_password_repeat_field'] == $element['reference_id']) { $element['force_password'] = true; $autocomplete = 'autocomplete="off" '; } } } } } } } if (!$element['default_value'] && !$hasRecords) { $element['default_value'] = $item['value']; } $asterisk = ''; if (is_array($element)) { if ($element['type'] == 'captcha' || trim($element['validations']) != '' || trim($element['custom_validation_script']) != '') { $asterisk = ' <span class="cbRequired" style="color:red;">*</span>'; } $options = unserialize(base64_decode($element['options'])); $the_item = ''; switch ($element['type']) { case in_array($element['type'], self::getFormElementsPlugins()): $removables = array(); $plgs = CBPluginHelper::importPlugin('contentbuilder_form_elements', $element['type']); $removables = array_merge($removables, $plgs); $dispatcher = JDispatcher::getInstance(); $results = $dispatcher->trigger('onRenderElement', array($item, $element, $options, $failed_values, $result, $hasRecords)); if (count($results)) { $results = $results[0]; } foreach ($removables as $removable) { $dispatcher->detach($removable); } $the_item = $results; break; case '': case 'text': if (!isset($options->length)) { $options->length = ''; } if (!isset($options->maxlength)) { $options->maxlength = ''; } if (!isset($options->password)) { $options->password = ''; } if (!isset($options->readonly)) { $options->readonly = ''; } $the_item = '<div class="cbFormField cbTextField"><input ' . $autocomplete . '' . ($options->readonly ? 'readonly="readonly" ' : '') . 'style="' . ($options->length ? 'width:' . $options->length . ';' : '') . '" ' . ($options->maxlength ? 'maxlength="' . intval($options->maxlength) . '" ' : '') . 'type="' . (isset($element['force_password']) || $options->password ? 'password' : 'text') . '" id="cb_' . $item['id'] . '" name="cb_' . $item['id'] . '" value="' . htmlentities($failed_values !== null && isset($failed_values[$element['reference_id']]) ? $failed_values[$element['reference_id']] : ($hasRecords ? $item['value'] : $element['default_value']), ENT_QUOTES, 'UTF-8') . '"/></div>'; break; case 'textarea': if (!isset($options->width)) { $options->width = ''; } if (!isset($options->height)) { $options->height = ''; } if (!isset($options->maxlength)) { $options->maxlength = ''; } if (!isset($options->readonly)) { $options->readonly = ''; } if (!isset($options->allow_html)) { $options->allow_html = false; } if (!isset($options->allow_raw)) { $options->allow_raw = false; } if ($options->allow_html || $options->allow_raw) { JImport('joomla.html.editor'); $editor = JFactory::getEditor(); $the_item = '<div class="cbFormField cbTextArea">' . $editor->display('cb_' . $item['id'], htmlentities($failed_values !== null && isset($failed_values[$element['reference_id']]) ? $failed_values[$element['reference_id']] : ($hasRecords ? $item['value'] : $element['default_value']), ENT_QUOTES, 'UTF-8'), $options->width ? $options->width : '100%', $options->height ? $options->height : '550', '75', '20') . '</div>'; } else { $the_item = '<div class="cbFormField cbTextArea"><textarea ' . ($options->readonly ? 'readonly="readonly" ' : '') . 'style="' . ($options->width || $options->height ? ($options->width ? 'width:' . $options->width . ';' : '') . ($options->height ? 'height:' . $options->height . ';' : '') : '') . '" id="cb_' . $item['id'] . '" name="cb_' . $item['id'] . '">' . htmlentities($failed_values !== null && isset($failed_values[$element['reference_id']]) ? $failed_values[$element['reference_id']] : ($hasRecords ? $item['value'] : $element['default_value']), ENT_QUOTES, 'UTF-8') . '</textarea></div>'; } break; case 'checkboxgroup': case 'radiogroup': //if(!isset($options->seperator)){ // $options->seperator = ','; //} $options->seperator = ','; if (!isset($options->horizontal)) { $options->horizontal = false; } if (!isset($options->horizontal_length)) { $options->horizontal_length = ''; } if ($form->isGroup($item['id'])) { $groupdef = $form->getGroupDefinition($item['id']); $i = 0; $sep = $options->seperator; $group = explode($sep, $failed_values !== null && isset($failed_values[$element['reference_id']]) && is_array($failed_values[$element['reference_id']]) ? implode($sep, $failed_values[$element['reference_id']]) : ($hasRecords ? $item['value'] : $element['default_value'])); $groupSize = count($groupdef); $groupSize = !$groupSize ? 1 : $groupSize; $the_item = '<input name="cb_' . $item['id'] . '[]" type="hidden" value="cbGroupMark"/>'; foreach ($groupdef as $value => $label) { $checked = ''; $for = ''; if ($i != 0) { $for = '_' . $i; } foreach ($group as $selected_value) { if (trim($value) == trim($selected_value)) { $checked = ' checked="checked"'; break; } } $the_item .= '<div style="' . ($options->horizontal ? 'float: left;' . ($options->horizontal_length ? 'width: ' . $options->horizontal_length . ';' : '') . 'display: inline; margin-right: 2px;' : '') . '" class="cbFormField cbGroupField"><input id="cb_' . $item['id'] . $for . '" name="cb_' . $item['id'] . '[]" type="' . ($element['type'] == 'checkboxgroup' ? 'checkbox' : 'radio') . '" value="' . htmlentities(trim($value), ENT_QUOTES, 'UTF-8') . '"' . $checked . '/> <label for="cb_' . $item['id'] . $for . '">' . htmlentities(trim($label), ENT_QUOTES, 'UTF-8') . '</label> </div>'; $i++; } if ($options->horizontal) { $the_item .= '<div style="clear:both;"></div>'; } } else { $the_item .= '<span style="color:red">ELEMENT IS NOT A GROUP</span>'; } break; case 'select': //if(!isset($options->seperator)){ // $options->seperator = ','; //} $options->seperator = ','; if (!isset($options->multiple)) { $options->multiple = 0; } if (!isset($options->length)) { $options->length = ''; } if ($form->isGroup($item['id'])) { $groupdef = $form->getGroupDefinition($item['id']); $i = 0; $sep = $options->seperator; $multi = $options->multiple; $group = explode($sep, $failed_values !== null && isset($failed_values[$element['reference_id']]) && is_array($failed_values[$element['reference_id']]) ? implode($sep, $failed_values[$element['reference_id']]) : ($hasRecords ? $item['value'] : $element['default_value'])); $the_item = '<input name="cb_' . $item['id'] . '[]" type="hidden" value="cbGroupMark"/>'; $the_item .= '<div class="cbFormField cbSelectField"><select class="chzn-done" id="cb_' . $item['id'] . '" ' . ($options->length ? 'style="width:' . $options->length . ';" ' : '') . 'name="cb_' . $item['id'] . '[]"' . ($multi ? ' multiple="multiple"' : '') . '>'; foreach ($groupdef as $value => $label) { $checked = ''; foreach ($group as $selected_value) { if (trim($value) == trim($selected_value)) { $checked = ' selected="selected"'; break; } } $the_item .= '<option value="' . htmlentities(trim($value), ENT_QUOTES, 'UTF-8') . '"' . $checked . '>' . htmlentities(trim($label), ENT_QUOTES, 'UTF-8') . '</option>'; $i++; } $the_item .= '</select></div>'; } else { $the_item .= '<span style="color:red">ELEMENT IS NOT A GROUP</span>'; } break; case 'upload': $deletable = false; if (isset($validations[$item['id']]) && $validations[$item['id']] == '') { $deletable = true; } $the_item = '<div class="cbFormField cbUploadField">'; $the_item .= '<input type="file" id="cb_' . $item['id'] . '" name="cb_' . $item['id'] . '"/>'; if (trim($item['value']) != '') { $the_item .= '<div>' . ($deletable ? '<label for="cb_delete_' . $item['id'] . '">' . JText::_('COM_CONTENTBUILDER_DELETE') . '</label> <input type="checkbox" id="cb_delete_' . $item['id'] . '" name="cb_delete_' . $item['id'] . '" value="1"/> ' : '') . htmlentities(basename($item['value']), ENT_QUOTES, 'UTF-8') . '</div><div style="clear:both;"></div>'; } $the_item .= '</div>'; break; case 'captcha': $the_item = '<div class="cbFormField cbCaptchaField">'; if (JFactory::getApplication()->isSite()) { $captcha_url = JURI::root(true) . '/components/com_contentbuilder/images/securimage/securimage_show.php'; } else { $captcha_url = JURI::root(true) . '/administrator/components/com_contentbuilder/assets/images/securimage_show.php'; } $the_item .= '<img width="250" height="80" id="cbCaptcha" alt="captcha" src="' . $captcha_url . '?rand=' . rand(0, getrandmax()) . '"/>'; $the_item .= '<div>'; $the_item .= '<input autocomplete="off" id="cb_' . $item['id'] . '" name="cb_' . $item['id'] . '" type="text" maxlength="12" />'; $the_item .= '<img style="cursor: pointer; padding-left: 7px;" onclick="document.getElementById(\'cbCaptcha\').src = \'' . $captcha_url . '?\' + Math.random(); blur(); return false" border="0" width="15" height="18" alt="refresh" src="' . JURI::root(true) . '/components/com_contentbuilder/images/securimage/images/refresh.png"/>'; $the_item .= '</div>'; $the_item .= '</div>'; break; case 'calendar': JHTML::_('behavior.calendar'); if (!isset($options->length)) { $options->length = ''; } if (!isset($options->maxlength)) { $options->maxlength = ''; } if (!isset($options->readonly)) { $options->readonly = ''; } if (!isset($options->format)) { $options->format = '%Y-%m-%d'; } if (!isset($options->transfer_format)) { $options->transfer_format = 'YYYY-mm-dd'; } $calval = htmlentities($failed_values !== null && isset($failed_values[$element['reference_id']]) ? $failed_values[$element['reference_id']] : ($hasRecords ? $item['value'] : $element['default_value']), ENT_QUOTES, 'UTF-8'); $calval = contentbuilder_convert_date($calval, $options->transfer_format, $options->format); $the_item = '<div class="cbFormField cbCalendarField"><input ' . ($options->readonly ? 'readonly="readonly" ' : '') . 'style="' . ($options->length ? 'width:' . $options->length . ';' : '') . '" ' . ($options->maxlength ? 'maxlength="' . intval($options->maxlength) . '" ' : '') . 'type="text" id="cb_' . $item['id'] . '" name="cb_' . $item['id'] . '" value="' . $calval . '"/> <button class="button cbFormField cbCalendarButton" id="cb_' . $item['id'] . '_calendarButton">' . JText::_('COM_CONTENTBUILDER_CALENDAR_BUTTON_TEXT') . '</button></div>'; $the_item .= '<script type="text/javascript"> <!-- Calendar.setup({ inputField : "cb_' . $item['id'] . '", ifFormat : "' . $options->format . '", button : "cb_' . $item['id'] . '_calendarButton", align : "Bl", singleClick : true }); //--> </script>' . "\n"; break; case 'hidden': $the_item = '<input type="hidden" id="cb_' . $item['id'] . '" name="cb_' . $item['id'] . '" value="' . htmlentities($failed_values !== null && isset($failed_values[$element['reference_id']]) ? $failed_values[$element['reference_id']] : ($hasRecords ? $item['value'] : $element['default_value']), ENT_QUOTES, 'UTF-8') . '"/>'; break; } if ($element['custom_init_script']) { $the_init_scripts .= $element['custom_init_script'] . "\n"; } if ($the_item) { $tip = 'hasTip'; $tip_prefix = htmlentities($item['label'], ENT_QUOTES, 'UTF-8') . '::'; /* new joomla 3 tooltip styles maybe at a later point if (JFactory::getApplication()->isSite() && version_compare($version->getShortVersion(), '3.0', '>=')) { $tip = 'hasTooltip'; $tip_prefix = ''; }*/ $template = str_replace('{' . $key . ':label}', '<label ' . ($element['hint'] ? 'class="editlinktip ' . $tip . '" title="' . $tip_prefix . $element['hint'] . '" ' : '') . 'for="cb_' . $item['id'] . '">' . $item['label'] . $asterisk . ($element['hint'] ? ' <img style="cursor: pointer;" src="' . JURI::root(true) . '/components/com_contentbuilder/images/icon_info.png" border="0"/>' : '') . '</label>', $template); $template = str_replace('{' . $key . ':item}', $the_item, $template); } } } return $template . $the_init_scripts . "\n" . '//-->' . '</script>' . "\n"; } else { JError::raiseError(404, JText::_('COM_CONTENTBUILDER_TEMPLATE_NOT_FOUND')); } return ''; }
/** * Method to get the row form. * * @return mixed JForm object on success, false on failure. * @since 1.6 */ public function getForm() { // Initialise variables. $app =& JFactory::getApplication(); JImport('joomla.form.form'); JForm::addFieldPath('JPATH_ADMINISTRATOR/components/com_users/models/fields'); // Get the form. $form = parent::getForm('contact', 'com_contact.contact', array('array' => 'jform', 'event' => 'onPrepareForm')); // Check for an error. if (JError::isError($form)) { $this->setError($form->getMessage()); return false; } // Check the session for previously entered form data. $data = $app->getUserState('com_contact.edit.contact.data', array()); // Bind the form data if present. if (!empty($data)) { $form->bind($data); } return $form; }
/** * Get Images in Folder * @return array list images */ function getImageFolder() { JImport('joomla.filesystem.folder'); $show_title = $this->params->def('show_title', 1); $title_link = $this->params->get('title_link', 1); $limit_title = $this->params->get('limit_title', 30); $show_text = $this->params->def('show_text', 1); $limit_text = $this->params->get('limit_text', 120); $show_readmore = $this->params->get('show_readmore', 0); $read_more = $this->params->get('read_more', ''); $target = $this->params->get('target', '_self'); $intro_clean = $this->params->def('intro_clean', 1); $allowable_tags = str_replace(' ', '', $this->params->get('allowable_tags')); $allowable_tags = "<" . str_replace(',', '><', $allowable_tags) . ">"; $video_support = $this->params->def('video_support', 1); $plugins_support = $this->params->def('plugins_support', 0); // IMAGES $image_width = $this->params->get('image_width', 160); $image_height = $this->params->get('image_height', 120); $image_link = $this->params->get('image_link', 1); $folder = $this->params->get('imagefolder', 'images/'); $imageordering = $this->params->get('imageordering', 'ordering'); $path = JPath::clean(JPATH_ROOT . DS . $folder); //Get image files that has allowed_ext $files = JFolder::files($path, "\\.(bmp|gif|png|jpg|jpeg|BMP|GIF|PNG|JPG|JPEG)\$"); $images = array(); $gallery = array(); $i = 0; foreach ($files as $file) { if (is_file($path . $file)) { $images[$i] = $file; $gallery[$i] = new stdClass(); $gallery[$i]->image = $file; $gallery[$i]->title = ''; $gallery[$i]->link = ''; $gallery[$i]->class = ''; $gallery[$i]->animation = ''; $gallery[$i]->description = ''; $gallery[$i]->time = filemtime($path . $file); $gallery[$i]->published = 1; $i++; } } $saved_images_json = $this->params->get('jugallery', '[]'); $saved_images_obj = json_decode($saved_images_json); //Re-sort image if has saved_images_json if ($saved_images_obj != NULL) { $order_img_arr = array(); foreach ($saved_images_obj as $key => $saved_image_obj) { $index_img = array_search($saved_image_obj->image, $images); //If saved image does not exist in folder => ignore it if ($index_img === FALSE) { continue; //If saved image is unpublished remove from folder image list } elseif ($saved_image_obj->published == '0') { unset($gallery[$index_img]); //If saved image is published, add it to order_img_arr, and remove from folder image list } else { $saved_image_obj->time = $gallery[$index_img]->time; $order_img_arr[] = $saved_image_obj; unset($gallery[$index_img]); } } $images = array_merge($order_img_arr, $gallery); } //Sort images switch ($imageordering) { case 'name_asc': function img_order_name_asc($a, $b) { return strcmp($a->image, $b->image); } usort($images, "img_order_name_asc"); break; case 'name_desc': function img_order_name_desc($a, $b) { return strcmp($b->image, $a->image); } usort($images, "img_order_name_desc"); break; case 'title_asc': function img_order_title_asc($a, $b) { return strcmp($a->title, $b->title); } usort($images, "img_order_title_asc"); break; case 'title_desc': function img_order_title_desc($a, $b) { return strcmp($b->title, $a->title); } usort($images, "img_order_title_desc"); break; case 'time_asc': function img_order_time_asc($a, $b) { return strcmp($a->time, $b->time); } usort($images, "img_order_time_asc"); break; case 'time_desc': function img_order_time_desc($a, $b) { return strcmp($b->time, $a->time); } usort($images, "img_order_time_desc"); break; case 'random': shuffle($images); break; case 'ordering': default: break; } $slideshowanimation = self::parseAnimation(); $i = 0; foreach ($images as $image_item) { if ($i == $this->params->get('maxitems', 15)) { break; } $image = JURI::root() . JPath::clean($folder . '/' . $image_item->image, '/'); $lists[$i] = new stdClass(); $lists[$i]->id = ''; $lists[$i]->title = ''; $lists[$i]->link = ''; $lists[$i]->date = ''; $lists[$i]->image = $lists[$i]->image_src = $lists[$i]->image_alt = ''; $lists[$i]->text = ''; $lists[$i]->author = $lists[$i]->author_name = $lists[$i]->author_link = ''; $lists[$i]->rating = $lists[$i]->rating_value = $lists[$i]->rating_count = ''; $lists[$i]->hits = ''; $lists[$i]->comments = $lists[$i]->comments_count = $lists[$i]->comments_link = ''; $lists[$i]->readmore = ''; $lists[$i]->class = $image_item->class; $lists[$i]->animation = $slideshowanimation[$i]; $lists[$i]->link = $image_item->link ? JRoute::_($image_item->link) : ''; // Show Title if ($show_title) { $lists[$i]->title = $image_item->title ? $image_item->title : $image_item->image; $lists[$i]->title = $limit_title ? self::truncateHTML($lists[$i]->title, $limit_title, '…', false, false) : $lists[$i]->title; $lists[$i]->title = $title_link && trim($lists[$i]->link) != '' ? '<a target="' . $target . '" href="' . $lists[$i]->link . '">' . $lists[$i]->title . '</a>' : $lists[$i]->title; } // Images $img['src'] = $image; // Image Parameters $img['ttl'] = $image_item->title; $img['alt'] = $img['ttl'] ? $img['ttl'] : $image_item->image; // Create Thumbnail $lists[$i]->mainimage = modJUSlideshowHelper::renderImage($img['src'], $this->params->get('width_main'), $this->params->get('height_main')); $lists[$i]->thumb = modJUSlideshowHelper::renderImage($img['src'], $this->params->get('width_thumb'), $this->params->get('height_thumb')); $lists[$i]->image_src = @$img['src']; $lists[$i]->image_alt = @$img['alt']; // Show Text if ($show_text) { $introtext = $image_item->description; //Parse video $introtext = $video_support ? self::parseVideo($introtext) : $introtext; // Plugins Support $introtext = $plugins_support ? JHtml::_('content.prepare', $introtext) : $introtext; //preg_replace('/(?<=[^"\']{1})\s*?(?:{[^{]+?{\/.+?}|{.+?})/', '', $introtext); // Clean XHTML if ($intro_clean) { $introtext = strip_tags($introtext, $allowable_tags); $introtext = str_replace(' ', ' ', $introtext); $introtext = preg_replace('/\\s{2,}/u', ' ', trim($introtext)); } // Limit Text $lists[$i]->text = $limit_text ? self::truncateHtml($introtext, $limit_text, '…', false, true) : $introtext; } // Show Readmore $lists[$i]->readmore = $show_readmore && trim($lists[$i]->link) != '' ? '<a class="readmore" target="' . $target . '" href="' . $lists[$i]->link . '">' . $read_more . '</a>' : ''; $i++; } return $lists; }
<?php /** * ------------------------------------------------------------------------ * JU Backend Toolkit for Joomla 2.5/3.x * ------------------------------------------------------------------------ * Copyright (C) 2010-2013 JoomUltra. All Rights Reserved. * @license - GNU/GPL, http://www.gnu.org/licenses/gpl.html * Author: JoomUltra Co., Ltd * Websites: http://www.joomultra.com * ------------------------------------------------------------------------ */ defined('_JEXEC') or die('Restricted access'); //Disable all error report that may break JSON result error_reporting(0); JImport('joomla.filesystem.folder'); class jugallery { protected $params; protected $allowed_ext = 'bmp|gif|png|jpg|jpeg|BMP|GIF|PNG|JPG|JPEG'; function __construct($params) { $this->params = $params; } /** * Get all image from image source and render them * @param object $params * @return array image list */ public function loadImages() {