| Current Path : /home/w/u/e/wuectly/www/03cbe/ |
| Current File : /home/w/u/e/wuectly/www/03cbe/mod_sampledata.tar |
js/sampledata-process.js 0000604 00000005160 15245561315 0011312 0 ustar 00 /**
* @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
!(function ($) {
"use strict";
var inProgress = false;
var sampledataAjax = function(type, steps, step) {
if (step > steps) {
$('.sampledata-' + type + ' .row-title').append('<span class="icon-publish"> </span>');
inProgress = false;
return;
}
var stepClass = 'sampledata-steps-' + type + '-' + step,
$stepLi = $('<li class="' + stepClass + '"><p class="loader-image text-center"><img src="' + window.modSampledataIconProgress + '" width="30" height="30" ></p></li>'),
$progress = $(".sampledata-progress-" + type + " progress");
$("div.sampledata-progress-" + type + " ul").append($stepLi);
var request = $.ajax({
url: window.modSampledataUrl,
type: 'POST',
dataType: 'json',
data: {
type: type,
plugin: 'SampledataApplyStep' + step,
step: step
}
});
request.done(function(response){
$stepLi.children('.loader-image').remove();
if (response.success && response.data && response.data.length > 0) {
var success, value, resultClass, $msg;
// Display all messages that we got
for(var i = 0, l = response.data.length; i < l; i++) {
value = response.data[i];
success = value.success;
resultClass = success ? 'success' : 'error';
$stepLi.append($('<div>', {
html: value.message,
'class': 'alert alert-' + resultClass,
}));
}
// Update progress
$progress.val(step/steps);
// Move on next step
if (success) {
step++;
sampledataAjax(type, steps, step);
}
} else {
$stepLi.addClass('alert alert-error');
$stepLi.html(Joomla.JText._('MOD_SAMPLEDATA_INVALID_RESPONSE'));
inProgress = false;
}
});
request.fail(function(jqXHR, textStatus){
alert('Something went wrong! Please close and reopen the browser and try again!');
});
};
window.sampledataApply = function(el) {
var $el = $(el), type = $el.data('type'), steps = $el.data('steps');
// Check whether the work in progress or we alredy proccessed with current item
if (inProgress) {
return;
}
if ($el.data('processed')) {
alert(Joomla.JText._('MOD_SAMPLEDATA_ITEM_ALREADY_PROCESSED'));
return;
}
// Make sure that use run this not by random clicking on the page links
if (!confirm(Joomla.JText._('MOD_SAMPLEDATA_CONFIRM_START'))) {
return false;
}
// Turn on the progress container
$('.sampledata-progress-' + type).show();
$el.data('processed', true)
inProgress = true;
sampledataAjax(type, steps, 1);
return false;
};
})(jQuery);
mod_sampledata.php 0000604 00000001052 15245561525 0010233 0 ustar 00 <?php
/**
* @package Joomla.Administrator
* @subpackage mod_sampledata
*
* @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
// Include dependencies.
JLoader::register('ModSampledataHelper', __DIR__ . '/helper.php');
$items = ModSampledataHelper::getList();
// Filter out empty entries
$items = array_filter($items);
require JModuleHelper::getLayoutPath('mod_sampledata', $params->get('layout', 'default'));
mod_sampledata.xml 0000604 00000002362 15245561525 0010251 0 ustar 00 <?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.8" client="administrator" method="upgrade">
<name>mod_sampledata</name>
<author>Joomla! Project</author>
<creationDate>July 2017</creationDate>
<copyright>(C) 2017 Open Source Matters, Inc.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
<version>3.8.0</version>
<description>MOD_SAMPLEDATA_XML_DESCRIPTION</description>
<files>
<filename module="mod_sampledata">mod_sampledata.php</filename>
<filename>helper.php</filename>
<folder>tmpl</folder>
</files>
<media destination="mod_sampledata" folder="media">
<folder>js</folder>
</media>
<languages>
<language tag="en-GB">en-GB.mod_sampledata.ini</language>
<language tag="en-GB">en-GB.mod_sampledata.sys.ini</language>
</languages>
<help key="JHELP_EXTENSIONS_MODULE_MANAGER_ADMIN_LATEST" />
<config>
<fields name="params">
<fieldset name="advanced">
<field
name="layout"
type="modulelayout"
label="JFIELD_ALT_LAYOUT_LABEL"
description="JFIELD_ALT_MODULE_LAYOUT_DESC"
validate="moduleLayout"
/>
</fieldset>
</fields>
</config>
</extension>
helper.php 0000604 00000001325 15245561525 0006543 0 ustar 00 <?php
/**
* @package Joomla.Administrator
* @subpackage mod_sampledata
*
* @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
/**
* Helper for mod_sampledata
*
* @since 3.8.0
*/
abstract class ModSampledataHelper
{
/**
* Get a list of sampledata.
*
* @return mixed An array of sampledata, or false on error.
*
* @since 3.8.0
*/
public static function getList()
{
JPluginHelper::importPlugin('sampledata');
$dispatcher = JEventDispatcher::getInstance();
$data = $dispatcher->trigger('onSampledataGetOverview', array('test', 'foo'));
return $data;
}
}
tmpl/default.php 0000604 00000003747 15245561525 0007676 0 ustar 00 <?php
/**
* @package Joomla.Administrator
* @subpackage mod_sampledata
*
* @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
use Joomla\CMS\Session\Session;
JHtml::_('jquery.framework');
JHtml::_('bootstrap.tooltip');
JHtml::_('script', 'mod_sampledata/sampledata-process.js', false, true);
JText::script('MOD_SAMPLEDATA_CONFIRM_START');
JText::script('MOD_SAMPLEDATA_ITEM_ALREADY_PROCESSED');
JText::script('MOD_SAMPLEDATA_INVALID_RESPONSE');
JFactory::getDocument()->addScriptDeclaration('
var modSampledataUrl = "index.php?option=com_ajax&format=json&group=sampledata&' . Session::getFormToken() . '=1",
modSampledataIconProgress = "' . JUri::root(true) . '/media/jui/images/ajax-loader.gif";
');
?>
<div class="sampledata-container">
<?php if ($items) : ?>
<div class="row-striped">
<?php foreach($items as $i => $item) : ?>
<div class="row-fluid sampledata-<?php echo $item->name; ?>">
<div class="span4">
<a href="#" onclick="sampledataApply(this)" data-type="<?php echo $item->name; ?>" data-steps="<?php echo $item->steps; ?>">
<strong class="row-title">
<span class="icon-<?php echo $item->icon; ?>" aria-hidden="true"> </span>
<?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?>
</strong>
</a>
</div>
<div class="span6">
<small>
<?php echo $item->description; ?>
</small>
</div>
</div>
<!-- Progress bar -->
<div class="row-fluid sampledata-progress-<?php echo $item->name; ?> hide">
<progress class="span12"></progress>
</div>
<!-- Progress messages -->
<div class="row-fluid sampledata-progress-<?php echo $item->name; ?> hide">
<ul class="unstyled"></ul>
</div>
<?php endforeach; ?>
</div>
<?php else : ?>
<div class="alert"><?php echo JText::_('JGLOBAL_NO_MATCHING_RESULTS');?></div>
<?php endif; ?>
</div>