Updated with JCB v2.9.15
This commit is contained in:
parent
1f8a137949
commit
c821474e7d
@ -10,7 +10,7 @@ Just a basic demo of the most basic implementations of the [Joomla](http://www.j
|
||||
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
|
||||
+ *Name*: [Demo](https://www.vdm.io/)
|
||||
+ *First Build*: 18th October, 2016
|
||||
+ *Last Build*: 13th September, 2018
|
||||
+ *Last Build*: 23rd April, 2019
|
||||
+ *Version*: 2.0.0
|
||||
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
|
||||
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||
@ -23,7 +23,7 @@ due to [Automated Component Builder](https://www.vdm.io/joomla-component-builder
|
||||
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
|
||||
> never making one mistake or taking any coffee break.)
|
||||
|
||||
+ *Line count*: **14920**
|
||||
+ *Line count*: **14891**
|
||||
+ *File count*: **147**
|
||||
+ *Folder count*: **54**
|
||||
|
||||
|
@ -10,7 +10,7 @@ Just a basic demo of the most basic implementations of the [Joomla](http://www.j
|
||||
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
|
||||
+ *Name*: [Demo](https://www.vdm.io/)
|
||||
+ *First Build*: 18th October, 2016
|
||||
+ *Last Build*: 13th September, 2018
|
||||
+ *Last Build*: 23rd April, 2019
|
||||
+ *Version*: 2.0.0
|
||||
+ *Copyright*: Copyright (C) 2015. All Rights Reserved
|
||||
+ *License*: GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
|
||||
@ -23,7 +23,7 @@ due to [Automated Component Builder](https://www.vdm.io/joomla-component-builder
|
||||
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
|
||||
> never making one mistake or taking any coffee break.)
|
||||
|
||||
+ *Line count*: **14920**
|
||||
+ *Line count*: **14891**
|
||||
+ *File count*: **147**
|
||||
+ *Folder count*: **54**
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage admin.css
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage dashboard.css
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage look.css
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage looks.css
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage admin.js
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage controller.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage demo.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage import.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage look.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage looks.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage demo.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage demo.php
|
||||
@ -27,7 +27,7 @@ defined('_JEXEC') or die('Restricted access');
|
||||
abstract class DemoHelper
|
||||
{
|
||||
/**
|
||||
* Load the Component xml manifest.
|
||||
* Load the Component xml manifest.
|
||||
**/
|
||||
public static function manifest()
|
||||
{
|
||||
@ -36,12 +36,12 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Joomla version object
|
||||
* Joomla version object
|
||||
**/
|
||||
protected static $JVersion;
|
||||
|
||||
/**
|
||||
* set/get Joomla version
|
||||
* set/get Joomla version
|
||||
**/
|
||||
public static function jVersion()
|
||||
{
|
||||
@ -54,7 +54,7 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Load the Contributors details.
|
||||
* Load the Contributors details.
|
||||
**/
|
||||
public static function getContributors()
|
||||
{
|
||||
@ -100,7 +100,7 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Configure the Linkbar.
|
||||
* Configure the Linkbar.
|
||||
**/
|
||||
public static function addSubmenu($submenu)
|
||||
{
|
||||
@ -602,183 +602,149 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the actions permissions
|
||||
* Get the action permissions
|
||||
*
|
||||
* @param string $view The related view name
|
||||
* @param int $record The item to act upon
|
||||
* @param string $views The related list view name
|
||||
* @param mixed $target Only get this permission (like edit, create, delete)
|
||||
* @param string $component The target component
|
||||
*
|
||||
* @return object The JObject of permission/authorised actions
|
||||
*
|
||||
**/
|
||||
public static function getActions($view,&$record = null,$views = null)
|
||||
public static function getActions($view, &$record = null, $views = null, $target = null, $component = 'demo')
|
||||
{
|
||||
jimport('joomla.access.access');
|
||||
|
||||
$user = JFactory::getUser();
|
||||
$result = new JObject;
|
||||
$view = self::safeString($view);
|
||||
// get the user object
|
||||
$user = JFactory::getUser();
|
||||
// load the JObject
|
||||
$result = new JObject;
|
||||
// make view name safe (just incase)
|
||||
$view = self::safeString($view);
|
||||
if (self::checkString($views))
|
||||
{
|
||||
$views = self::safeString($views);
|
||||
}
|
||||
// get all actions from component
|
||||
$actions = JAccess::getActions('com_demo', 'component');
|
||||
// set acctions only set in component settiongs
|
||||
$componentActions = array('core.admin','core.manage','core.options','core.export');
|
||||
$actions = JAccess::getActionsFromFile(
|
||||
JPATH_ADMINISTRATOR . '/components/com_' . $component . '/access.xml',
|
||||
"/access/section[@name='component']/"
|
||||
);
|
||||
// if non found then return empty JObject
|
||||
if (empty($actions))
|
||||
{
|
||||
return $result;
|
||||
}
|
||||
// get created by if not found
|
||||
if (self::checkObject($record) && !isset($record->created_by) && isset($record->id))
|
||||
{
|
||||
$record->created_by = self::getVar($view, $record->id, 'id', 'created_by', '=', $component);
|
||||
}
|
||||
// set actions only set in component settings
|
||||
$componentActions = array('core.admin', 'core.manage', 'core.options', 'core.export');
|
||||
// check if we have a target
|
||||
$checkTarget = false;
|
||||
if ($target)
|
||||
{
|
||||
// convert to an array
|
||||
if (self::checkString($target))
|
||||
{
|
||||
$target = array($target);
|
||||
}
|
||||
// check if we are good to go
|
||||
if (self::checkArray($target))
|
||||
{
|
||||
$checkTarget = true;
|
||||
}
|
||||
}
|
||||
// loop the actions and set the permissions
|
||||
foreach ($actions as $action)
|
||||
{
|
||||
// set to use component default
|
||||
$fallback= true;
|
||||
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name,$componentActions))
|
||||
// check target action filter
|
||||
if ($checkTarget && self::filterActions($view, $action->name, $target))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
// set to use component default
|
||||
$fallback = true;
|
||||
// reset permission per/action
|
||||
$permission = false;
|
||||
$catpermission = false;
|
||||
// set area
|
||||
$area = 'comp';
|
||||
// check if the record has an ID and the action is item related (not a component action)
|
||||
if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) &&
|
||||
(strpos($action->name, 'core.') !== false || strpos($action->name, $view . '.') !== false))
|
||||
{
|
||||
// we are in item
|
||||
$area = 'item';
|
||||
// The record has been set. Check the record permissions.
|
||||
$permission = $user->authorise($action->name, 'com_demo.'.$view.'.' . (int) $record->id);
|
||||
if (!$permission) // TODO removed && !is_null($permission)
|
||||
$permission = $user->authorise($action->name, 'com_' . $component . '.' . $view . '.' . (int) $record->id);
|
||||
// if no permission found, check edit own
|
||||
if (!$permission)
|
||||
{
|
||||
if ($action->name == 'core.edit' || $action->name == $view.'.edit')
|
||||
// With edit, if the created_by matches current user then dig deeper.
|
||||
if (($action->name === 'core.edit' || $action->name === $view . '.edit') && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
if ($user->authorise('core.edit.own', 'com_demo.'.$view.'.' . (int) $record->id))
|
||||
// the correct target
|
||||
$coreCheck = (array) explode('.', $action->name);
|
||||
// check that we have both local and global access
|
||||
if ($user->authorise($coreCheck[0] . '.edit.own', 'com_' . $component . '.' . $view . '.' . (int) $record->id) &&
|
||||
$user->authorise($coreCheck[0] . '.edit.own', 'com_' . $component))
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
// allow edit
|
||||
$result->set($action->name, true);
|
||||
// set not to use global default
|
||||
// because we already validated it
|
||||
$fallback = false;
|
||||
}
|
||||
elseif ($user->authorise($view.'edit.own', 'com_demo.'.$view.'.' . (int) $record->id))
|
||||
else
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
}
|
||||
elseif ($user->authorise('core.edit.own', 'com_demo'))
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
}
|
||||
elseif ($user->authorise($view.'edit.own', 'com_demo'))
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
// do not allow edit
|
||||
$result->set($action->name, false);
|
||||
$fallback = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif (self::checkString($views) && isset($record->catid) && $record->catid > 0)
|
||||
{
|
||||
// we are in item
|
||||
$area = 'category';
|
||||
// set the core check
|
||||
$coreCheck = explode('.', $action->name);
|
||||
$core = $coreCheck[0];
|
||||
// make sure we use the core. action check for the categories
|
||||
if (strpos($action->name,$view) !== false && strpos($action->name,'core.') === false ) {
|
||||
$coreCheck = explode('.',$action->name);
|
||||
$coreCheck[0] = 'core';
|
||||
$categoryCheck = implode('.',$coreCheck);
|
||||
if (strpos($action->name, $view) !== false && strpos($action->name, 'core.') === false )
|
||||
{
|
||||
$coreCheck[0] = 'core';
|
||||
$categoryCheck = implode('.', $coreCheck);
|
||||
}
|
||||
else
|
||||
{
|
||||
$categoryCheck = $action->name;
|
||||
}
|
||||
// The record has a category. Check the category permissions.
|
||||
$catpermission = $user->authorise($categoryCheck, 'com_demo.'.$views.'.category.' . (int) $record->catid);
|
||||
$catpermission = $user->authorise($categoryCheck, 'com_' . $component . '.' . $views . '.category.' . (int) $record->catid);
|
||||
if (!$catpermission && !is_null($catpermission))
|
||||
{
|
||||
if ($action->name == 'core.edit' || $action->name == $view.'.edit')
|
||||
// With edit, if the created_by matches current user then dig deeper.
|
||||
if (($action->name === 'core.edit' || $action->name === $view . '.edit') && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
if ($user->authorise('core.edit.own', 'com_demo.'.$views.'.category.' . (int) $record->catid))
|
||||
// check that we have both local and global access
|
||||
if ($user->authorise('core.edit.own', 'com_' . $component . '.' . $views . '.category.' . (int) $record->catid) &&
|
||||
$user->authorise($core . '.edit.own', 'com_' . $component))
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
// allow edit
|
||||
$result->set($action->name, true);
|
||||
// set not to use global default
|
||||
// because we already validated it
|
||||
$fallback = false;
|
||||
}
|
||||
elseif ($user->authorise($view.'edit.own', 'com_demo.'.$views.'.category.' . (int) $record->catid))
|
||||
else
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
}
|
||||
elseif ($user->authorise('core.edit.own', 'com_demo'))
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
}
|
||||
elseif ($user->authorise($view.'edit.own', 'com_demo'))
|
||||
{
|
||||
// If the owner matches 'me' then allow.
|
||||
if (isset($record->created_by) && $record->created_by > 0 && ($record->created_by == $user->id))
|
||||
{
|
||||
$result->set($action->name, true);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$result->set($action->name, false);
|
||||
// set not to use component default
|
||||
$fallback= false;
|
||||
}
|
||||
// do not allow edit
|
||||
$result->set($action->name, false);
|
||||
$fallback = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -787,14 +753,49 @@ abstract class DemoHelper
|
||||
// if allowed then fallback on component global settings
|
||||
if ($fallback)
|
||||
{
|
||||
$result->set($action->name, $user->authorise($action->name, 'com_demo'));
|
||||
// if item/category blocks access then don't fall back on global
|
||||
if ((($area === 'item') && !$permission) || (($area === 'category') && !$catpermission))
|
||||
{
|
||||
// do not allow
|
||||
$result->set($action->name, false);
|
||||
}
|
||||
// Finally remember the global settings have the final say. (even if item allow)
|
||||
// The local item permissions can block, but it can't open and override of global permissions.
|
||||
// Since items are created by users and global permissions is set by system admin.
|
||||
else
|
||||
{
|
||||
$result->set($action->name, $user->authorise($action->name, 'com_' . $component));
|
||||
}
|
||||
}
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get any component's model
|
||||
* Filter the action permissions
|
||||
*
|
||||
* @param string $action The action to check
|
||||
* @param array $targets The array of target actions
|
||||
*
|
||||
* @return boolean true if action should be filtered out
|
||||
*
|
||||
**/
|
||||
protected static function filterActions(&$view, &$action, &$targets)
|
||||
{
|
||||
foreach ($targets as $target)
|
||||
{
|
||||
if (strpos($action, $view . '.' . $target) !== false ||
|
||||
strpos($action, 'core.' . $target) !== false)
|
||||
{
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get any component's model
|
||||
**/
|
||||
public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $component = 'Demo', $config = array())
|
||||
{
|
||||
@ -838,9 +839,9 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Add to asset Table
|
||||
* Add to asset Table
|
||||
*/
|
||||
public static function setAsset($id,$table)
|
||||
public static function setAsset($id, $table, $inherit = true)
|
||||
{
|
||||
$parent = JTable::getInstance('Asset');
|
||||
$parent->loadByName('com_demo');
|
||||
@ -872,7 +873,7 @@ abstract class DemoHelper
|
||||
$asset->name = $name;
|
||||
$asset->title = $title;
|
||||
// get the default asset rules
|
||||
$rules = self::getDefaultAssetRules('com_demo',$table);
|
||||
$rules = self::getDefaultAssetRules('com_demo', $table, $inherit);
|
||||
if ($rules instanceof JAccessRules)
|
||||
{
|
||||
$asset->rules = (string) $rules;
|
||||
@ -900,55 +901,62 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the default asset Rules for a component/view.
|
||||
* Gets the default asset Rules for a component/view.
|
||||
*/
|
||||
protected static function getDefaultAssetRules($component,$view)
|
||||
protected static function getDefaultAssetRules($component, $view, $inherit = true)
|
||||
{
|
||||
// Need to find the asset id by the name of the component.
|
||||
$db = JFactory::getDbo();
|
||||
$query = $db->getQuery(true)
|
||||
->select($db->quoteName('id'))
|
||||
->from($db->quoteName('#__assets'))
|
||||
->where($db->quoteName('name') . ' = ' . $db->quote($component));
|
||||
$db->setQuery($query);
|
||||
$db->execute();
|
||||
if ($db->loadRowList())
|
||||
// if new or inherited
|
||||
$assetId = 0;
|
||||
// Only get the actual item rules if not inheriting
|
||||
if (!$inherit)
|
||||
{
|
||||
// asset alread set so use saved rules
|
||||
$assetId = (int) $db->loadResult();
|
||||
$result = JAccess::getAssetRules($assetId);
|
||||
if ($result instanceof JAccessRules)
|
||||
// Need to find the asset id by the name of the component.
|
||||
$db = JFactory::getDbo();
|
||||
$query = $db->getQuery(true)
|
||||
->select($db->quoteName('id'))
|
||||
->from($db->quoteName('#__assets'))
|
||||
->where($db->quoteName('name') . ' = ' . $db->quote($component));
|
||||
$db->setQuery($query);
|
||||
$db->execute();
|
||||
// check that there is a value
|
||||
if ($db->getNumRows())
|
||||
{
|
||||
$_result = (string) $result;
|
||||
$_result = json_decode($_result);
|
||||
foreach ($_result as $name => &$rule)
|
||||
{
|
||||
$v = explode('.', $name);
|
||||
if ($view !== $v[0])
|
||||
{
|
||||
// remove since it is not part of this view
|
||||
unset($_result->$name);
|
||||
}
|
||||
else
|
||||
{
|
||||
// clear the value since we inherit
|
||||
$rule = array();
|
||||
}
|
||||
}
|
||||
// check if there are any view values remaining
|
||||
if (count((array)$_result))
|
||||
{
|
||||
$_result = json_encode($_result);
|
||||
$_result = array($_result);
|
||||
// Instantiate and return the JAccessRules object for the asset rules.
|
||||
$rules = new JAccessRules($_result);
|
||||
|
||||
return $rules;
|
||||
}
|
||||
return $result;
|
||||
// asset already set so use saved rules
|
||||
$assetId = (int) $db->loadResult();
|
||||
}
|
||||
}
|
||||
return JAccess::getAssetRules(0);
|
||||
// get asset rules
|
||||
$result = JAccess::getAssetRules($assetId);
|
||||
if ($result instanceof JAccessRules)
|
||||
{
|
||||
$_result = (string) $result;
|
||||
$_result = json_decode($_result);
|
||||
foreach ($_result as $name => &$rule)
|
||||
{
|
||||
$v = explode('.', $name);
|
||||
if ($view !== $v[0])
|
||||
{
|
||||
// remove since it is not part of this view
|
||||
unset($_result->$name);
|
||||
}
|
||||
elseif ($inherit)
|
||||
{
|
||||
// clear the value since we inherit
|
||||
$rule = array();
|
||||
}
|
||||
}
|
||||
// check if there are any view values remaining
|
||||
if (count($_result))
|
||||
{
|
||||
$_result = json_encode($_result);
|
||||
$_result = array($_result);
|
||||
// Instantiate and return the JAccessRules object for the asset rules.
|
||||
$rules = new JAccessRules($_result);
|
||||
// return filtered rules
|
||||
return $rules;
|
||||
}
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1117,11 +1125,11 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if have an json string
|
||||
* Check if have an json string
|
||||
*
|
||||
* @input string The json string to check
|
||||
* @input string The json string to check
|
||||
*
|
||||
* @returns bool true on success
|
||||
* @returns bool true on success
|
||||
**/
|
||||
public static function checkJson($string)
|
||||
{
|
||||
@ -1134,11 +1142,11 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if have an object with a length
|
||||
* Check if have an object with a length
|
||||
*
|
||||
* @input object The object to check
|
||||
* @input object The object to check
|
||||
*
|
||||
* @returns bool true on success
|
||||
* @returns bool true on success
|
||||
**/
|
||||
public static function checkObject($object)
|
||||
{
|
||||
@ -1150,15 +1158,15 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if have an array with a length
|
||||
* Check if have an array with a length
|
||||
*
|
||||
* @input array The array to check
|
||||
* @input array The array to check
|
||||
*
|
||||
* @returns bool true on success
|
||||
* @returns bool/int number of items in array on success
|
||||
**/
|
||||
public static function checkArray($array, $removeEmptyString = false)
|
||||
{
|
||||
if (isset($array) && is_array($array) && count((array)$array) > 0)
|
||||
if (isset($array) && is_array($array) && ($nr = count((array)$array)) > 0)
|
||||
{
|
||||
// also make sure the empty strings are removed
|
||||
if ($removeEmptyString)
|
||||
@ -1172,17 +1180,17 @@ abstract class DemoHelper
|
||||
}
|
||||
return self::checkArray($array, false);
|
||||
}
|
||||
return true;
|
||||
return $nr;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if have a string with a length
|
||||
* Check if have a string with a length
|
||||
*
|
||||
* @input string The string to check
|
||||
* @input string The string to check
|
||||
*
|
||||
* @returns bool true on success
|
||||
* @returns bool true on success
|
||||
**/
|
||||
public static function checkString($string)
|
||||
{
|
||||
@ -1194,10 +1202,10 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if we are connected
|
||||
* Thanks https://stackoverflow.com/a/4860432/1429677
|
||||
* Check if we are connected
|
||||
* Thanks https://stackoverflow.com/a/4860432/1429677
|
||||
*
|
||||
* @returns bool true on success
|
||||
* @returns bool true on success
|
||||
**/
|
||||
public static function isConnected()
|
||||
{
|
||||
@ -1219,11 +1227,11 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Merge an array of array's
|
||||
* Merge an array of array's
|
||||
*
|
||||
* @input array The arrays you would like to merge
|
||||
* @input array The arrays you would like to merge
|
||||
*
|
||||
* @returns array on success
|
||||
* @returns array on success
|
||||
**/
|
||||
public static function mergeArrays($arrays)
|
||||
{
|
||||
@ -1249,11 +1257,11 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Shorten a string
|
||||
* Shorten a string
|
||||
*
|
||||
* @input string The you would like to shorten
|
||||
* @input string The you would like to shorten
|
||||
*
|
||||
* @returns string on success
|
||||
* @returns string on success
|
||||
**/
|
||||
public static function shorten($string, $length = 40, $addTip = true)
|
||||
{
|
||||
@ -1290,11 +1298,11 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Making strings safe (various ways)
|
||||
* Making strings safe (various ways)
|
||||
*
|
||||
* @input string The you would like to make safe
|
||||
* @input string The you would like to make safe
|
||||
*
|
||||
* @returns string on success
|
||||
* @returns string on success
|
||||
**/
|
||||
public static function safeString($string, $type = 'L', $spacer = '_', $replaceNumbers = true, $keepOnlyCharacters = true)
|
||||
{
|
||||
@ -1434,11 +1442,11 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert an integer into an English word string
|
||||
* Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988>
|
||||
* Convert an integer into an English word string
|
||||
* Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988>
|
||||
*
|
||||
* @input an int
|
||||
* @returns a string
|
||||
* @input an int
|
||||
* @returns a string
|
||||
**/
|
||||
public static function numberToString($x)
|
||||
{
|
||||
@ -1525,9 +1533,9 @@ abstract class DemoHelper
|
||||
}
|
||||
|
||||
/**
|
||||
* Random Key
|
||||
* Random Key
|
||||
*
|
||||
* @returns a string
|
||||
* @returns a string
|
||||
**/
|
||||
public static function randomkey($size)
|
||||
{
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage headercheck.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage batch_.php
|
||||
|
@ -44,7 +44,7 @@ COM_DEMO_LOOKS_IMPORT="Looks Import"
|
||||
COM_DEMO_LOOKS_IMPORT_DESC="Allows the users in this group to import import looks"
|
||||
COM_DEMO_LOOKS_SUBMENU="Looks Submenu"
|
||||
COM_DEMO_LOOKS_SUBMENU_DESC="Allows the users in this group to submenu of look"
|
||||
COM_DEMO_MENU="» Demo"
|
||||
COM_DEMO_MENU="Demo"
|
||||
COM_DEMO_MENU_LOOKS="Looks"
|
||||
COM_DEMO_MENU_LOOKS_DESC="The List of all published looks"
|
||||
COM_DEMO_MENU_LOOKS_OPTION="Looks"
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage batchselection.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage details_above.php
|
||||
@ -23,14 +23,19 @@ defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
$form = $displayData->getForm();
|
||||
|
||||
$fields = array(
|
||||
$fields = $displayData->get('fields') ?: array(
|
||||
'name',
|
||||
'alias'
|
||||
);
|
||||
|
||||
$hiddenFields = $displayData->get('hidden_fields') ?: array();
|
||||
|
||||
?>
|
||||
<div class="form-inline form-inline-header">
|
||||
<?php foreach($fields as $field){
|
||||
echo $form->renderField($field);
|
||||
} ?>
|
||||
<?php foreach($fields as $field): ?>
|
||||
<?php if (in_array($field, $hiddenFields)) : ?>
|
||||
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage details_fullwidth.php
|
||||
@ -27,16 +27,14 @@ $fields = $displayData->get('fields') ?: array(
|
||||
'description'
|
||||
);
|
||||
|
||||
$hiddenFields = $displayData->get('hidden_fields') ?: array();
|
||||
|
||||
?>
|
||||
<div class="form-vertical">
|
||||
<?php foreach($fields as $field): ?>
|
||||
<div class="control-group">
|
||||
<div class="control-label">
|
||||
<?php echo $form->getLabel($field); ?>
|
||||
</div>
|
||||
<div class="controls">
|
||||
<?php echo $form->getInput($field); ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<?php foreach($fields as $field): ?>
|
||||
<?php if (in_array($field, $hiddenFields)) : ?>
|
||||
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage details_under.php
|
||||
@ -23,13 +23,18 @@ defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
$form = $displayData->getForm();
|
||||
|
||||
$fields = array(
|
||||
$fields = $displayData->get('fields') ?: array(
|
||||
'not_required'
|
||||
);
|
||||
|
||||
$hiddenFields = $displayData->get('hidden_fields') ?: array();
|
||||
|
||||
?>
|
||||
<div class="form-inline form-inline-header">
|
||||
<?php foreach($fields as $field){
|
||||
echo $form->renderField($field);
|
||||
} ?>
|
||||
<?php foreach($fields as $field): ?>
|
||||
<?php if (in_array($field, $hiddenFields)) : ?>
|
||||
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage metadata.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage more_left.php
|
||||
@ -29,20 +29,10 @@ $fields = $displayData->get('fields') ?: array(
|
||||
|
||||
$hiddenFields = $displayData->get('hidden_fields') ?: array();
|
||||
|
||||
foreach ($fields as $field)
|
||||
{
|
||||
$field = is_array($field) ? $field : array($field);
|
||||
foreach ($field as $f)
|
||||
{
|
||||
if ($form->getField($f))
|
||||
{
|
||||
if (in_array($f, $hiddenFields))
|
||||
{
|
||||
$form->setFieldAttribute($f, 'type', 'hidden');
|
||||
}
|
||||
|
||||
echo $form->renderField($f);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php foreach($fields as $field): ?>
|
||||
<?php if (in_array($field, $hiddenFields)) : ?>
|
||||
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
|
||||
<?php endforeach; ?>
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage more_right.php
|
||||
@ -33,20 +33,10 @@ $fields = $displayData->get('fields') ?: array(
|
||||
|
||||
$hiddenFields = $displayData->get('hidden_fields') ?: array();
|
||||
|
||||
foreach ($fields as $field)
|
||||
{
|
||||
$field = is_array($field) ? $field : array($field);
|
||||
foreach ($field as $f)
|
||||
{
|
||||
if ($form->getField($f))
|
||||
{
|
||||
if (in_array($f, $hiddenFields))
|
||||
{
|
||||
$form->setFieldAttribute($f, 'type', 'hidden');
|
||||
}
|
||||
|
||||
echo $form->renderField($f);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php foreach($fields as $field): ?>
|
||||
<?php if (in_array($field, $hiddenFields)) : ?>
|
||||
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
|
||||
<?php endforeach; ?>
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage publishing.php
|
||||
@ -21,7 +21,6 @@
|
||||
// No direct access to this file
|
||||
defined('_JEXEC') or die('Restricted access');
|
||||
|
||||
$app = JFactory::getApplication();
|
||||
$form = $displayData->getForm();
|
||||
|
||||
$fields = $displayData->get('fields') ?: array(
|
||||
@ -39,20 +38,10 @@ $fields = $displayData->get('fields') ?: array(
|
||||
|
||||
$hiddenFields = $displayData->get('hidden_fields') ?: array();
|
||||
|
||||
foreach ($fields as $field)
|
||||
{
|
||||
$field = is_array($field) ? $field : array($field);
|
||||
foreach ($field as $f)
|
||||
{
|
||||
if ($form->getField($f))
|
||||
{
|
||||
if (in_array($f, $hiddenFields))
|
||||
{
|
||||
$form->setFieldAttribute($f, 'type', 'hidden');
|
||||
}
|
||||
|
||||
echo $form->renderField($f);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php foreach($fields as $field): ?>
|
||||
<?php if (in_array($field, $hiddenFields)) : ?>
|
||||
<?php $form->setFieldAttribute($field, 'type', 'hidden'); ?>
|
||||
<?php endif; ?>
|
||||
<?php echo $form->renderField($field, null, null, array('class' => 'control-wrapper-' . $field)); ?>
|
||||
<?php endforeach; ?>
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage demo.php
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage look.js
|
||||
|
@ -167,13 +167,14 @@
|
||||
minyear="-120"
|
||||
maxyear="-1"
|
||||
/>
|
||||
<!-- Mobile_phone Field. Type: Tel. (joomla) -->
|
||||
<!-- Mobile_phone Field. Type: Text. (joomla) -->
|
||||
<field
|
||||
type="tel"
|
||||
type="text"
|
||||
name="mobile_phone"
|
||||
label="COM_DEMO_LOOK_MOBILE_PHONE_LABEL"
|
||||
size="10"
|
||||
maxlength="50"
|
||||
default=""
|
||||
description="COM_DEMO_LOOK_MOBILE_PHONE_DESCRIPTION"
|
||||
class="text_area"
|
||||
required="true"
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage import.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage look.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage looks.php
|
||||
|
@ -9,9 +9,8 @@ CREATE TABLE IF NOT EXISTS `#__demo_look` (
|
||||
`image` CHAR(64) NOT NULL DEFAULT '',
|
||||
`mobile_phone` VARCHAR(64) NOT NULL DEFAULT '',
|
||||
`name` VARCHAR(255) NOT NULL DEFAULT '',
|
||||
`not_required` INT(1) NOT NULL DEFAULT 0,
|
||||
`website` VARCHAR(255) NOT NULL DEFAULT '',
|
||||
`params` text NOT NULL DEFAULT '',
|
||||
`params` text NOT NULL,
|
||||
`published` TINYINT(3) NOT NULL DEFAULT 1,
|
||||
`created_by` INT(10) unsigned NOT NULL DEFAULT 0,
|
||||
`modified_by` INT(10) unsigned NOT NULL DEFAULT 0,
|
||||
@ -23,9 +22,9 @@ CREATE TABLE IF NOT EXISTS `#__demo_look` (
|
||||
`hits` INT(10) unsigned NOT NULL DEFAULT 0,
|
||||
`access` INT(10) unsigned NOT NULL DEFAULT 0,
|
||||
`ordering` INT(11) NOT NULL DEFAULT 0,
|
||||
`metakey` TEXT NOT NULL DEFAULT '',
|
||||
`metadesc` TEXT NOT NULL DEFAULT '',
|
||||
`metadata` TEXT NOT NULL DEFAULT '',
|
||||
`metakey` TEXT NOT NULL,
|
||||
`metadesc` TEXT NOT NULL,
|
||||
`metadata` TEXT NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_access` (`access`),
|
||||
KEY `idx_checkout` (`checked_out`),
|
||||
@ -35,7 +34,7 @@ CREATE TABLE IF NOT EXISTS `#__demo_look` (
|
||||
KEY `idx_name` (`name`),
|
||||
KEY `idx_add` (`add`),
|
||||
KEY `idx_alias` (`alias`)
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 DEFAULT COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage look.php
|
||||
@ -229,7 +229,7 @@ class DemoTableLook extends JTable
|
||||
{
|
||||
// asset alread set so use saved rules
|
||||
$assetId = (int) $db->loadResult();
|
||||
return JAccess::getAssetRules($assetId);
|
||||
return JAccess::getAssetRules($assetId); // (TODO) instead of keeping inherited Allowed it becomes Allowed.
|
||||
}
|
||||
// try again
|
||||
elseif ($try)
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_main.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_vdm.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage view.html.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage view.html.php
|
||||
|
@ -3,7 +3,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage submitbutton.js
|
||||
@ -22,19 +22,9 @@ Joomla.submitbutton = function(task)
|
||||
if (task == ''){
|
||||
return false;
|
||||
} else {
|
||||
var isValid=true;
|
||||
var action = task.split('.');
|
||||
if (action[1] != 'cancel' && action[1] != 'close'){
|
||||
var forms = $$('form.form-validate');
|
||||
for (var i=0;i<forms.length;i++){
|
||||
if (!document.formvalidator.isValid(forms[i])){
|
||||
isValid = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (isValid){
|
||||
Joomla.submitform(task);
|
||||
if (action[1] == 'cancel' || action[1] == 'close' || document.formvalidator.isValid(document.getElementById("adminForm"))){
|
||||
Joomla.submitform(task, document.getElementById("adminForm"));
|
||||
return true;
|
||||
} else {
|
||||
alert(Joomla.JText._('look, some values are not acceptable.','Some values are unacceptable'));
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage edit.php
|
||||
@ -26,7 +26,7 @@ JHtml::_('behavior.tooltip');
|
||||
JHtml::_('behavior.formvalidation');
|
||||
JHtml::_('formbehavior.chosen', 'select');
|
||||
JHtml::_('behavior.keepalive');
|
||||
$componentParams = JComponentHelper::getParams('com_demo');
|
||||
$componentParams = $this->params; // will be removed just use $this->params instead
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
// waiting spinner
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage view.html.php
|
||||
@ -32,13 +32,15 @@ class DemoViewLook extends JViewLegacy
|
||||
*/
|
||||
public function display($tpl = null)
|
||||
{
|
||||
// set params
|
||||
$this->params = JComponentHelper::getParams('com_demo');
|
||||
// Assign the variables
|
||||
$this->form = $this->get('Form');
|
||||
$this->item = $this->get('Item');
|
||||
$this->script = $this->get('Script');
|
||||
$this->state = $this->get('State');
|
||||
// get action permissions
|
||||
$this->canDo = DemoHelper::getActions('look',$this->item);
|
||||
$this->canDo = DemoHelper::getActions('look', $this->item);
|
||||
// get input
|
||||
$jinput = JFactory::getApplication()->input;
|
||||
$this->ref = $jinput->get('ref', 0, 'word');
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_batch_body.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_batch_footer.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_body.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_foot.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_head.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage default_toolbar.php
|
||||
|
@ -4,7 +4,7 @@
|
||||
/-------------------------------------------------------------------------------------------------------/
|
||||
|
||||
@version 2.0.0
|
||||
@build 13th September, 2018
|
||||
@build 23rd April, 2019
|
||||
@created 18th October, 2016
|
||||
@package Demo
|
||||
@subpackage view.html.php
|
||||
@ -46,6 +46,8 @@ class DemoViewLooks extends JViewLegacy
|
||||
$this->listOrder = $this->escape($this->state->get('list.ordering'));
|
||||
$this->listDirn = $this->escape($this->state->get('list.direction'));
|
||||
$this->saveOrder = $this->listOrder == 'ordering';
|
||||
// set the return here value
|
||||
$this->return_here = urlencode(base64_encode((string) JUri::getInstance()));
|
||||
// get global action permissions
|
||||
$this->canDo = DemoHelper::getActions('look');
|
||||
$this->canEdit = $this->canDo->get('look.edit');
|
||||
|
14
demo.xml
14
demo.xml
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<extension type="component" version="3.2" method="upgrade">
|
||||
<name>COM_DEMO</name>
|
||||
<creationDate>13th September, 2018</creationDate>
|
||||
<creationDate>23rd April, 2019</creationDate>
|
||||
<author>Llewellyn van der Merwe</author>
|
||||
<authorEmail>joomla@vdm.io</authorEmail>
|
||||
<authorUrl>https://www.vdm.io/</authorUrl>
|
||||
@ -51,7 +51,10 @@
|
||||
<filename>controller.php</filename>
|
||||
<filename>index.html</filename>
|
||||
<filename>router.php</filename>
|
||||
<filename>demo.php</filename>
|
||||
<filename>demo.php</filename>
|
||||
<filename>demo.php</filename>
|
||||
<filename>router.php</filename>
|
||||
<filename>controller.php</filename>
|
||||
<folder>assets</folder>
|
||||
<folder>helpers</folder>
|
||||
<folder>controllers</folder>
|
||||
@ -74,9 +77,14 @@
|
||||
<files folder="admin">
|
||||
<filename>access.xml</filename>
|
||||
<filename>config.xml</filename>
|
||||
<filename>controller.php</filename>###WHMCS_ENCRYPT_FILE###
|
||||
<filename>controller.php</filename>
|
||||
<filename>index.html</filename>
|
||||
<filename>demo.php</filename>
|
||||
<filename>access.xml</filename>
|
||||
<filename>config.xml</filename>
|
||||
<filename>controller.php</filename>
|
||||
<filename>demo.php</filename>
|
||||
<filename>README.txt</filename>
|
||||
<filename>README.txt</filename>
|
||||
<folder>assets</folder>
|
||||
<folder>controllers</folder>
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Accordion
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-accordion-title{margin-top:0;margin-bottom:15px;padding:5px 15px;background:#f5f5f5;font-size:18px;line-height:24px;cursor:pointer;border:1px solid #ddd;border-radius:4px}.uk-accordion-content{padding:0 15px 15px 15px}.uk-accordion-content:after,.uk-accordion-content:before{content:"";display:table}.uk-accordion-content:after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Accordion
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Accordion
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-accordion-title{margin-top:0;margin-bottom:15px;padding:5px 15px;background:#f7f7f7;font-size:18px;line-height:24px;cursor:pointer;border:1px solid #ddd;border-radius:4px}.uk-accordion-content{padding:0 15px 15px 15px}.uk-accordion-content:after,.uk-accordion-content:before{content:"";display:table}.uk-accordion-content:after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-accordion-title{margin-top:0;margin-bottom:15px;padding:5px 15px;background:#eee;font-size:18px;line-height:24px;cursor:pointer}.uk-accordion-content{padding:0 15px 15px 15px}.uk-accordion-content:after,.uk-accordion-content:before{content:"";display:table}.uk-accordion-content:after{clear:both}.uk-accordion-content>:last-child{margin-bottom:0}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Autocomplete
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-autocomplete{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-dropdown-flip{left:auto;right:0}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#00a8e6;color:#fff;outline:0;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Autocomplete
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Autocomplete
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-autocomplete{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-dropdown-flip{left:auto;right:0}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#009dd8;color:#fff;outline:0;box-shadow:inset 0 2px 4px rgba(0,0,0,.2);text-shadow:0 -1px 0 rgba(0,0,0,.2)}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-autocomplete{display:inline-block;position:relative;max-width:100%;vertical-align:middle}.uk-dropdown-flip{left:auto;right:0}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#00a8e6;color:#fff;outline:0}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Datepicker
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-datepicker{z-index:1050;width:auto;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:after,.uk-datepicker-nav:before{content:"";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-next:after,.uk-datepicker-previous:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table td,.uk-datepicker-table th{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none;border:1px solid transparent;border-radius:4px}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:focus,.uk-datepicker-table a:hover{background-color:#fafafa;color:#444;outline:0;border-color:rgba(0,0,0,.16);text-shadow:0 1px 0 #fff}.uk-datepicker-table a:active{background-color:#eee;color:#444}.uk-datepicker-table a.uk-active{background:#00a8e6;color:#fff;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Datepicker
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Datepicker
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-datepicker{z-index:1050;width:auto;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:after,.uk-datepicker-nav:before{content:"";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-next:after,.uk-datepicker-previous:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table td,.uk-datepicker-table th{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none;border:1px solid transparent;border-radius:4px;background-origin:border-box}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:focus,.uk-datepicker-table a:hover{background-color:#fafafa;color:#444;outline:0;border-color:rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.3);text-shadow:0 1px 0 #fff}.uk-datepicker-table a:active{background-color:#f5f5f5;color:#444;border-color:rgba(0,0,0,.2);border-top-color:rgba(0,0,0,.3);background-image:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-datepicker-table a.uk-active{background:#009dd8;color:#fff;border:1px solid rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.4);background-origin:border-box;background-image:-webkit-linear-gradient(top,#00b4f5,#008dc5);background-image:linear-gradient(to bottom,#00b4f5,#008dc5);text-shadow:0 -1px 0 rgba(0,0,0,.2)}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-datepicker{z-index:1050;width:auto;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:after,.uk-datepicker-nav:before{content:"";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-next:after,.uk-datepicker-previous:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table td,.uk-datepicker-table th{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:focus,.uk-datepicker-table a:hover{background-color:#ddd;color:#444;outline:0}.uk-datepicker-table a:active{background-color:#ccc;color:#444}.uk-datepicker-table a.uk-active{background:#00a8e6;color:#fff}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Dotnav
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-dotnav{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-top:-15px;padding:0;list-style:none}.uk-dotnav>*{-ms-flex:none;-webkit-flex:none;flex:none;padding-left:15px;margin-top:15px}.uk-dotnav:after,.uk-dotnav:before{content:"";display:block;overflow:hidden}.uk-dotnav:after{clear:both}.uk-dotnav>*{float:left}.uk-dotnav>*>*{display:block;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);text-indent:100%;overflow:hidden;white-space:nowrap;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>*>:active{background:rgba(50,50,50,.6)}.uk-dotnav>.uk-active>*{background:rgba(50,50,50,.4);-webkit-transform:scale(1.3);transform:scale(1.3)}.uk-dotnav-contrast>*>*{background:rgba(255,255,255,.4)}.uk-dotnav-contrast>*>:focus,.uk-dotnav-contrast>*>:hover{background:rgba(255,255,255,.7)}.uk-dotnav-contrast>*>:active{background:rgba(255,255,255,.9)}.uk-dotnav-contrast>.uk-active>*{background:rgba(255,255,255,.9)}.uk-dotnav-vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.uk-dotnav-vertical>*{float:none}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Dotnav
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Dotnav
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-dotnav{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-top:-15px;padding:0;list-style:none}.uk-dotnav>*{-ms-flex:none;-webkit-flex:none;flex:none;padding-left:15px;margin-top:15px}.uk-dotnav:after,.uk-dotnav:before{content:"";display:block;overflow:hidden}.uk-dotnav:after{clear:both}.uk-dotnav>*{float:left}.uk-dotnav>*>*{display:block;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);text-indent:100%;overflow:hidden;white-space:nowrap;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>*>:active{background:rgba(50,50,50,.6)}.uk-dotnav>.uk-active>*{background:rgba(50,50,50,.4);-webkit-transform:scale(1.3);transform:scale(1.3)}.uk-dotnav-contrast>*>*{background:rgba(255,255,255,.4)}.uk-dotnav-contrast>*>:focus,.uk-dotnav-contrast>*>:hover{background:rgba(255,255,255,.7)}.uk-dotnav-contrast>*>:active{background:rgba(255,255,255,.9)}.uk-dotnav-contrast>.uk-active>*{background:rgba(255,255,255,.9)}.uk-dotnav-vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.uk-dotnav-vertical>*{float:none}
|
2
media/uikit-v2/css/components/dotnav.min.css
vendored
2
media/uikit-v2/css/components/dotnav.min.css
vendored
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-dotnav{display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;margin-top:-15px;padding:0;list-style:none}.uk-dotnav>*{-ms-flex:none;-webkit-flex:none;flex:none;padding-left:15px;margin-top:15px}.uk-dotnav:after,.uk-dotnav:before{content:"";display:block;overflow:hidden}.uk-dotnav:after{clear:both}.uk-dotnav>*{float:left}.uk-dotnav>*>*{display:block;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);text-indent:100%;overflow:hidden;white-space:nowrap}.uk-dotnav>*>:focus,.uk-dotnav>*>:hover{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>*>:active{background:rgba(50,50,50,.6)}.uk-dotnav>.uk-active>*{background:rgba(50,50,50,.4)}.uk-dotnav-contrast>*>*{background:rgba(255,255,255,.4)}.uk-dotnav-contrast>*>:focus,.uk-dotnav-contrast>*>:hover{background:rgba(255,255,255,.7)}.uk-dotnav-contrast>*>:active{background:rgba(255,255,255,.9)}.uk-dotnav-contrast>.uk-active>*{background:rgba(255,255,255,.9)}.uk-dotnav-vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.uk-dotnav-vertical>*{float:none}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form advanced
|
||||
Note: Only works in Webkit at the moment
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:before,.uk-form input[type=radio]:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=checkbox]:indeterminate:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=checkbox]:indeterminate:before{content:"\f068"}.uk-form input[type=checkbox]:disabled,.uk-form input[type=radio]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before,.uk-form input[type=checkbox]:disabled:indeterminate:before{color:#aaa}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form advanced
|
||||
Note: Only works in Webkit at the moment
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form advanced
|
||||
Note: Only works in Webkit at the moment
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:before,.uk-form input[type=radio]:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=checkbox]:indeterminate:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=checkbox]:indeterminate:before{content:"\f068"}.uk-form input[type=checkbox]:disabled,.uk-form input[type=radio]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before,.uk-form input[type=checkbox]:disabled:indeterminate:before{color:#aaa}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:before,.uk-form input[type=radio]:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=checkbox]:indeterminate:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=checkbox]:indeterminate:before{content:"\f068"}.uk-form input[type=checkbox]:disabled,.uk-form input[type=radio]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before,.uk-form input[type=checkbox]:disabled:indeterminate:before{color:#aaa}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form file
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form file
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form file
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form password
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-password{display:inline-block;position:relative;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form password
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form password
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-password{display:inline-block;position:relative;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-password{display:inline-block;position:relative;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form select
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form select
|
||||
========================================================================== */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: Form select
|
||||
========================================================================== */
|
||||
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}
|
@ -1,2 +1,2 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}
|
@ -1,4 +1,4 @@
|
||||
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/*! UIkit 2.27.5 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||
/* ========================================================================
|
||||
Component: HTML editor
|
||||
========================================================================== */
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user