Update for version 2.7.7

This commit is contained in:
Llewellyn van der Merwe 2018-05-05 03:16:22 +02:00
parent bbec6265a1
commit 00f642156a
No known key found for this signature in database
GPG Key ID: CAD7B16D27AF28C5
368 changed files with 6364 additions and 4303 deletions

View File

@ -7,35 +7,35 @@ Just a basic demo of the most basic implementations of the [Joomla](http://www.j
# Build Details
+ *Company*: [Vast Development Method](https://www.vdm.io/)
+ *Author*: [Llewellyn van der Merwe](mailto:info@vdm.io)
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Demo](https://www.vdm.io/)
+ *First Build*: 18th October, 2016
+ *Last Build*: 24th August, 2017
+ *Last Build*: 24th April, 2018
+ *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
## Build Time
**43 Hours** or **5 Eight Hour Days** (actual time the author saved -
**41 Hours** or **5 Eight Hour Days** (actual time the author saved -
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*: **15353**
+ *Line count*: **14587**
+ *File count*: **147**
+ *Folder count*: **54**
**28 Hours** or **4 Eight Hour Days** (the actual time the author spent)
**27 Hours** or **4 Eight Hour Days** (the actual time the author spent)
> (with the following break down:
> **debugging @11hours** = codingtime / 4;
> **debugging @10hours** = codingtime / 4;
> **planning @6hours** = codingtime / 7;
> **mapping @4hours** = codingtime / 10;
> **office @7hours** = codingtime / 6;)
**71 Hours** or **9 Eight Hour Days**
**68 Hours** or **9 Eight Hour Days**
(a total of the realistic time frame for this project)
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,

View File

@ -7,35 +7,35 @@ Just a basic demo of the most basic implementations of the [Joomla](http://www.j
# Build Details
+ *Company*: [Vast Development Method](https://www.vdm.io/)
+ *Author*: [Llewellyn van der Merwe](mailto:info@vdm.io)
+ *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io)
+ *Name*: [Demo](https://www.vdm.io/)
+ *First Build*: 18th October, 2016
+ *Last Build*: 24th August, 2017
+ *Last Build*: 24th April, 2018
+ *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
## Build Time
**43 Hours** or **5 Eight Hour Days** (actual time the author saved -
**41 Hours** or **5 Eight Hour Days** (actual time the author saved -
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*: **15353**
+ *Line count*: **14587**
+ *File count*: **147**
+ *Folder count*: **54**
**28 Hours** or **4 Eight Hour Days** (the actual time the author spent)
**27 Hours** or **4 Eight Hour Days** (the actual time the author spent)
> (with the following break down:
> **debugging @11hours** = codingtime / 4;
> **debugging @10hours** = codingtime / 4;
> **planning @6hours** = codingtime / 7;
> **mapping @4hours** = codingtime / 10;
> **office @7hours** = codingtime / 6;)
**71 Hours** or **9 Eight Hour Days**
**68 Hours** or **9 Eight Hour Days**
(a total of the realistic time frame for this project)
> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,

View File

@ -24,20 +24,11 @@
<action name="look.dashboard_list" title="COM_DEMO_LOOKS_DASHBOARD_LIST" description="COM_DEMO_LOOKS_DASHBOARD_LIST_DESC" />
<action name="look.delete" title="COM_DEMO_LOOKS_DELETE" description="COM_DEMO_LOOKS_DELETE_DESC" />
<action name="look.edit" title="COM_DEMO_LOOKS_EDIT" description="COM_DEMO_LOOKS_EDIT_DESC" />
<action name="look.edit.add" title="COM_DEMO_LOOKS_EDIT_ADD" description="COM_DEMO_LOOKS_EDIT_ADD_DESC" />
<action name="look.edit.alias" title="COM_DEMO_LOOKS_EDIT_ALIAS" description="COM_DEMO_LOOKS_EDIT_ALIAS_DESC" />
<action name="look.edit.created_by" title="COM_DEMO_LOOKS_EDIT_CREATED_BY" description="COM_DEMO_LOOKS_EDIT_CREATED_BY_DESC" />
<action name="look.edit.created" title="COM_DEMO_LOOKS_EDIT_CREATED_DATE" description="COM_DEMO_LOOKS_EDIT_CREATED_DATE_DESC" />
<action name="look.edit.dateofbirth" title="COM_DEMO_LOOKS_EDIT_DATEOFBIRTH" description="COM_DEMO_LOOKS_EDIT_DATEOFBIRTH_DESC" />
<action name="look.edit.description" title="COM_DEMO_LOOKS_EDIT_DESCRIPTION" description="COM_DEMO_LOOKS_EDIT_DESCRIPTION_DESC" />
<action name="look.edit.email" title="COM_DEMO_LOOKS_EDIT_EMAIL" description="COM_DEMO_LOOKS_EDIT_EMAIL_DESC" />
<action name="look.edit.image" title="COM_DEMO_LOOKS_EDIT_IMAGE" description="COM_DEMO_LOOKS_EDIT_IMAGE_DESC" />
<action name="look.edit.mobile_phone" title="COM_DEMO_LOOKS_EDIT_MOBILE_PHONE" description="COM_DEMO_LOOKS_EDIT_MOBILE_PHONE_DESC" />
<action name="look.edit.name" title="COM_DEMO_LOOKS_EDIT_NAME" description="COM_DEMO_LOOKS_EDIT_NAME_DESC" />
<action name="look.edit.own" title="COM_DEMO_LOOKS_EDIT_OWN" description="COM_DEMO_LOOKS_EDIT_OWN_DESC" />
<action name="look.edit.state" title="COM_DEMO_LOOKS_EDIT_STATE" description="COM_DEMO_LOOKS_EDIT_STATE_DESC" />
<action name="look.version" title="COM_DEMO_LOOKS_EDIT_VERSION" description="COM_DEMO_LOOKS_EDIT_VERSION_DESC" />
<action name="look.edit.website" title="COM_DEMO_LOOKS_EDIT_WEBSITE" description="COM_DEMO_LOOKS_EDIT_WEBSITE_DESC" />
<action name="look.export" title="COM_DEMO_LOOKS_EXPORT" description="COM_DEMO_LOOKS_EXPORT_DESC" />
<action name="look.import" title="COM_DEMO_LOOKS_IMPORT" description="COM_DEMO_LOOKS_IMPORT_DESC" />
<action name="look.submenu" title="COM_DEMO_LOOKS_SUBMENU" description="COM_DEMO_LOOKS_SUBMENU_DESC" />
@ -51,15 +42,6 @@
<action name="look.create" title="COM_DEMO_LOOKS_CREATE" description="COM_DEMO_LOOKS_CREATE_DESC" />
<action name="look.delete" title="COM_DEMO_LOOKS_DELETE" description="COM_DEMO_LOOKS_DELETE_DESC" />
<action name="look.access" title="COM_DEMO_LOOKS_ACCESS" description="COM_DEMO_LOOKS_ACCESS_DESC" />
<action name="look.edit.name" title="COM_DEMO_LOOKS_EDIT_NAME" description="COM_DEMO_LOOKS_EDIT_NAME_DESC" />
<action name="look.edit.description" title="COM_DEMO_LOOKS_EDIT_DESCRIPTION" description="COM_DEMO_LOOKS_EDIT_DESCRIPTION_DESC" />
<action name="look.edit.alias" title="COM_DEMO_LOOKS_EDIT_ALIAS" description="COM_DEMO_LOOKS_EDIT_ALIAS_DESC" />
<action name="look.edit.dateofbirth" title="COM_DEMO_LOOKS_EDIT_DATEOFBIRTH" description="COM_DEMO_LOOKS_EDIT_DATEOFBIRTH_DESC" />
<action name="look.edit.website" title="COM_DEMO_LOOKS_EDIT_WEBSITE" description="COM_DEMO_LOOKS_EDIT_WEBSITE_DESC" />
<action name="look.edit.mobile_phone" title="COM_DEMO_LOOKS_EDIT_MOBILE_PHONE" description="COM_DEMO_LOOKS_EDIT_MOBILE_PHONE_DESC" />
<action name="look.edit.add" title="COM_DEMO_LOOKS_EDIT_ADD" description="COM_DEMO_LOOKS_EDIT_ADD_DESC" />
<action name="look.edit.image" title="COM_DEMO_LOOKS_EDIT_IMAGE" description="COM_DEMO_LOOKS_EDIT_IMAGE_DESC" />
<action name="look.edit.email" title="COM_DEMO_LOOKS_EDIT_EMAIL" description="COM_DEMO_LOOKS_EDIT_EMAIL_DESC" />
<action name="look.version" title="COM_DEMO_LOOKS_EDIT_VERSION" description="COM_DEMO_LOOKS_EDIT_VERSION_DESC" />
</section>
</access>

View File

@ -3,7 +3,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage admin.css

View File

@ -3,7 +3,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage dashboard.css

View File

@ -3,7 +3,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage look.css

View File

@ -3,7 +3,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage looks.css

View File

@ -0,0 +1,20 @@
/*----------------------------------------------------------------------------------| www.vdm.io |----/
Vast Development Method
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage admin.js
@author Llewellyn van der Merwe <https://www.vdm.io/>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
____ _____ _____ __ __ __ __ ___ _____ __ __ ____ _____ _ _ ____ _ _ ____
(_ _)( _ )( _ )( \/ )( ) /__\ / __)( _ )( \/ )( _ \( _ )( \( )( ___)( \( )(_ _)
.-_)( )(_)( )(_)( ) ( )(__ /(__)\ ( (__ )(_)( ) ( )___/ )(_)( ) ( )__) ) ( )(
\____) (_____)(_____)(_/\/\_)(____)(__)(__) \___)(_____)(_/\/\_)(__) (_____)(_)\_)(____)(_)\_) (__)
/------------------------------------------------------------------------------------------------------*/
/* JS Document */

View File

@ -64,7 +64,7 @@
label="COM_DEMO_CONFIG_AUTHOR_EMAIL_LABEL"
description="COM_DEMO_CONFIG_AUTHOR_EMAIL_DESC"
size="60"
default="info@vdm.io"
default="joomla@vdm.io"
readonly="true"
class="readonly"
/>

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage controller.php
@ -29,73 +29,94 @@ jimport('joomla.application.component.controller');
*/
class DemoController extends JControllerLegacy
{
/**
* Constructor.
*
* @param array $config An optional associative array of configuration settings.
* Recognized key values include 'name', 'default_task', 'model_path', and
* 'view_path' (this list is not meant to be comprehensive).
*
* @since 3.0
*/
public function __construct($config = array())
{
// set the default view
$config['default_view'] = 'demo';
parent::__construct($config);
}
/**
* display task
*
* @return void
*/
function display($cachable = false, $urlparams = false)
function display($cachable = false, $urlparams = false)
{
// set default view if not set
$view = $this->input->getCmd('view', 'Demo');
$view = $this->input->getCmd('view', 'demo');
$data = $this->getViewRelation($view);
$layout = $this->input->get('layout', null, 'WORD');
$id = $this->input->getInt('id');
// Check for edit form.
if(DemoHelper::checkArray($data))
{
if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_demo.edit.'.$data['view'], $id))
{
// Somehow the person just went to the form - we don't allow that.
$this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
$this->setMessage($this->getError(), 'error');
// check if item was opend from other then its own list view
$ref = $this->input->getCmd('ref', 0);
$refid = $this->input->getInt('refid', 0);
// set redirect
if ($refid > 0 && DemoHelper::checkString($ref))
{
// redirect to item of ref
$this->setRedirect(JRoute::_('index.php?option=com_demo&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false));
}
elseif (DemoHelper::checkString($ref))
{
if(DemoHelper::checkArray($data))
{
if ($data['edit'] && $layout == 'edit' && !$this->checkEditId('com_demo.edit.'.$data['view'], $id))
{
// Somehow the person just went to the form - we don't allow that.
$this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id));
$this->setMessage($this->getError(), 'error');
// check if item was opend from other then its own list view
$ref = $this->input->getCmd('ref', 0);
$refid = $this->input->getInt('refid', 0);
// set redirect
if ($refid > 0 && DemoHelper::checkString($ref))
{
// redirect to item of ref
$this->setRedirect(JRoute::_('index.php?option=com_demo&view='.(string)$ref.'&layout=edit&id='.(int)$refid, false));
}
elseif (DemoHelper::checkString($ref))
{
// redirect to ref
$this->setRedirect(JRoute::_('index.php?option=com_demo&view='.(string)$ref, false));
}
else
{
// normal redirect back to the list view
$this->setRedirect(JRoute::_('index.php?option=com_demo&view='.$data['views'], false));
}
// redirect to ref
$this->setRedirect(JRoute::_('index.php?option=com_demo&view='.(string)$ref, false));
}
else
{
// normal redirect back to the list view
$this->setRedirect(JRoute::_('index.php?option=com_demo&view='.$data['views'], false));
}
return false;
}
}
return false;
}
}
return parent::display($cachable, $urlparams);
}
protected function getViewRelation($view)
{
if (DemoHelper::checkString($view))
{
$views = array(
// check the we have a value
if (DemoHelper::checkString($view))
{
// the view relationships
$views = array(
'look' => 'looks'
);
// check if this is a list view
if (in_array($view,$views))
{
return array('edit' => false, 'view' => array_search($view,$views), 'views' => $view);
}
// check if it is an edit view
elseif (array_key_exists($view,$views))
{
return array('edit' => true, 'view' => $view, 'views' => $views[$view]);
}
}
);
// check if this is a list view
if (in_array($view, $views))
{
// this is a list view
return array('edit' => false, 'view' => array_search($view,$views), 'views' => $view);
}
// check if it is an edit view
elseif (array_key_exists($view, $views))
{
// this is a edit view
return array('edit' => true, 'view' => $view, 'views' => $views[$view]);
}
}
return false;
}
}

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage demo.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage import.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage look.php
@ -154,10 +154,10 @@ class DemoControllerLook extends JControllerForm
{
$append .= '&ref='.(string)$ref.'&refid='.(int)$refid;
}
elseif ($ref)
{
elseif ($ref)
{
$append .= '&ref='.(string)$ref;
}
}
if ($tmpl)
{
@ -269,11 +269,11 @@ class DemoControllerLook extends JControllerForm
$this->ref = $this->input->get('ref', 0, 'word');
$this->refid = $this->input->get('refid', 0, 'int');
if ($this->ref || $this->refid)
{
// to make sure the item is checkedin on redirect
$this->task = 'save';
}
if ($this->ref || $this->refid)
{
// to make sure the item is checkedin on redirect
$this->task = 'save';
}
$saved = parent::save($key, $urlVar);

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage looks.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage demo.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage demo.php
@ -29,10 +29,28 @@ abstract class DemoHelper
/**
* Load the Component xml manifest.
**/
public static function manifest()
public static function manifest()
{
$manifestUrl = JPATH_ADMINISTRATOR."/components/com_demo/demo.xml";
return simplexml_load_file($manifestUrl);
$manifestUrl = JPATH_ADMINISTRATOR."/components/com_demo/demo.xml";
return simplexml_load_file($manifestUrl);
}
/**
* Joomla version object
**/
protected static $JVersion;
/**
* set/get Joomla version
**/
public static function jVersion()
{
// check if set
if (!self::checkObject(self::$JVersion))
{
self::$JVersion = new JVersion();
}
return self::$JVersion;
}
/**
@ -47,22 +65,22 @@ abstract class DemoHelper
// get all Contributors (max 20)
$searchArray = range('0','20');
foreach($searchArray as $nr)
{
{
if ((NULL !== $params->get("showContributor".$nr)) && ($params->get("showContributor".$nr) == 1 || $params->get("showContributor".$nr) == 3))
{
{
// set link based of selected option
if($params->get("useContributor".$nr) == 1)
{
{
$link_front = '<a href="mailto:'.$params->get("emailContributor".$nr).'" target="_blank">';
$link_back = '</a>';
}
elseif($params->get("useContributor".$nr) == 2)
{
elseif($params->get("useContributor".$nr) == 2)
{
$link_front = '<a href="'.$params->get("linkContributor".$nr).'" target="_blank">';
$link_back = '</a>';
}
else
{
else
{
$link_front = '';
$link_back = '';
}
@ -86,10 +104,10 @@ abstract class DemoHelper
**/
public static function addSubmenu($submenu)
{
// load user for access menus
$user = JFactory::getUser();
// load the submenus to sidebar
JHtmlSidebar::addEntry(JText::_('COM_DEMO_SUBMENU_DASHBOARD'), 'index.php?option=com_demo&view=demo', $submenu === 'demo');
// load user for access menus
$user = JFactory::getUser();
// load the submenus to sidebar
JHtmlSidebar::addEntry(JText::_('COM_DEMO_SUBMENU_DASHBOARD'), 'index.php?option=com_demo&view=demo', $submenu === 'demo');
if ($user->authorise('look.access', 'com_demo') && $user->authorise('look.submenu', 'com_demo'))
{
JHtmlSidebar::addEntry(JText::_('COM_DEMO_SUBMENU_LOOKS'), 'index.php?option=com_demo&view=looks', $submenu === 'looks');
@ -376,6 +394,19 @@ abstract class DemoHelper
return false;
}
/**
* Get a Variable
*
* @param string $table The table from which to get the variable
* @param string $where The value where
* @param string $whereString The target/field string where/name
* @param string $what The return field
* @param string $operator The operator between $whereString/field and $where/value
* @param string $main The component in which the table is found
*
* @return mix string/int/float
*
*/
public static function getVar($table, $where = null, $whereString = 'user', $what = 'id', $operator = '=', $main = 'demo')
{
if(!$where)
@ -416,6 +447,20 @@ abstract class DemoHelper
return false;
}
/**
* Get array of variables
*
* @param string $table The table from which to get the variables
* @param string $where The value where
* @param string $whereString The target/field string where/name
* @param string $what The return field
* @param string $operator The operator between $whereString/field and $where/value
* @param string $main The component in which the table is found
* @param bool $unique The switch to return a unique array
*
* @return array
*
*/
public static function getVars($table, $where = null, $whereString = 'user', $what = 'id', $operator = 'IN', $main = 'demo', $unique = true)
{
if(!$where)
@ -466,9 +511,9 @@ abstract class DemoHelper
public static function jsonToString($value, $sperator = ", ", $table = null)
{
// check if string is JSON
$result = json_decode($value, true);
if (json_last_error() === JSON_ERROR_NONE)
// check if string is JSON
$result = json_decode($value, true);
if (json_last_error() === JSON_ERROR_NONE)
{
// is JSON
if (self::checkArray($result))
@ -490,15 +535,15 @@ abstract class DemoHelper
}
return (string) implode($sperator,$result);
}
return (string) json_decode($value);
}
return $value;
}
return (string) json_decode($value);
}
return $value;
}
public static function isPublished($id,$type)
{
if ($type == 'raw')
{
{
$type = 'item';
}
$db = JFactory::getDbo();
@ -511,7 +556,7 @@ abstract class DemoHelper
$db->execute();
$found = $db->getNumRows();
if($found)
{
{
return true;
}
return false;
@ -528,33 +573,33 @@ abstract class DemoHelper
$db->execute();
$found = $db->getNumRows();
if($found)
{
{
return $db->loadResult();
}
return $id;
}
/**
/**
* Get the actions permissions
**/
public static function getActions($view,&$record = null,$views = null)
public static function getActions($view,&$record = null,$views = null)
{
jimport('joomla.access.access');
$user = JFactory::getUser();
$result = new JObject;
$view = self::safeString($view);
if (self::checkString($views))
{
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');
// set acctions only set in component settiongs
$componentActions = array('core.admin','core.manage','core.options','core.export');
// 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))
@ -633,17 +678,17 @@ abstract class DemoHelper
}
elseif (self::checkString($views) && isset($record->catid) && $record->catid > 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);
}
else
{
$categoryCheck = $action->name;
}
// The record has a category. Check the category permissions.
// 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);
}
else
{
$categoryCheck = $action->name;
}
// The record has a category. Check the category permissions.
$catpermission = $user->authorise($categoryCheck, 'com_demo.'.$views.'.category.' . (int) $record->catid);
if (!$catpermission && !is_null($catpermission))
{
@ -729,24 +774,47 @@ abstract class DemoHelper
/**
* Get any component's model
**/
public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $component = 'demo')
public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $component = 'Demo', $config = array())
{
// fix the name
$name = self::safeString($name);
// full path
$fullPath = $path . '/models';
// set prefix
$prefix = $component.'Model';
// load the model file
JModelLegacy::addIncludePath( $path . '/models' );
JModelLegacy::addIncludePath($fullPath, $prefix);
// get instance
$model = JModelLegacy::getInstance( $name, $component.'Model' );
// if model not found
$model = JModelLegacy::getInstance($name, $prefix, $config);
// if model not found (strange)
if ($model == false)
{
// build class name
$class = $prefix.$name;
// initilize the model
new $class();
$model = JModelLegacy::getInstance($name, $prefix);
jimport('joomla.filesystem.file');
// get file path
$filePath = $path.'/'.$name.'.php';
$fullPath = $fullPath.'/'.$name.'.php';
// check if it exists
if (JFile::exists($filePath))
{
// get the file
require_once $filePath;
}
elseif (JFile::exists($fullPath))
{
// get the file
require_once $fullPath;
}
// build class names
$modelClass = $prefix.$name;
if (class_exists($modelClass))
{
// initialize the model
return new $modelClass($config);
}
}
return $model;
}
/**
* Add to asset Table
*/
@ -808,7 +876,7 @@ abstract class DemoHelper
}
return false;
}
/**
* Gets the default asset Rules for a component/view.
*/
@ -861,30 +929,150 @@ abstract class DemoHelper
return JAccess::getAssetRules(0);
}
/**
* xmlAppend
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement
*
* @return null
*
*/
public static function xmlAppend(&$xml, $node)
{
if (!$node)
{
// element was not returned
return;
}
switch (get_class($node))
{
case 'stdClass':
if (property_exists($node, 'comment'))
{
self::xmlComment($xml, $node->comment);
}
if (property_exists($node, 'fieldXML'))
{
self::xmlAppend($xml, $node->fieldXML);
}
break;
case 'SimpleXMLElement':
$domXML = dom_import_simplexml($xml);
$domNode = dom_import_simplexml($node);
$domXML->appendChild($domXML->ownerDocument->importNode($domNode, true));
$xml = simplexml_import_dom($domXML);
break;
}
}
/**
* xmlComment
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param string $comment The comment to inject
*
* @return null
*
*/
public static function xmlComment(&$xml, $comment)
{
$domXML = dom_import_simplexml($xml);
$domComment = new DOMComment($comment);
$nodeTarget = $domXML->ownerDocument->importNode($domComment, true);
$domXML->appendChild($nodeTarget);
$xml = simplexml_import_dom($domXML);
}
/**
* xmlAddAttributes
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $attributes The attributes to apply to the XML element
*
* @return null
*
*/
public static function xmlAddAttributes(&$xml, $attributes = array())
{
foreach ($attributes as $key => $value)
{
$xml->addAttribute($key, $value);
}
}
/**
* xmlAddOptions
*
* @param SimpleXMLElement $xml The XML element reference in which to inject a comment
* @param array $options The options to apply to the XML element
*
* @return void
*
*/
public static function xmlAddOptions(&$xml, $options = array())
{
foreach ($options as $key => $value)
{
$addOption = $xml->addChild('option');
$addOption->addAttribute('value', $key);
$addOption[] = $value;
}
}
/**
* Render Bool Button
*
* @param array $args All the args for the button
* 0) name
* 1) additional (options class) // not used at this time
* 2) default
* 3) yes (name)
* 4) no (name)
*
* @return string The input html of the button
*
*/
public static function renderBoolButton()
{
$args = func_get_args();
// check if there is additional button class
$additional = isset($args[1]) ? (string) $args[1] : ''; // not used at this time
// start the xml
$buttonXML = new SimpleXMLElement('<field/>');
// button attributes
$buttonAttributes = array(
'type' => 'radio',
'name' => isset($args[0]) ? self::htmlEscape($args[0]) : 'bool_button',
'label' => isset($args[0]) ? self::safeString(self::htmlEscape($args[0]), 'Ww') : 'Bool Button', // not seen anyway
'class' => 'btn-group',
'filter' => 'INT',
'default' => isset($args[2]) ? (int) $args[2] : 0);
// load the haskey attributes
self::xmlAddAttributes($buttonXML, $buttonAttributes);
// set the button options
$buttonOptions = array(
'1' => isset($args[3]) ? self::htmlEscape($args[3]) : 'JYES',
'0' => isset($args[4]) ? self::htmlEscape($args[4]) : 'JNO');
// load the button options
self::xmlAddOptions($buttonXML, $buttonOptions);
// get the radio element
$button = JFormHelper::loadFieldType('radio');
// setup the properties
$name = self::htmlEscape($args[0]);
$additional = isset($args[1]) ? (string) $args[1] : '';
$value = $args[2];
$yes = isset($args[3]) ? self::htmlEscape($args[3]) : 'JYES';
$no = isset($args[4]) ? self::htmlEscape($args[4]) : 'JNO';
// prepare the xml
$element = new SimpleXMLElement('<field name="'.$name.'" type="radio" class="btn-group"><option '.$additional.' value="0">'.$no.'</option><option '.$additional.' value="1">'.$yes.'</option></field>');
// run
$button->setup($element, $value);
$button->setup($buttonXML, $buttonAttributes['default']);
return $button->input;
}
/**
* Check if have an json string
*
* @input string The json string to check
*
* @returns bool true on success
**/
public static function checkJson($string)
{
if (self::checkString($string))
@ -895,15 +1083,29 @@ abstract class DemoHelper
return false;
}
/**
* Check if have an object with a length
*
* @input object The object to check
*
* @returns bool true on success
**/
public static function checkObject($object)
{
if (isset($object) && is_object($object) && count($object) > 0)
if (isset($object) && is_object($object))
{
return true;
return count((array)$object) > 0;
}
return false;
}
/**
* Check if have an array with a length
*
* @input array The array to check
*
* @returns bool true on success
**/
public static function checkArray($array, $removeEmptyString = false)
{
if (isset($array) && is_array($array) && count($array) > 0)
@ -925,6 +1127,13 @@ abstract class DemoHelper
return false;
}
/**
* Check if have a string with a length
*
* @input string The string to check
*
* @returns bool true on success
**/
public static function checkString($string)
{
if (isset($string) && is_string($string) && strlen($string) > 0)
@ -934,6 +1143,38 @@ abstract class DemoHelper
return false;
}
/**
* Check if we are connected
* Thanks https://stackoverflow.com/a/4860432/1429677
*
* @returns bool true on success
**/
public static function isConnected()
{
// If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right?
$connected = @fsockopen("www.example.com", 80);
// website, port (try 80 or 443)
if ($connected)
{
//action when connected
$is_conn = true;
fclose($connected);
}
else
{
//action in connection failure
$is_conn = false;
}
return $is_conn;
}
/**
* Merge an array of array's
*
* @input array The arrays you would like to merge
*
* @returns array on success
**/
public static function mergeArrays($arrays)
{
if(self::checkArray($arrays))
@ -957,6 +1198,13 @@ abstract class DemoHelper
return self::shorten($string, $length, $addTip);
}
/**
* Shorten a string
*
* @input string The you would like to shorten
*
* @returns string on success
**/
public static function shorten($string, $length = 40, $addTip = true)
{
if (self::checkString($string))
@ -991,6 +1239,13 @@ abstract class DemoHelper
return $string;
}
/**
* Making strings safe (various ways)
*
* @input string The you would like to make safe
*
* @returns string on success
**/
public static function safeString($string, $type = 'L', $spacer = '_', $replaceNumbers = true)
{
if ($replaceNumbers === true)
@ -999,8 +1254,8 @@ abstract class DemoHelper
$string = self::replaceNumbers($string);
}
// 0nly continue if we have a string
if (self::checkString($string))
{
if (self::checkString($string))
{
// create file name without the extention that is safe
if ($type === 'filename')
{
@ -1023,12 +1278,12 @@ abstract class DemoHelper
$string = preg_replace("/[^A-Za-z ]/", '', $string);
// select final adaptations
if ($type === 'L' || $type === 'strtolower')
{
// replace white space with underscore
$string = preg_replace('/\s+/', $spacer, $string);
// default is to return lower
return strtolower($string);
}
{
// replace white space with underscore
$string = preg_replace('/\s+/', $spacer, $string);
// default is to return lower
return strtolower($string);
}
elseif ($type === 'W')
{
// return a string with all first letter of each word uppercase(no undersocre)
@ -1049,21 +1304,21 @@ abstract class DemoHelper
// return a string with all the uppercase(no undersocre)
return strtoupper($string);
}
elseif ($type === 'U' || $type === 'strtoupper')
{
// replace white space with underscore
$string = preg_replace('/\s+/', $spacer, $string);
// return all upper
return strtoupper($string);
}
elseif ($type === 'F' || $type === 'ucfirst')
{
// replace white space with underscore
$string = preg_replace('/\s+/', $spacer, $string);
// return with first caracter to upper
return ucfirst(strtolower($string));
}
elseif ($type === 'cA' || $type === 'cAmel' || $type === 'camelcase')
elseif ($type === 'U' || $type === 'strtoupper')
{
// replace white space with underscore
$string = preg_replace('/\s+/', $spacer, $string);
// return all upper
return strtoupper($string);
}
elseif ($type === 'F' || $type === 'ucfirst')
{
// replace white space with underscore
$string = preg_replace('/\s+/', $spacer, $string);
// return with first caracter to upper
return ucfirst(strtolower($string));
}
elseif ($type === 'cA' || $type === 'cAmel' || $type === 'camelcase')
{
// convert all words to first letter uppercase
$string = ucwords(strtolower($string));
@ -1072,14 +1327,14 @@ abstract class DemoHelper
// now return first letter lowercase
return lcfirst($string);
}
// return string
return $string;
}
// not a string
return '';
// return string
return $string;
}
// not a string
return '';
}
public static function htmlEscape($var, $charset = 'UTF-8', $shorten = false, $length = 40)
public static function htmlEscape($var, $charset = 'UTF-8', $shorten = false, $length = 40)
{
if (self::checkString($var))
{
@ -1090,11 +1345,11 @@ abstract class DemoHelper
return self::shorten($string,$length);
}
return $string;
}
}
else
{
return '';
}
}
}
public static function replaceNumbers($string)
@ -1118,7 +1373,7 @@ abstract class DemoHelper
// return the string with no numbers remaining.
return $string;
}
/**
* Convert an integer into an English word string
* Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988>

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage headercheck.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage batch_.php

View File

@ -1,6 +1,8 @@
COM_DEMO="Demo"
COM_DEMO_ARCHIVED="Archived"
COM_DEMO_AUTHOR="Author"
COM_DEMO_BACK="Back"
COM_DEMO_CLOSE_NEW="Close & New"
COM_DEMO_CONFIG_ALMOST_FLAT_LOAD="Almost Flat"
COM_DEMO_CONFIG_AUTHOR="Author Info"
COM_DEMO_CONFIG_AUTHOR_EMAIL_DESC="The email address of the author of this component."
@ -25,8 +27,8 @@ COM_DEMO_CONFIG_GRADIANT_LOAD="Gradient"
COM_DEMO_CONFIG_NO="No"
COM_DEMO_CONFIG_ONLY_EXTRA="Only Extra"
COM_DEMO_CONFIG_UIKIT_DESC="<b>The Parameters for the uikit are set here.</b><br />Uikit is a lightweight and modular front-end framework
for developing fast and powerful web interfaces. For more info visit <a href="http://getuikit.com/" >http://getuikit.com/</a>"
COM_DEMO_CONFIG_UIKIT_LABEL="Uikit Settings"
for developing fast and powerful web interfaces. For more info visit <a href="https://getuikit.com/v2/" target="_blank">https://getuikit.com/v2/</a>"
COM_DEMO_CONFIG_UIKIT_LABEL="Uikit2 Settings"
COM_DEMO_CONFIG_UIKIT_LOAD_DESC="Set the uikit loading option."
COM_DEMO_CONFIG_UIKIT_LOAD_LABEL="Loading Options"
COM_DEMO_CONFIG_UIKIT_MIN_DESC="Should the minified version of uikit files be loaded?"
@ -89,6 +91,7 @@ COM_DEMO_IMPORT_TITLE="Data Importer"
COM_DEMO_IMPORT_UNABLE_TO_FIND_IMPORT_PACKAGE="Package to import not found."
COM_DEMO_IMPORT_UPDATE_DATA="Import Data"
COM_DEMO_IMPORT_UPLOAD_BOTTON="Upload File"
COM_DEMO_INACTIVE="Inactive"
COM_DEMO_KEEP_ORIGINAL_ACCESS="- Keep Original Access -"
COM_DEMO_KEEP_ORIGINAL_CATEGORY="- Keep Original Category -"
COM_DEMO_KEEP_ORIGINAL_STATE="- Keep Original State -"
@ -114,35 +117,17 @@ COM_DEMO_LOOKS_DASHBOARD_LIST_DESC="Allows the users in this group to update the
COM_DEMO_LOOKS_DELETE="Looks Delete"
COM_DEMO_LOOKS_DELETE_DESC="Allows the users in this group to delete delete looks"
COM_DEMO_LOOKS_EDIT="Looks Edit"
COM_DEMO_LOOKS_EDIT_ADD="Looks Edit Add"
COM_DEMO_LOOKS_EDIT_ADD_DESC="Allows the users in this group to update the edit add of the look"
COM_DEMO_LOOKS_EDIT_ALIAS="Looks Edit Alias"
COM_DEMO_LOOKS_EDIT_ALIAS_DESC="Allows the users in this group to update the edit alias of the look"
COM_DEMO_LOOKS_EDIT_CREATED_BY="Looks Edit Created By"
COM_DEMO_LOOKS_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by looks"
COM_DEMO_LOOKS_EDIT_CREATED_DATE="Looks Edit Created Date"
COM_DEMO_LOOKS_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created looks"
COM_DEMO_LOOKS_EDIT_DATEOFBIRTH="Looks Edit Dateofbirth"
COM_DEMO_LOOKS_EDIT_DATEOFBIRTH_DESC="Allows the users in this group to update the edit dateofbirth of the look"
COM_DEMO_LOOKS_EDIT_DESC="Allows the users in this group to edit the look"
COM_DEMO_LOOKS_EDIT_DESCRIPTION="Looks Edit Description"
COM_DEMO_LOOKS_EDIT_DESCRIPTION_DESC="Allows the users in this group to update the edit description of the look"
COM_DEMO_LOOKS_EDIT_EMAIL="Looks Edit Email"
COM_DEMO_LOOKS_EDIT_EMAIL_DESC="Allows the users in this group to update the edit email of the look"
COM_DEMO_LOOKS_EDIT_IMAGE="Looks Edit Image"
COM_DEMO_LOOKS_EDIT_IMAGE_DESC="Allows the users in this group to update the edit image of the look"
COM_DEMO_LOOKS_EDIT_MOBILE_PHONE="Looks Edit Mobile Phone"
COM_DEMO_LOOKS_EDIT_MOBILE_PHONE_DESC="Allows the users in this group to update the edit mobile phone of the look"
COM_DEMO_LOOKS_EDIT_NAME="Looks Edit Name"
COM_DEMO_LOOKS_EDIT_NAME_DESC="Allows the users in this group to update the edit name of the look"
COM_DEMO_LOOKS_EDIT_OWN="Looks Edit Own"
COM_DEMO_LOOKS_EDIT_OWN_DESC="Allows the users in this group to edit edit own looks created by them"
COM_DEMO_LOOKS_EDIT_STATE="Looks Edit State"
COM_DEMO_LOOKS_EDIT_STATE_DESC="Allows the users in this group to update the state of the look"
COM_DEMO_LOOKS_EDIT_VERSION="Looks Edit Version"
COM_DEMO_LOOKS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version looks"
COM_DEMO_LOOKS_EDIT_WEBSITE="Looks Edit Website"
COM_DEMO_LOOKS_EDIT_WEBSITE_DESC="Allows the users in this group to update the edit website of the look"
COM_DEMO_LOOKS_EXPORT="Looks Export"
COM_DEMO_LOOKS_EXPORT_DESC="Allows the users in this group to export export looks"
COM_DEMO_LOOKS_IMPORT="Looks Import"
@ -188,6 +173,7 @@ COM_DEMO_LOOK_EMAIL="Email"
COM_DEMO_LOOK_EMAIL_DESCRIPTION="Enter Email"
COM_DEMO_LOOK_EMAIL_HINT="demo@example.com"
COM_DEMO_LOOK_EMAIL_LABEL="Email"
COM_DEMO_LOOK_EMAIL_MESSAGE="Error! Please add email address here."
COM_DEMO_LOOK_ERROR_UNIQUE_ALIAS="Another Look has the same alias."
COM_DEMO_LOOK_ID="Id"
COM_DEMO_LOOK_IMAGE="Image"
@ -196,6 +182,7 @@ COM_DEMO_LOOK_MOBILE_PHONE="Mobile Phone"
COM_DEMO_LOOK_MOBILE_PHONE_DESCRIPTION="Enter Mobile Phone Number"
COM_DEMO_LOOK_MOBILE_PHONE_HINT="Mobile Phone Here"
COM_DEMO_LOOK_MOBILE_PHONE_LABEL="Mobile Phone"
COM_DEMO_LOOK_MOBILE_PHONE_MESSAGE="Error! Please add mobile phone number here."
COM_DEMO_LOOK_MODIFIED_BY_DESC="The last user that modified this Look."
COM_DEMO_LOOK_MODIFIED_BY_LABEL="Modified By"
COM_DEMO_LOOK_MODIFIED_DATE_DESC="The date this Look was modified."
@ -205,6 +192,7 @@ COM_DEMO_LOOK_NAME="Name"
COM_DEMO_LOOK_NAME_DESCRIPTION="Enter Name Here"
COM_DEMO_LOOK_NAME_HINT="Name Here"
COM_DEMO_LOOK_NAME_LABEL="Name"
COM_DEMO_LOOK_NAME_MESSAGE="Error! Please add name here."
COM_DEMO_LOOK_NEW="A New Look"
COM_DEMO_LOOK_NO="No"
COM_DEMO_LOOK_NOT_REQUIRED="Not Required"
@ -219,15 +207,18 @@ COM_DEMO_LOOK_WEBSITE="Website"
COM_DEMO_LOOK_WEBSITE_DESCRIPTION="Enter website address"
COM_DEMO_LOOK_WEBSITE_HINT="http://www.example.com"
COM_DEMO_LOOK_WEBSITE_LABEL="Website"
COM_DEMO_LOOK_WEBSITE_MESSAGE="Error! Please add website here."
COM_DEMO_LOOK_YES="Yes"
COM_DEMO_NEW="New"
COM_DEMO_NOT_FOUND_OR_ACCESS_DENIED="Not found, or access denied."
COM_DEMO_NOT_FOUND_OR_ACCESS_DENIED="Not found or access denied!"
COM_DEMO_NO_ACCESS_GRANTED="No Access Granted!"
COM_DEMO_PUBLISHED="Published"
COM_DEMO_SAVE_SUCCESS="Great! Item successfully saved."
COM_DEMO_SAVE_WARNING="The value already existed so please select another."
COM_DEMO_SUBMENU_DASHBOARD="Dashboard"
COM_DEMO_SUBMENU_LOOKS="Looks"
COM_DEMO_TRASHED="Trashed"
COM_DEMO_USE_BATCH="Use Batch"
COM_DEMO_USE_BATCH_DESC=" Allows users in this group to use batch copy/update method."
COM_DEMO_VERSION="Version"
COM_DEMO_WEBSITE="Website"
COM_DEMO_WEBSITE="Website"

View File

@ -1,7 +1,53 @@
COM_DEMO="Demo"
COM_DEMO_CONFIGURATION="Demo Configuration"
COM_DEMO_EDIT_CREATED_BY="Edit Created By"
COM_DEMO_EDIT_CREATED_BY_DESC=" Allows users in this group to edit created by."
COM_DEMO_EDIT_CREATED_DATE="Edit Created Date"
COM_DEMO_EDIT_CREATED_DATE_DESC=" Allows users in this group to edit created date."
COM_DEMO_EDIT_VERSIONS="Edit Version"
COM_DEMO_EDIT_VERSIONS_DESC=" Allows users in this group to edit versions."
COM_DEMO_EXPORT_DATA="Export Data"
COM_DEMO_EXPORT_DATA_DESC=" Allows users in this group to export data."
COM_DEMO_IMPORT_DATA="Import Data"
COM_DEMO_IMPORT_DATA_DESC=" Allows users in this group to import data."
COM_DEMO_LOOKING_ACCESS_SITE="Looking (Site) Access"
COM_DEMO_LOOKING_ACCESS_SITE_DESC=" Allows the users in this group to access site looking."
COM_DEMO_LOOKS_ACCESS="Looks Access"
COM_DEMO_LOOKS_ACCESS_DESC="Allows the users in this group to access access looks"
COM_DEMO_LOOKS_ACCESS_SITE="Looks (Site) Access"
COM_DEMO_LOOKS_ACCESS_SITE_DESC=" Allows the users in this group to access site looks."
COM_DEMO_LOOKS_BATCH_USE="Looks Batch Use"
COM_DEMO_LOOKS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch looks"
COM_DEMO_LOOKS_CREATE="Looks Create"
COM_DEMO_LOOKS_CREATE_DESC="Allows the users in this group to create create looks"
COM_DEMO_LOOKS_DASHBOARD_ADD="Looks Dashboard Add"
COM_DEMO_LOOKS_DASHBOARD_ADD_DESC="Allows the users in this group to update the dashboard add of the look"
COM_DEMO_LOOKS_DASHBOARD_LIST="Looks Dashboard List"
COM_DEMO_LOOKS_DASHBOARD_LIST_DESC="Allows the users in this group to update the dashboard list of the look"
COM_DEMO_LOOKS_DELETE="Looks Delete"
COM_DEMO_LOOKS_DELETE_DESC="Allows the users in this group to delete delete looks"
COM_DEMO_LOOKS_EDIT="Looks Edit"
COM_DEMO_LOOKS_EDIT_CREATED_BY="Looks Edit Created By"
COM_DEMO_LOOKS_EDIT_CREATED_BY_DESC="Allows the users in this group to update the created by of the edit created by looks"
COM_DEMO_LOOKS_EDIT_CREATED_DATE="Looks Edit Created Date"
COM_DEMO_LOOKS_EDIT_CREATED_DATE_DESC="Allows the users in this group to update the created date of the edit created looks"
COM_DEMO_LOOKS_EDIT_DESC="Allows the users in this group to edit the look"
COM_DEMO_LOOKS_EDIT_OWN="Looks Edit Own"
COM_DEMO_LOOKS_EDIT_OWN_DESC="Allows the users in this group to edit edit own looks created by them"
COM_DEMO_LOOKS_EDIT_STATE="Looks Edit State"
COM_DEMO_LOOKS_EDIT_STATE_DESC="Allows the users in this group to update the state of the look"
COM_DEMO_LOOKS_EDIT_VERSION="Looks Edit Version"
COM_DEMO_LOOKS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version looks"
COM_DEMO_LOOKS_EXPORT="Looks Export"
COM_DEMO_LOOKS_EXPORT_DESC="Allows the users in this group to export export looks"
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 update the submenu of the look"
COM_DEMO_MENU="&#187; Demo"
COM_DEMO_MENU_LOOKS="Looks"
COM_DEMO_MENU_LOOKS_DESC="The List of all published looks"
COM_DEMO_MENU_LOOKS_OPTION="Looks"
COM_DEMO_MENU_LOOKS_TITLE="Looks"
COM_DEMO_USE_BATCH="Use Batch"
COM_DEMO_USE_BATCH_DESC=" Allows users in this group to use batch copy/update method."

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage batchselection.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage details_above.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage details_fullwidth.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage details_under.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage metadata.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage more_left.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage more_right.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage publishing.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage demo.php
@ -32,11 +32,11 @@ class DemoModelDemo extends JModelList
{
public function getIcons()
{
// load user for access menus
$user = JFactory::getUser();
// reset icon array
// load user for access menus
$user = JFactory::getUser();
// reset icon array
$icons = array();
// view groups array
// view groups array
$viewGroups = array(
'main' => array('png.look.add', 'png.looks')
);
@ -48,93 +48,109 @@ class DemoModelDemo extends JModelList
'looks.submenu' => 'look.submenu',
'looks.dashboard_list' => 'look.dashboard_list',
'look.dashboard_add' => 'look.dashboard_add');
// loop over the $views
foreach($viewGroups as $group => $views)
{
{
$i = 0;
if (DemoHelper::checkArray($views))
{
{
foreach($views as $view)
{
$add = false;
if (strpos($view,'.') !== false)
{
$dwd = explode('.', $view);
if (count($dwd) == 3)
{
list($type, $name, $action) = $dwd;
}
elseif (count($dwd) == 2)
{
list($type, $name) = $dwd;
$action = false;
}
if ($action)
{
$viewName = $name;
switch($action)
{
case 'add':
$url ='index.php?option=com_demo&view='.$name.'&layout=edit';
$image = $name.'_'.$action.'.'.$type;
$alt = $name.'&nbsp;'.$action;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U').'_ADD';
$add = true;
break;
default:
$url = 'index.php?option=com_categories&view=categories&extension=com_demo.'.$name;
$image = $name.'_'.$action.'.'.$type;
$alt = $name.'&nbsp;'.$action;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U').'_'.DemoHelper::safeString($action,'U');
break;
}
}
else
{
$viewName = $name;
$alt = $name;
$url = 'index.php?option=com_demo&view='.$name;
$image = $name.'.'.$type;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U');
$hover = false;
}
}
else
{
$viewName = $view;
$alt = $view;
$url = 'index.php?option=com_demo&view='.$view;
$image = $view.'.png';
$name = ucwords($view).'<br /><br />';
$hover = false;
}
// first make sure the view access is set
if (DemoHelper::checkArray($viewAccess))
{
// external views (links)
if (strpos($view,'||') !== false)
{
$dwd = explode('||', $view);
if (count($dwd) == 3)
{
list($type, $name, $url) = $dwd;
$viewName = $name;
$alt = $name;
$url = $url;
$image = $name.'.'.$type;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U');
}
}
// internal views
elseif (strpos($view,'.') !== false)
{
$dwd = explode('.', $view);
if (count($dwd) == 3)
{
list($type, $name, $action) = $dwd;
}
elseif (count($dwd) == 2)
{
list($type, $name) = $dwd;
$action = false;
}
if ($action)
{
$viewName = $name;
switch($action)
{
case 'add':
$url = 'index.php?option=com_demo&view='.$name.'&layout=edit';
$image = $name.'_'.$action.'.'.$type;
$alt = $name.'&nbsp;'.$action;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U').'_ADD';
$add = true;
break;
default:
$url = 'index.php?option=com_categories&view=categories&extension=com_demo.'.$name;
$image = $name.'_'.$action.'.'.$type;
$alt = $name.'&nbsp;'.$action;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U').'_'.DemoHelper::safeString($action,'U');
break;
}
}
else
{
$viewName = $name;
$alt = $name;
$url = 'index.php?option=com_demo&view='.$name;
$image = $name.'.'.$type;
$name = 'COM_DEMO_DASHBOARD_'.DemoHelper::safeString($name,'U');
$hover = false;
}
}
else
{
$viewName = $view;
$alt = $view;
$url = 'index.php?option=com_demo&view='.$view;
$image = $view.'.png';
$name = ucwords($view).'<br /><br />';
$hover = false;
}
// first make sure the view access is set
if (DemoHelper::checkArray($viewAccess))
{
// setup some defaults
$dashboard_add = false;
$dashboard_list = false;
$accessTo = '';
$accessAdd = '';
// acces checking start
$accessCreate = (isset($viewAccess[$viewName.'.create'])) ? DemoHelper::checkString($viewAccess[$viewName.'.create']):false;
$accessAccess = (isset($viewAccess[$viewName.'.access'])) ? DemoHelper::checkString($viewAccess[$viewName.'.access']):false;
$accessTo = '';
$accessAdd = '';
// acces checking start
$accessCreate = (isset($viewAccess[$viewName.'.create'])) ? DemoHelper::checkString($viewAccess[$viewName.'.create']):false;
$accessAccess = (isset($viewAccess[$viewName.'.access'])) ? DemoHelper::checkString($viewAccess[$viewName.'.access']):false;
// set main controllers
$accessDashboard_add = (isset($viewAccess[$viewName.'.dashboard_add'])) ? DemoHelper::checkString($viewAccess[$viewName.'.dashboard_add']):false;
$accessDashboard_list = (isset($viewAccess[$viewName.'.dashboard_list'])) ? DemoHelper::checkString($viewAccess[$viewName.'.dashboard_list']):false;
// check for adding access
if ($add && $accessCreate)
{
$accessAdd = $viewAccess[$viewName.'.create'];
}
elseif ($add)
{
$accessAdd = 'core.create';
}
// check if acces to view is set
if ($accessAccess)
{
$accessTo = $viewAccess[$viewName.'.access'];
}
// check for adding access
if ($add && $accessCreate)
{
$accessAdd = $viewAccess[$viewName.'.create'];
}
elseif ($add)
{
$accessAdd = 'core.create';
}
// check if acces to view is set
if ($accessAccess)
{
$accessTo = $viewAccess[$viewName.'.access'];
}
// set main access controllers
if ($accessDashboard_add)
{
@ -144,65 +160,65 @@ class DemoModelDemo extends JModelList
{
$dashboard_list = $user->authorise($viewAccess[$viewName.'.dashboard_list'], 'com_demo');
}
if (DemoHelper::checkString($accessAdd) && DemoHelper::checkString($accessTo))
{
// check access
if($user->authorise($accessAdd, 'com_demo') && $user->authorise($accessTo, 'com_demo') && $dashboard_add)
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
elseif (DemoHelper::checkString($accessTo))
{
// check access
if($user->authorise($accessTo, 'com_demo') && $dashboard_list)
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
elseif (DemoHelper::checkString($accessAdd))
{
// check access
if($user->authorise($accessAdd, 'com_demo') && $dashboard_add)
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
else
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
else
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
$i++;
}
}
else
{
$icons[$group][$i] = false;
if (DemoHelper::checkString($accessAdd) && DemoHelper::checkString($accessTo))
{
// check access
if($user->authorise($accessAdd, 'com_demo') && $user->authorise($accessTo, 'com_demo') && $dashboard_add)
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
elseif (DemoHelper::checkString($accessTo))
{
// check access
if($user->authorise($accessTo, 'com_demo') && $dashboard_list)
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
elseif (DemoHelper::checkString($accessAdd))
{
// check access
if($user->authorise($accessAdd, 'com_demo') && $dashboard_add)
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
else
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
}
else
{
$icons[$group][$i] = new StdClass;
$icons[$group][$i]->url = $url;
$icons[$group][$i]->name = $name;
$icons[$group][$i]->image = $image;
$icons[$group][$i]->alt = $alt;
}
$i++;
}
}
else
{
$icons[$group][$i] = false;
}
}
return $icons;

View File

@ -3,7 +3,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage look.js

View File

@ -19,7 +19,6 @@
label="COM_DEMO_LOOK_CREATED_DATE_LABEL"
description="COM_DEMO_LOOK_CREATED_DATE_DESC"
size="22"
format="%Y-%m-%d %H:%M:%S"
filter="user_utc"
/>
@ -28,13 +27,11 @@
name="created_by"
type="user"
label="COM_DEMO_LOOK_CREATED_BY_LABEL"
description="COM_DEMO_LOOK_CREATED_BY_DESC"
/>
<!-- Published Field. Type: List (joomla) -->
<field name="published" type="list" label="JSTATUS"
description="JFIELD_PUBLISHED_DESC" class="chzn-color-state"
filter="intval" size="1" default="1" >
<option value="1">
JPUBLISHED</option>
@ -63,7 +60,6 @@
label="JFIELD_ACCESS_LABEL"
description="JFIELD_ACCESS_DESC"
default="1"
required="false"
/>
<!-- Ordering Field. Type: Numbers (joomla) -->
@ -75,7 +71,6 @@
description=""
default="0"
size="6"
required="false"
/>
<!-- Version Field. Type: Text (joomla) -->
@ -121,7 +116,7 @@
disabled="false"
required="true"
filter="STRING"
message="Error! Please add name here."
message="COM_DEMO_LOOK_NAME_MESSAGE"
hint="COM_DEMO_LOOK_NAME_HINT"
/>
<!-- Description Field. Type: Textarea. (joomla) -->
@ -136,24 +131,6 @@
filter="HTML"
hint="COM_DEMO_LOOK_DESCRIPTION_HINT"
/>
<!-- Alias Field. Type: Text. (joomla) -->
<field
type="text"
name="alias"
label="COM_DEMO_LOOK_ALIAS_LABEL"
description="JFIELD_ALIAS_DESC"
filter="STRING"
hint="COM_DEMO_LOOK_ALIAS_HINT"
/>
<!-- Dateofbirth Field. Type: Calendar. (joomla) -->
<field
type="calendar"
name="dateofbirth"
label="COM_DEMO_LOOK_DATEOFBIRTH_LABEL"
default="1970-01-01"
description="COM_DEMO_LOOK_DATEOFBIRTH_DESCRIPTION"
format="%Y-%m-%d"
/>
<!-- Website Field. Type: Url. (joomla) -->
<field
type="url"
@ -165,9 +142,25 @@
class="text_area"
filter="url"
validated="url"
message="Error! Please add website here."
message="COM_DEMO_LOOK_WEBSITE_MESSAGE"
hint="COM_DEMO_LOOK_WEBSITE_HINT"
/>
<!-- Image Field. Type: Media. (joomla) -->
<field
type="media"
name="image"
label="COM_DEMO_LOOK_IMAGE_LABEL"
directory=""
/>
<!-- Dateofbirth Field. Type: Calendar. (joomla) -->
<field
type="calendar"
name="dateofbirth"
label="COM_DEMO_LOOK_DATEOFBIRTH_LABEL"
default="1970-01-01"
description="COM_DEMO_LOOK_DATEOFBIRTH_DESCRIPTION"
format="%Y-%m-%d"
/>
<!-- Mobile_phone Field. Type: Tel. (joomla) -->
<field
type="tel"
@ -180,9 +173,24 @@
required="true"
filter="STRING"
validated="tel"
message="Error! Please add mobile phone number here."
message="COM_DEMO_LOOK_MOBILE_PHONE_MESSAGE"
hint="COM_DEMO_LOOK_MOBILE_PHONE_HINT"
/>
<!-- Email Field. Type: Text. (joomla) -->
<field
type="text"
name="email"
label="COM_DEMO_LOOK_EMAIL_LABEL"
size="10"
maxlength="50"
description="COM_DEMO_LOOK_EMAIL_DESCRIPTION"
class="text_area"
required="true"
filter="STRING"
validate="email"
message="COM_DEMO_LOOK_EMAIL_MESSAGE"
hint="COM_DEMO_LOOK_EMAIL_HINT"
/>
<!-- Add Field. Type: Radio. (joomla) -->
<field
type="radio"
@ -197,34 +205,21 @@
<option value="0">
COM_DEMO_LOOK_NO</option>
</field>
<!-- Image Field. Type: Media. (joomla) -->
<field
type="media"
name="image"
label="COM_DEMO_LOOK_IMAGE_LABEL"
directory=""
/>
<!-- Email Field. Type: Text. (joomla) -->
<field
type="text"
name="email"
label="COM_DEMO_LOOK_EMAIL_LABEL"
size="10"
maxlength="50"
description="COM_DEMO_LOOK_EMAIL_DESCRIPTION"
class="text_area"
required="true"
filter="STRING"
validate="email"
message="Error! Please add email address here."
hint="COM_DEMO_LOOK_EMAIL_HINT"
/>
<!-- Not_required Field. Type: Hidden. (joomla) -->
<field
type="hidden"
name="not_required"
default="[]"
/>
<!-- Alias Field. Type: Text. (joomla) -->
<field
type="text"
name="alias"
label="COM_DEMO_LOOK_ALIAS_LABEL"
description="JFIELD_ALIAS_DESC"
filter="STRING"
hint="COM_DEMO_LOOK_ALIAS_HINT"
/>
</fieldset>
<!-- Metadata Fields. -->

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage import.php
@ -84,10 +84,10 @@ class DemoModelImport extends JModelLegacy
public function import()
{
$this->setState('action', 'import');
$app = JFactory::getApplication();
$session = JFactory::getSession();
$package = null;
$continue = false;
$app = JFactory::getApplication();
$session = JFactory::getSession();
$package = null;
$continue = false;
// get import type
$this->getType = $app->input->getString('gettype', NULL);
// get import type
@ -142,7 +142,7 @@ class DemoModelImport extends JModelLegacy
// first link data to table headers
if(!$continue){
$package = json_encode($package);
$package = json_encode($package);
$session->set('package', $package);
$session->set('dataType', $this->dataType);
$session->set('hasPackage', true);
@ -194,8 +194,8 @@ class DemoModelImport extends JModelLegacy
protected function _getPackageFromUpload()
{
// Get the uploaded file information
$app = JFactory::getApplication();
$input = $app->input;
$app = JFactory::getApplication();
$input = $app->input;
// Do not change the filter type 'raw'. We need this to let files containing PHP code to upload. See JInputFiles::get.
$userfile = $input->files->get('import_package', null, 'raw');
@ -222,9 +222,9 @@ class DemoModelImport extends JModelLegacy
}
// Build the appropriate paths
$config = JFactory::getConfig();
$tmp_dest = $config->get('tmp_path') . '/' . $userfile['name'];
$tmp_src = $userfile['tmp_name'];
$config = JFactory::getConfig();
$tmp_dest = $config->get('tmp_path') . '/' . $userfile['name'];
$tmp_src = $userfile['tmp_name'];
// Move uploaded file
jimport('joomla.filesystem.file');
@ -255,8 +255,8 @@ class DemoModelImport extends JModelLegacy
*/
protected function _getPackageFromFolder()
{
$app = JFactory::getApplication();
$input = $app->input;
$app = JFactory::getApplication();
$input = $app->input;
// Get the path to the package to import
$p_dir = $input->getString('import_directory');
@ -286,8 +286,8 @@ class DemoModelImport extends JModelLegacy
}
$package['packagename'] = null;
$package['dir'] = $p_dir;
$package['type'] = $type;
$package['dir'] = $p_dir;
$package['type'] = $type;
return $package;
}
@ -300,8 +300,8 @@ class DemoModelImport extends JModelLegacy
*/
protected function _getPackageFromUrl()
{
$app = JFactory::getApplication();
$input = $app->input;
$app = JFactory::getApplication();
$input = $app->input;
// Get the URL of the package to import
$url = $input->getString('import_url');
@ -340,7 +340,7 @@ class DemoModelImport extends JModelLegacy
*/
protected function check($archivename)
{
$app = JFactory::getApplication();
$app = JFactory::getApplication();
// Clean the name
$archivename = JPath::clean($archivename);
@ -353,15 +353,15 @@ class DemoModelImport extends JModelLegacy
return false;
}
$config = JFactory::getConfig();
$config = JFactory::getConfig();
// set Package Name
$check['packagename'] = $archivename;
$check['packagename'] = $archivename;
// set directory
$check['dir'] = $config->get('tmp_path'). '/' .$archivename;
$check['dir'] = $config->get('tmp_path'). '/' .$archivename;
// set type
$check['type'] = $this->getType;
$check['type'] = $this->getType;
return $check;
}
@ -400,8 +400,8 @@ class DemoModelImport extends JModelLegacy
{
jimport('joomla.filesystem.file');
$config = JFactory::getConfig();
$package = $config->get('tmp_path'). '/' .$package;
$config = JFactory::getConfig();
$package = $config->get('tmp_path'). '/' .$package;
// Is the package file a valid file?
if (is_file($package))
@ -464,11 +464,11 @@ class DemoModelImport extends JModelLegacy
if(DemoHelper::checkArray($data['array']))
{
// get user object
$user = JFactory::getUser();
$user = JFactory::getUser();
// remove header if it has headers
$id_key = $data['target_headers']['id'];
$published_key = $data['target_headers']['published'];
$ordering_key = $data['target_headers']['ordering'];
$id_key = $data['target_headers']['id'];
$published_key = $data['target_headers']['published'];
$ordering_key = $data['target_headers']['ordering'];
// get the first array set
$firstSet = reset($data['array']);
@ -486,13 +486,13 @@ class DemoModelImport extends JModelLegacy
// Get a db connection.
$db = JFactory::getDbo();
// set some defaults
$todayDate = JFactory::getDate()->toSql();
$todayDate = JFactory::getDate()->toSql();
// get global action permissions
$canDo = DemoHelper::getActions($table);
$canEdit = $canDo->get('core.edit');
$canState = $canDo->get('core.edit.state');
$canCreate = $canDo->get('core.create');
$hasAlias = $this->getAliasesUsed($table);
$canDo = DemoHelper::getActions($table);
$canEdit = $canDo->get('core.edit');
$canState = $canDo->get('core.edit.state');
$canCreate = $canDo->get('core.create');
$hasAlias = $this->getAliasesUsed($table);
// prosses the data
foreach($data['array'] as $row)
{
@ -514,11 +514,11 @@ class DemoModelImport extends JModelLegacy
if($found && $canEdit)
{
// update item
$id = $row[$id_key];
$version = $db->loadResult();
$id = $row[$id_key];
$version = $db->loadResult();
// reset all buckets
$query = $db->getQuery(true);
$fields = array();
$query = $db->getQuery(true);
$fields = array();
// Fields to update.
foreach($row as $key => $cell)
{
@ -563,8 +563,8 @@ class DemoModelImport extends JModelLegacy
}
}
// load the defaults
$fields[] = $db->quoteName('modified_by') . ' = ' . $db->quote($user->id);
$fields[] = $db->quoteName('modified') . ' = ' . $db->quote($todayDate);
$fields[] = $db->quoteName('modified_by') . ' = ' . $db->quote($user->id);
$fields[] = $db->quoteName('modified') . ' = ' . $db->quote($todayDate);
// Conditions for which records should be updated.
$conditions = array(
$db->quoteName('id') . ' = ' . $id
@ -579,9 +579,9 @@ class DemoModelImport extends JModelLegacy
// insert item
$query = $db->getQuery(true);
// reset all buckets
$columns = array();
$values = array();
$version = false;
$columns = array();
$values = array();
$version = false;
// Insert columns. Insert values.
foreach($row as $key => $cell)
{
@ -619,30 +619,30 @@ class DemoModelImport extends JModelLegacy
// set to insert array
if(in_array($key, $data['target_headers']) && is_numeric($cell))
{
$columns[] = $target[$key];
$values[] = $cell;
$columns[] = $target[$key];
$values[] = $cell;
}
elseif(in_array($key, $data['target_headers']) && is_string($cell))
{
$columns[] = $target[$key];
$values[] = $db->quote($cell);
$columns[] = $target[$key];
$values[] = $db->quote($cell);
}
elseif(in_array($key, $data['target_headers']) && is_null($cell))
{
// if import data is null then set empty
$columns[] = $target[$key];
$values[] = "''";
$columns[] = $target[$key];
$values[] = "''";
}
}
// load the defaults
$columns[] = 'created_by';
$values[] = $db->quote($user->id);
$columns[] = 'created';
$values[] = $db->quote($todayDate);
$columns[] = 'created_by';
$values[] = $db->quote($user->id);
$columns[] = 'created';
$values[] = $db->quote($todayDate);
if (!$version)
{
$columns[] = 'version';
$values[] = 1;
$columns[] = 'version';
$values[] = 1;
}
// Prepare the insert query.
$query

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage look.php
@ -74,7 +74,7 @@ class DemoModelLook extends JModelAdmin
{
if ($item = parent::getItem($pk))
{
if (!empty($item->params))
if (!empty($item->params) && !is_array($item->params))
{
// Convert the params field to an array.
$registry = new Registry;
@ -173,153 +173,6 @@ class DemoModelLook extends JModelAdmin
// Disable fields while saving.
$form->setFieldAttribute('created', 'filter', 'unset');
}
// Modify the form based on Edit Name access controls.
if ($id != 0 && (!$user->authorise('look.edit.name', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.name', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('name', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('name', 'readonly', 'true');
if (!$form->getValue('name'))
{
// Disable fields while saving.
$form->setFieldAttribute('name', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('name', 'required', 'false');
}
}
// Modify the form based on Edit Description access controls.
if ($id != 0 && (!$user->authorise('look.edit.description', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.description', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('description', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('description', 'readonly', 'true');
if (!$form->getValue('description'))
{
// Disable fields while saving.
$form->setFieldAttribute('description', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('description', 'required', 'false');
}
}
// Modify the form based on Edit Alias access controls.
if ($id != 0 && (!$user->authorise('look.edit.alias', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.alias', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('alias', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('alias', 'readonly', 'true');
if (!$form->getValue('alias'))
{
// Disable fields while saving.
$form->setFieldAttribute('alias', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('alias', 'required', 'false');
}
}
// Modify the form based on Edit Dateofbirth access controls.
if ($id != 0 && (!$user->authorise('look.edit.dateofbirth', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.dateofbirth', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('dateofbirth', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('dateofbirth', 'readonly', 'true');
if (!$form->getValue('dateofbirth'))
{
// Disable fields while saving.
$form->setFieldAttribute('dateofbirth', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('dateofbirth', 'required', 'false');
}
}
// Modify the form based on Edit Website access controls.
if ($id != 0 && (!$user->authorise('look.edit.website', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.website', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('website', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('website', 'readonly', 'true');
if (!$form->getValue('website'))
{
// Disable fields while saving.
$form->setFieldAttribute('website', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('website', 'required', 'false');
}
}
// Modify the form based on Edit Mobile Phone access controls.
if ($id != 0 && (!$user->authorise('look.edit.mobile_phone', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.mobile_phone', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('mobile_phone', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('mobile_phone', 'readonly', 'true');
if (!$form->getValue('mobile_phone'))
{
// Disable fields while saving.
$form->setFieldAttribute('mobile_phone', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('mobile_phone', 'required', 'false');
}
}
// Modify the form based on Edit Add access controls.
if ($id != 0 && (!$user->authorise('look.edit.add', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.add', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('add', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('add', 'readonly', 'true');
// Disable radio button for display.
$class = $form->getFieldAttribute('add', 'class', '');
$form->setFieldAttribute('add', 'class', $class.' disabled no-click');
if (!$form->getValue('add'))
{
// Disable fields while saving.
$form->setFieldAttribute('add', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('add', 'required', 'false');
}
}
// Modify the form based on Edit Image access controls.
if ($id != 0 && (!$user->authorise('look.edit.image', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.image', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('image', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('image', 'readonly', 'true');
if (!$form->getValue('image'))
{
// Disable fields while saving.
$form->setFieldAttribute('image', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('image', 'required', 'false');
}
}
// Modify the form based on Edit Email access controls.
if ($id != 0 && (!$user->authorise('look.edit.email', 'com_demo.look.' . (int) $id))
|| ($id == 0 && !$user->authorise('look.edit.email', 'com_demo')))
{
// Disable fields for display.
$form->setFieldAttribute('email', 'disabled', 'true');
// Disable fields for display.
$form->setFieldAttribute('email', 'readonly', 'true');
if (!$form->getValue('email'))
{
// Disable fields while saving.
$form->setFieldAttribute('email', 'filter', 'unset');
// Disable fields while saving.
$form->setFieldAttribute('email', 'required', 'false');
}
}
// Only load these values if no id is found
if (0 == $id)
{
@ -696,8 +549,6 @@ class DemoModelLook extends JModelAdmin
$this->user = JFactory::getUser();
$this->table = $this->getTable();
$this->tableClassName = get_class($this->table);
$this->contentType = new JUcmType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = DemoHelper::getActions('look');
}
@ -722,7 +573,6 @@ class DemoModelLook extends JModelAdmin
}
$newIds = array();
// Parent exists so let's proceed
while (!empty($pks))
{
@ -732,17 +582,11 @@ class DemoModelLook extends JModelAdmin
$this->table->reset();
// only allow copy if user may edit this item.
if (!$this->user->authorise('look.edit', $contexts[$pk]))
{
// Not fatal error
$this->setError(JText::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk));
continue;
}
// Check that the row actually exists
@ -752,7 +596,6 @@ class DemoModelLook extends JModelAdmin
{
// Fatal error
$this->setError($error);
return false;
}
else
@ -762,7 +605,6 @@ class DemoModelLook extends JModelAdmin
continue;
}
}
list($this->table->name, $this->table->alias) = $this->_generateNewTitle($this->table->alias, $this->table->name);
// insert all set values
@ -845,8 +687,6 @@ class DemoModelLook extends JModelAdmin
$this->user = JFactory::getUser();
$this->table = $this->getTable();
$this->tableClassName = get_class($this->table);
$this->contentType = new JUcmType;
$this->type = $this->contentType->getTypeByTable($this->tableClassName);
$this->canDo = DemoHelper::getActions('look');
}
@ -870,7 +710,6 @@ class DemoModelLook extends JModelAdmin
if (!$this->user->authorise('look.edit', $contexts[$pk]))
{
$this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT'));
return false;
}
@ -881,7 +720,6 @@ class DemoModelLook extends JModelAdmin
{
// Fatal error
$this->setError($error);
return false;
}
else
@ -996,7 +834,7 @@ class DemoModelLook extends JModelAdmin
// Automatic handling of alias for empty fields
if (in_array($input->get('task'), array('apply', 'save', 'save2new')) && (int) $input->get('id') == 0)
{
if ($data['alias'] == null)
if ($data['alias'] == null || empty($data['alias']))
{
if (JFactory::getConfig()->get('unicodeslugs') == 1)
{
@ -1014,8 +852,7 @@ class DemoModelLook extends JModelAdmin
$msg = JText::_('COM_DEMO_LOOK_SAVE_WARNING');
}
list($name, $alias) = $this->_generateNewTitle($data['alias'], $data['name']);
$data['alias'] = $alias;
$data['alias'] = $this->_generateNewTitle($data['alias']);
if (isset($msg))
{
@ -1070,26 +907,49 @@ class DemoModelLook extends JModelAdmin
}
/**
* Method to change the title & alias.
* Method to change the title/s & alias.
*
* @param string $alias The alias.
* @param string $title The title.
* @param string $alias The alias.
* @param string/array $title The title.
*
* @return array Contains the modified title and alias.
* @return array/string Contains the modified title/s and/or alias.
*
*/
protected function _generateNewTitle($alias, $title)
protected function _generateNewTitle($alias, $title = null)
{
// Alter the title & alias
// Alter the title/s & alias
$table = $this->getTable();
while ($table->load(array('alias' => $alias)))
{
$title = JString::increment($title);
// Check if this is an array of titles
if (DemoHelper::checkArray($title))
{
foreach($title as $nr => &$_title)
{
$_title = JString::increment($_title);
}
}
// Make sure we have a title
elseif ($title)
{
$title = JString::increment($title);
}
$alias = JString::increment($alias, 'dash');
}
return array($title, $alias);
// Check if this is an array of titles
if (DemoHelper::checkArray($title))
{
$title[] = $alias;
return $title;
}
// Make sure we have a title
elseif ($title)
{
return array($title, $alias);
}
// We only had an alias
return $alias;
}
}

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage looks.php
@ -178,7 +178,7 @@ class DemoModelLooks extends JModelList
else
{
$search = $db->quote('%' . $db->escape($search) . '%');
$query->where('(a.name LIKE '.$search.' OR a.description LIKE '.$search.' OR a.alias LIKE '.$search.' OR a.add LIKE '.$search.')');
$query->where('(a.name LIKE '.$search.' OR a.description LIKE '.$search.' OR a.add LIKE '.$search.' OR a.alias LIKE '.$search.')');
}
}

View File

@ -33,8 +33,8 @@ CREATE TABLE IF NOT EXISTS `#__demo_look` (
KEY `idx_modifiedby` (`modified_by`),
KEY `idx_state` (`published`),
KEY `idx_name` (`name`),
KEY `idx_alias` (`alias`),
KEY `idx_add` (`add`)
KEY `idx_add` (`add`),
KEY `idx_alias` (`alias`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage look.php
@ -260,7 +260,7 @@ class DemoTableLook extends JTable
}
}
// check if there are any view values remaining
if (count($_result))
if (count( (array) $_result))
{
$_result = json_encode($_result);
$_result = array($_result);

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_main.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_vdm.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage view.html.php
@ -35,12 +35,6 @@ class DemoViewDemo extends JViewLegacy
*/
function display($tpl = null)
{
// Check for errors.
if (count($errors = $this->get('Errors')))
{
JError::raiseError(500, implode('<br />', $errors));
return false;
};
// Assign data to the view
$this->icons = $this->get('Icons');
$this->contributors = DemoHelper::getContributors();
@ -50,6 +44,12 @@ class DemoViewDemo extends JViewLegacy
// Set the toolbar
$this->addToolBar();
// Check for errors.
if (count($errors = $this->get('Errors')))
{
throw new Exception(implode("\n", $errors), 500);
}
// Display the template
parent::display($tpl);
@ -66,15 +66,15 @@ class DemoViewDemo extends JViewLegacy
$canDo = DemoHelper::getActions('demo');
JToolBarHelper::title(JText::_('COM_DEMO_DASHBOARD'), 'grid-2');
// set help url for this view if found
$help_url = DemoHelper::getHelpUrl('demo');
if (DemoHelper::checkString($help_url))
{
// set help url for this view if found
$help_url = DemoHelper::getHelpUrl('demo');
if (DemoHelper::checkString($help_url))
{
JToolbarHelper::help('COM_DEMO_HELP_MANAGER', false, $help_url);
}
}
if ($canDo->get('core.admin') || $canDo->get('core.options'))
{
{
JToolBarHelper::preferences('com_demo');
}
}

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage view.html.php
@ -36,20 +36,13 @@ class DemoViewImport extends JViewLegacy
protected $dataType;
public function display($tpl = null)
{
{
if ($this->getLayout() !== 'modal')
{
// Include helper submenu
DemoHelper::addSubmenu('import');
}
// Check for errors.
if (count($errors = $this->get('Errors')))
{
JError::raiseError(500, implode('<br />', $errors));
return false;
}
$paths = new stdClass;
$paths->first = '';
$state = $this->get('state');
@ -78,6 +71,12 @@ class DemoViewImport extends JViewLegacy
// clear the data type
$session->clear('dataType');
}
// Check for errors.
if (count($errors = $this->get('Errors')))
{
throw new Exception(implode("\n", $errors), 500);
}
// Display the template
parent::display($tpl);
@ -97,10 +96,10 @@ class DemoViewImport extends JViewLegacy
}
// set help url for this view if found
$help_url = DemoHelper::getHelpUrl('import');
if (DemoHelper::checkString($help_url))
{
JToolbarHelper::help('COM_DEMO_HELP_MANAGER', false, $help_url);
}
$help_url = DemoHelper::getHelpUrl('import');
if (DemoHelper::checkString($help_url))
{
JToolbarHelper::help('COM_DEMO_HELP_MANAGER', false, $help_url);
}
}
}

View File

@ -3,7 +3,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage submitbutton.js

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage edit.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage view.html.php
@ -35,38 +35,37 @@ class DemoViewLook extends JViewLegacy
*/
public function display($tpl = null)
{
// Check for errors.
if (count($errors = $this->get('Errors')))
{
JError::raiseError(500, implode('<br />', $errors));
return false;
}
// 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->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);
// get input
$jinput = JFactory::getApplication()->input;
$this->ref = $jinput->get('ref', 0, 'word');
$this->refid = $jinput->get('refid', 0, 'int');
$this->referral = '';
$this->ref = $jinput->get('ref', 0, 'word');
$this->refid = $jinput->get('refid', 0, 'int');
$this->referral = '';
if ($this->refid)
{
// return to the item that refered to this item
$this->referral = '&ref='.(string)$this->ref.'&refid='.(int)$this->refid;
}
elseif($this->ref)
{
// return to the list view that refered to this item
$this->referral = '&ref='.(string)$this->ref;
}
{
// return to the item that refered to this item
$this->referral = '&ref='.(string)$this->ref.'&refid='.(int)$this->refid;
}
elseif($this->ref)
{
// return to the list view that refered to this item
$this->referral = '&ref='.(string)$this->ref;
}
// Set the toolbar
$this->addToolBar();
// Check for errors.
if (count($errors = $this->get('Errors')))
{
throw new Exception(implode("\n", $errors), 500);
}
// Display the template
parent::display($tpl);
@ -159,7 +158,7 @@ class DemoViewLook extends JViewLegacy
}
}
/**
/**
* Escapes a value for output in a view script.
*
* @param mixed $var The output to escape.
@ -173,7 +172,7 @@ class DemoViewLook extends JViewLegacy
// use the helper htmlEscape method instead and shorten the string
return DemoHelper::htmlEscape($var, $this->_charset, true, 30);
}
// use the helper htmlEscape method instead.
// use the helper htmlEscape method instead.
return DemoHelper::htmlEscape($var, $this->_charset);
}
@ -185,11 +184,14 @@ class DemoViewLook extends JViewLegacy
protected function setDocument()
{
$isNew = ($this->item->id < 1);
$document = JFactory::getDocument();
$document->setTitle(JText::_($isNew ? 'COM_DEMO_LOOK_NEW' : 'COM_DEMO_LOOK_EDIT'));
$document->addStyleSheet(JURI::root() . "administrator/components/com_demo/assets/css/look.css");
$document->addScript(JURI::root() . $this->script);
$document->addScript(JURI::root() . "administrator/components/com_demo/views/look/submitbutton.js");
if (!isset($this->document))
{
$this->document = JFactory::getDocument();
}
$this->document->setTitle(JText::_($isNew ? 'COM_DEMO_LOOK_NEW' : 'COM_DEMO_LOOK_EDIT'));
$this->document->addStyleSheet(JURI::root() . "administrator/components/com_demo/assets/css/look.css", (DemoHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');
$this->document->addScript(JURI::root() . $this->script, (DemoHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript');
$this->document->addScript(JURI::root() . "administrator/components/com_demo/views/look/submitbutton.js", (DemoHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/javascript');
JText::script('view not acceptable. Error');
}
}

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_batch_body.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_batch_footer.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_body.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_foot.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_head.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage default_toolbar.php

View File

@ -4,7 +4,7 @@
/-------------------------------------------------------------------------------------------------------/
@version 2.0.0
@build 24th August, 2017
@build 24th April, 2018
@created 18th October, 2016
@package Demo
@subpackage view.html.php
@ -41,39 +41,38 @@ class DemoViewLooks extends JViewLegacy
DemoHelper::addSubmenu('looks');
}
// Check for errors.
if (count($errors = $this->get('Errors')))
{
JError::raiseError(500, implode('<br />', $errors));
return false;
}
// Assign data to the view
$this->items = $this->get('Items');
$this->pagination = $this->get('Pagination');
$this->state = $this->get('State');
$this->user = JFactory::getUser();
$this->listOrder = $this->escape($this->state->get('list.ordering'));
$this->listDirn = $this->escape($this->state->get('list.direction'));
$this->saveOrder = $this->listOrder == 'ordering';
// get global action permissions
$this->canDo = DemoHelper::getActions('look');
$this->canEdit = $this->canDo->get('look.edit');
$this->canState = $this->canDo->get('look.edit.state');
$this->canCreate = $this->canDo->get('look.create');
$this->canDelete = $this->canDo->get('look.delete');
$this->canBatch = $this->canDo->get('core.batch');
$this->items = $this->get('Items');
$this->pagination = $this->get('Pagination');
$this->state = $this->get('State');
$this->user = JFactory::getUser();
$this->listOrder = $this->escape($this->state->get('list.ordering'));
$this->listDirn = $this->escape($this->state->get('list.direction'));
$this->saveOrder = $this->listOrder == 'ordering';
// get global action permissions
$this->canDo = DemoHelper::getActions('look');
$this->canEdit = $this->canDo->get('look.edit');
$this->canState = $this->canDo->get('look.edit.state');
$this->canCreate = $this->canDo->get('look.create');
$this->canDelete = $this->canDo->get('look.delete');
$this->canBatch = $this->canDo->get('core.batch');
// We don't need toolbar in the modal window.
if ($this->getLayout() !== 'modal')
{
$this->addToolbar();
$this->sidebar = JHtmlSidebar::render();
// load the batch html
if ($this->canCreate && $this->canEdit && $this->canState)
{
$this->batchDisplay = JHtmlBatch_::render();
}
// load the batch html
if ($this->canCreate && $this->canEdit && $this->canState)
{
$this->batchDisplay = JHtmlBatch_::render();
}
}
// Check for errors.
if (count($errors = $this->get('Errors')))
{
throw new Exception(implode("\n", $errors), 500);
}
// Display the template
@ -90,96 +89,96 @@ class DemoViewLooks extends JViewLegacy
{
JToolBarHelper::title(JText::_('COM_DEMO_LOOKS'), 'eye-open');
JHtmlSidebar::setAction('index.php?option=com_demo&view=looks');
JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
if ($this->canCreate)
{
{
JToolBarHelper::addNew('look.add');
}
// Only load if there are items
if (DemoHelper::checkArray($this->items))
// Only load if there are items
if (DemoHelper::checkArray($this->items))
{
if ($this->canEdit)
{
JToolBarHelper::editList('look.edit');
}
if ($this->canEdit)
{
JToolBarHelper::editList('look.edit');
}
if ($this->canState)
{
JToolBarHelper::publishList('looks.publish');
JToolBarHelper::unpublishList('looks.unpublish');
JToolBarHelper::archiveList('looks.archive');
if ($this->canState)
{
JToolBarHelper::publishList('looks.publish');
JToolBarHelper::unpublishList('looks.unpublish');
JToolBarHelper::archiveList('looks.archive');
if ($this->canDo->get('core.admin'))
{
JToolBarHelper::checkin('looks.checkin');
}
}
if ($this->canDo->get('core.admin'))
{
JToolBarHelper::checkin('looks.checkin');
}
}
// Add a batch button
if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState)
{
// Get the toolbar object instance
$bar = JToolBar::getInstance('toolbar');
// set the batch button name
$title = JText::_('JTOOLBAR_BATCH');
// Instantiate a new JLayoutFile instance and render the batch button
$layout = new JLayoutFile('joomla.toolbar.batch');
// add the button to the page
$dhtml = $layout->render(array('title' => $title));
$bar->appendButton('Custom', $dhtml, 'batch');
}
// Add a batch button
if ($this->canBatch && $this->canCreate && $this->canEdit && $this->canState)
{
// Get the toolbar object instance
$bar = JToolBar::getInstance('toolbar');
// set the batch button name
$title = JText::_('JTOOLBAR_BATCH');
// Instantiate a new JLayoutFile instance and render the batch button
$layout = new JLayoutFile('joomla.toolbar.batch');
// add the button to the page
$dhtml = $layout->render(array('title' => $title));
$bar->appendButton('Custom', $dhtml, 'batch');
}
if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete))
{
JToolbarHelper::deleteList('', 'looks.delete', 'JTOOLBAR_EMPTY_TRASH');
}
elseif ($this->canState && $this->canDelete)
{
JToolbarHelper::trash('looks.trash');
}
if ($this->state->get('filter.published') == -2 && ($this->canState && $this->canDelete))
{
JToolbarHelper::deleteList('', 'looks.delete', 'JTOOLBAR_EMPTY_TRASH');
}
elseif ($this->canState && $this->canDelete)
{
JToolbarHelper::trash('looks.trash');
}
if ($this->canDo->get('core.export') && $this->canDo->get('look.export'))
{
JToolBarHelper::custom('looks.exportData', 'download', '', 'COM_DEMO_EXPORT_DATA', true);
}
}
}
if ($this->canDo->get('core.import') && $this->canDo->get('look.import'))
{
JToolBarHelper::custom('looks.importData', 'upload', '', 'COM_DEMO_IMPORT_DATA', false);
}
// set help url for this view if found
$help_url = DemoHelper::getHelpUrl('looks');
if (DemoHelper::checkString($help_url))
{
JToolbarHelper::help('COM_DEMO_HELP_MANAGER', false, $help_url);
}
// set help url for this view if found
$help_url = DemoHelper::getHelpUrl('looks');
if (DemoHelper::checkString($help_url))
{
JToolbarHelper::help('COM_DEMO_HELP_MANAGER', false, $help_url);
}
// add the options comp button
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{
JToolBarHelper::preferences('com_demo');
}
// add the options comp button
if ($this->canDo->get('core.admin') || $this->canDo->get('core.options'))
{
JToolBarHelper::preferences('com_demo');
}
if ($this->canState)
{
if ($this->canState)
{
JHtmlSidebar::addFilter(
JText::_('JOPTION_SELECT_PUBLISHED'),
'filter_published',
JHtml::_('select.options', JHtml::_('jgrid.publishedOptions'), 'value', 'text', $this->state->get('filter.published'), true)
);
// only load if batch allowed
if ($this->canBatch)
{
JHtmlBatch_::addListSelection(
JText::_('COM_DEMO_KEEP_ORIGINAL_STATE'),
'batch[published]',
JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all' => false)), 'value', 'text', '', true)
);
}
// only load if batch allowed
if ($this->canBatch)
{
JHtmlBatch_::addListSelection(
JText::_('COM_DEMO_KEEP_ORIGINAL_STATE'),
'batch[published]',
JHtml::_('select.options', JHtml::_('jgrid.publishedOptions', array('all' => false)), 'value', 'text', '', true)
);
}
}
JHtmlSidebar::addFilter(
@ -191,11 +190,11 @@ class DemoViewLooks extends JViewLegacy
if ($this->canBatch && $this->canCreate && $this->canEdit)
{
JHtmlBatch_::addListSelection(
JText::_('COM_DEMO_KEEP_ORIGINAL_ACCESS'),
'batch[access]',
JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text')
JText::_('COM_DEMO_KEEP_ORIGINAL_ACCESS'),
'batch[access]',
JHtml::_('select.options', JHtml::_('access.assetgroups'), 'value', 'text')
);
}
}
}
/**
@ -205,12 +204,15 @@ class DemoViewLooks extends JViewLegacy
*/
protected function setDocument()
{
$document = JFactory::getDocument();
$document->setTitle(JText::_('COM_DEMO_LOOKS'));
$document->addStyleSheet(JURI::root() . "administrator/components/com_demo/assets/css/looks.css");
if (!isset($this->document))
{
$this->document = JFactory::getDocument();
}
$this->document->setTitle(JText::_('COM_DEMO_LOOKS'));
$this->document->addStyleSheet(JURI::root() . "administrator/components/com_demo/assets/css/looks.css", (DemoHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');
}
/**
/**
* Escapes a value for output in a view script.
*
* @param mixed $var The output to escape.
@ -221,10 +223,10 @@ class DemoViewLooks extends JViewLegacy
{
if(strlen($var) > 50)
{
// use the helper htmlEscape method instead and shorten the string
// use the helper htmlEscape method instead and shorten the string
return DemoHelper::htmlEscape($var, $this->_charset, true);
}
// use the helper htmlEscape method instead.
// use the helper htmlEscape method instead.
return DemoHelper::htmlEscape($var, $this->_charset);
}
@ -242,5 +244,5 @@ class DemoViewLooks extends JViewLegacy
'a.description' => JText::_('COM_DEMO_LOOK_DESCRIPTION_LABEL'),
'a.id' => JText::_('JGRID_HEADING_ID')
);
}
}
}

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="3.2" method="upgrade">
<name>COM_DEMO</name>
<creationDate>24th August, 2017</creationDate>
<creationDate>24th April, 2018</creationDate>
<author>Llewellyn van der Merwe</author>
<authorEmail>info@vdm.io</authorEmail>
<authorEmail>joomla@vdm.io</authorEmail>
<authorUrl>https://www.vdm.io/</authorUrl>
<copyright>Copyright (C) 2015. All Rights Reserved</copyright>
<license>GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html</license>
@ -37,7 +37,7 @@
<folder>js</folder>
<folder>css</folder>
<folder>images</folder>
<folder>uikit</folder>
<folder>uikit-v2</folder>
</media>
<!-- Update Schema; New in Joomla 2.5 -->
@ -74,7 +74,7 @@
<files folder="admin">
<filename>access.xml</filename>
<filename>config.xml</filename>
<filename>controller.php</filename>
<filename>controller.php</filename>###WHMCS_ENCRYPT_FILE###
<filename>index.html</filename>
<filename>demo.php</filename>
<filename>README.txt</filename>

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Accordion
========================================================================== */
@ -12,7 +12,7 @@
font-size: 18px;
line-height: 24px;
cursor: pointer;
border: 1px solid #dddddd;
border: 1px solid #ddd;
border-radius: 4px;
}
/* Sub-object: `uk-accordion-content`

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Accordion
========================================================================== */
@ -8,7 +8,7 @@
margin-top: 0;
margin-bottom: 15px;
padding: 5px 15px;
background: #eeeeee;
background: #eee;
font-size: 18px;
line-height: 24px;
cursor: pointer;

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Accordion
========================================================================== */
@ -12,7 +12,7 @@
font-size: 18px;
line-height: 24px;
cursor: pointer;
border: 1px solid #dddddd;
border: 1px solid #ddd;
border-radius: 4px;
}
/* Sub-object: `uk-accordion-content`

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Autocomplete
========================================================================== */
@ -18,13 +18,18 @@
/* 4 */
vertical-align: middle;
}
/* Legacy dropdown modifier */
.uk-dropdown-flip {
left: auto;
right: 0;
}
/* Nav modifier `uk-nav-autocomplete`
========================================================================== */
/*
* Items
*/
.uk-nav-autocomplete > li > a {
color: #444444;
color: #444;
}
/*
* Active
@ -32,7 +37,7 @@
*/
.uk-nav-autocomplete > li.uk-active > a {
background: #00a8e6;
color: #ffffff;
color: #fff;
/* 1 */
outline: none;
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
@ -42,11 +47,11 @@
* Sub-object: `uk-nav-header`
*/
.uk-nav-autocomplete .uk-nav-header {
color: #999999;
color: #999;
}
/*
* Sub-object: `uk-nav-divider`
*/
.uk-nav-autocomplete .uk-nav-divider {
border-top: 1px solid #dddddd;
border-top: 1px solid #ddd;
}

View File

@ -0,0 +1,2 @@
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Autocomplete
========================================================================== */
@ -18,13 +18,18 @@
/* 4 */
vertical-align: middle;
}
/* Legacy dropdown modifier */
.uk-dropdown-flip {
left: auto;
right: 0;
}
/* Nav modifier `uk-nav-autocomplete`
========================================================================== */
/*
* Items
*/
.uk-nav-autocomplete > li > a {
color: #444444;
color: #444;
}
/*
* Active
@ -32,7 +37,7 @@
*/
.uk-nav-autocomplete > li.uk-active > a {
background: #00a8e6;
color: #ffffff;
color: #fff;
/* 1 */
outline: none;
}
@ -40,11 +45,11 @@
* Sub-object: `uk-nav-header`
*/
.uk-nav-autocomplete .uk-nav-header {
color: #999999;
color: #999;
}
/*
* Sub-object: `uk-nav-divider`
*/
.uk-nav-autocomplete .uk-nav-divider {
border-top: 1px solid #dddddd;
border-top: 1px solid #ddd;
}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Autocomplete
========================================================================== */
@ -18,13 +18,18 @@
/* 4 */
vertical-align: middle;
}
/* Legacy dropdown modifier */
.uk-dropdown-flip {
left: auto;
right: 0;
}
/* Nav modifier `uk-nav-autocomplete`
========================================================================== */
/*
* Items
*/
.uk-nav-autocomplete > li > a {
color: #444444;
color: #444;
}
/*
* Active
@ -32,7 +37,7 @@
*/
.uk-nav-autocomplete > li.uk-active > a {
background: #009dd8;
color: #ffffff;
color: #fff;
/* 1 */
outline: none;
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
@ -42,11 +47,11 @@
* Sub-object: `uk-nav-header`
*/
.uk-nav-autocomplete .uk-nav-header {
color: #999999;
color: #999;
}
/*
* Sub-object: `uk-nav-divider`
*/
.uk-nav-autocomplete .uk-nav-divider {
border-top: 1px solid #dddddd;
border-top: 1px solid #ddd;
}

View File

@ -0,0 +1,2 @@
/*! UIkit 2.27.4 | 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}

View File

@ -0,0 +1,2 @@
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Datepicker
========================================================================== */
@ -42,11 +42,11 @@
* Previous and next navigation
*/
.uk-datepicker-nav a {
color: #444444;
color: #444;
text-decoration: none;
}
.uk-datepicker-nav a:hover {
color: #444444;
color: #444;
}
.uk-datepicker-previous {
float: left;
@ -88,7 +88,7 @@
width: 26px;
line-height: 24px;
text-align: center;
color: #444444;
color: #444;
text-decoration: none;
border: 1px solid transparent;
border-radius: 4px;
@ -97,7 +97,7 @@
* Sub-object: `uk-datepicker-table-muted`
*/
a.uk-datepicker-table-muted {
color: #999999;
color: #999;
}
/*
* Hover
@ -107,23 +107,23 @@ a.uk-datepicker-table-muted {
.uk-datepicker-table a:hover,
.uk-datepicker-table a:focus {
background-color: #fafafa;
color: #444444;
color: #444;
/* 2 */
outline: none;
border-color: rgba(0, 0, 0, 0.16);
text-shadow: 0 1px 0 #ffffff;
text-shadow: 0 1px 0 #fff;
}
/* OnClick */
.uk-datepicker-table a:active {
background-color: #eeeeee;
color: #444444;
background-color: #eee;
color: #444;
}
/*
* Active
*/
.uk-datepicker-table a.uk-active {
background: #00a8e6;
color: #ffffff;
color: #fff;
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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)}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Datepicker
========================================================================== */
@ -42,11 +42,11 @@
* Previous and next navigation
*/
.uk-datepicker-nav a {
color: #444444;
color: #444;
text-decoration: none;
}
.uk-datepicker-nav a:hover {
color: #444444;
color: #444;
}
.uk-datepicker-previous {
float: left;
@ -88,14 +88,14 @@
width: 26px;
line-height: 24px;
text-align: center;
color: #444444;
color: #444;
text-decoration: none;
}
/*
* Sub-object: `uk-datepicker-table-muted`
*/
a.uk-datepicker-table-muted {
color: #999999;
color: #999;
}
/*
* Hover
@ -104,20 +104,20 @@ a.uk-datepicker-table-muted {
*/
.uk-datepicker-table a:hover,
.uk-datepicker-table a:focus {
background-color: #dddddd;
color: #444444;
background-color: #ddd;
color: #444;
/* 2 */
outline: none;
}
/* OnClick */
.uk-datepicker-table a:active {
background-color: #cccccc;
color: #444444;
background-color: #ccc;
color: #444;
}
/*
* Active
*/
.uk-datepicker-table a.uk-active {
background: #00a8e6;
color: #ffffff;
color: #fff;
}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Datepicker
========================================================================== */
@ -42,11 +42,11 @@
* Previous and next navigation
*/
.uk-datepicker-nav a {
color: #444444;
color: #444;
text-decoration: none;
}
.uk-datepicker-nav a:hover {
color: #444444;
color: #444;
}
.uk-datepicker-previous {
float: left;
@ -88,7 +88,7 @@
width: 26px;
line-height: 24px;
text-align: center;
color: #444444;
color: #444;
text-decoration: none;
border: 1px solid transparent;
border-radius: 4px;
@ -98,7 +98,7 @@
* Sub-object: `uk-datepicker-table-muted`
*/
a.uk-datepicker-table-muted {
color: #999999;
color: #999;
}
/*
* Hover
@ -108,17 +108,17 @@ a.uk-datepicker-table-muted {
.uk-datepicker-table a:hover,
.uk-datepicker-table a:focus {
background-color: #fafafa;
color: #444444;
color: #444;
/* 2 */
outline: none;
border-color: rgba(0, 0, 0, 0.2);
border-bottom-color: rgba(0, 0, 0, 0.3);
text-shadow: 0 1px 0 #ffffff;
text-shadow: 0 1px 0 #fff;
}
/* OnClick */
.uk-datepicker-table a:active {
background-color: #f5f5f5;
color: #444444;
color: #444;
border-color: rgba(0, 0, 0, 0.2);
border-top-color: rgba(0, 0, 0, 0.3);
background-image: none;
@ -129,7 +129,7 @@ a.uk-datepicker-table-muted {
*/
.uk-datepicker-table a.uk-active {
background: #009dd8;
color: #ffffff;
color: #fff;
border: 1px solid rgba(0, 0, 0, 0.2);
border-bottom-color: rgba(0, 0, 0, 0.4);
background-origin: border-box;

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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)}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Dotnav
========================================================================== */

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Dotnav
========================================================================== */

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Dotnav
========================================================================== */

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form advanced
Note: Only works in Webkit at the moment
@ -16,7 +16,7 @@
display: inline-block;
height: 14px;
width: 14px;
border: 1px solid #aaaaaa;
border: 1px solid #aaa;
/* 2 */
overflow: hidden;
/* 3 */
@ -67,12 +67,12 @@
*/
.uk-form input[type=radio]:disabled,
.uk-form input[type=checkbox]:disabled {
border-color: #dddddd;
border-color: #ddd;
}
.uk-form input[type=radio]:disabled:checked:before {
background-color: #aaaaaa;
background-color: #aaa;
}
.uk-form input[type=checkbox]:disabled:checked:before,
.uk-form input[type=checkbox]:disabled:indeterminate:before {
color: #aaaaaa;
color: #aaa;
}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form advanced
Note: Only works in Webkit at the moment
@ -16,7 +16,7 @@
display: inline-block;
height: 14px;
width: 14px;
border: 1px solid #aaaaaa;
border: 1px solid #aaa;
/* 2 */
overflow: hidden;
/* 3 */
@ -67,12 +67,12 @@
*/
.uk-form input[type=radio]:disabled,
.uk-form input[type=checkbox]:disabled {
border-color: #dddddd;
border-color: #ddd;
}
.uk-form input[type=radio]:disabled:checked:before {
background-color: #aaaaaa;
background-color: #aaa;
}
.uk-form input[type=checkbox]:disabled:checked:before,
.uk-form input[type=checkbox]:disabled:indeterminate:before {
color: #aaaaaa;
color: #aaa;
}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form advanced
Note: Only works in Webkit at the moment
@ -16,7 +16,7 @@
display: inline-block;
height: 14px;
width: 14px;
border: 1px solid #aaaaaa;
border: 1px solid #aaa;
/* 2 */
overflow: hidden;
/* 3 */
@ -67,12 +67,12 @@
*/
.uk-form input[type=radio]:disabled,
.uk-form input[type=checkbox]:disabled {
border-color: #dddddd;
border-color: #ddd;
}
.uk-form input[type=radio]:disabled:checked:before {
background-color: #aaaaaa;
background-color: #aaa;
}
.uk-form input[type=checkbox]:disabled:checked:before,
.uk-form input[type=checkbox]:disabled:indeterminate:before {
color: #aaaaaa;
color: #aaa;
}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form file
========================================================================== */

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form file
========================================================================== */

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form file
========================================================================== */

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form password
========================================================================== */
@ -23,10 +23,10 @@
margin-top: -6px;
font-size: 13px;
line-height: 13px;
color: #999999;
color: #999;
}
.uk-form-password-toggle:hover {
color: #999999;
color: #999;
text-decoration: none;
}
.uk-form-password > input {

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form password
========================================================================== */
@ -23,10 +23,10 @@
margin-top: -6px;
font-size: 13px;
line-height: 13px;
color: #999999;
color: #999;
}
.uk-form-password-toggle:hover {
color: #999999;
color: #999;
text-decoration: none;
}
.uk-form-password > input {

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form password
========================================================================== */
@ -23,10 +23,10 @@
margin-top: -6px;
font-size: 13px;
line-height: 13px;
color: #999999;
color: #999;
}
.uk-form-password-toggle:hover {
color: #999999;
color: #999;
text-decoration: none;
}
.uk-form-password > input {

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form select
========================================================================== */

View File

@ -1,2 +1,2 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | 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}

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form select
========================================================================== */

View File

@ -1,4 +1,4 @@
/*! UIkit 2.25.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/*! UIkit 2.27.4 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
/* ========================================================================
Component: Form select
========================================================================== */

Some files were not shown because too many files have changed in this diff Show More