forked from joomla/Component-Builder
Robot
0ec95282ee
Improved the Schema Table update engine (more). Fix autoloader timing, and loading. Implement the Joomla Powers in JCB code, to move away from JClasses.
144 lines
5.5 KiB
PHP
144 lines
5.5 KiB
PHP
<?php
|
|
/**
|
|
* @package Joomla.Component.Builder
|
|
*
|
|
* @created 30th April, 2015
|
|
* @author Llewellyn van der Merwe <https://dev.vdm.io>
|
|
* @git Joomla Component Builder <https://git.vdm.dev/joomla/Component-Builder>
|
|
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
use Joomla\CMS\Factory;
|
|
use Joomla\CMS\Language\Text;
|
|
use Joomla\CMS\HTML\HTMLHelper as Html;
|
|
use VDM\Component\Componentbuilder\Administrator\Helper\ComponentbuilderHelper;
|
|
use VDM\Joomla\Utilities\ArrayHelper;
|
|
use VDM\Joomla\Utilities\GetHelper;
|
|
use Joomla\CMS\Uri\Uri;
|
|
|
|
// No direct access to this file
|
|
defined('_JEXEC') or die;
|
|
|
|
$edit = "index.php?option=com_componentbuilder&view=libraries&task=library.edit";
|
|
|
|
?>
|
|
<?php foreach ($this->items as $i => $item): ?>
|
|
<?php
|
|
$canCheckin = $this->user->authorise('core.manage', 'com_checkin') || $item->checked_out == $this->user->id || $item->checked_out == 0;
|
|
$userChkOut = Factory::getContainer()->
|
|
get(\Joomla\CMS\User\UserFactoryInterface::class)->
|
|
loadUserById($item->checked_out);
|
|
$canDo = ComponentbuilderHelper::getActions('library',$item,'libraries');
|
|
?>
|
|
<tr class="row<?php echo $i % 2; ?>">
|
|
<td class="order nowrap center hidden-phone">
|
|
<?php if ($canDo->get('library.edit.state')): ?>
|
|
<?php
|
|
$iconClass = '';
|
|
if (!$this->saveOrder)
|
|
{
|
|
$iconClass = ' inactive tip-top" hasTooltip" title="' . Html::tooltipText('JORDERINGDISABLED');
|
|
}
|
|
?>
|
|
<span class="sortable-handler<?php echo $iconClass; ?>">
|
|
<i class="icon-menu"></i>
|
|
</span>
|
|
<?php if ($this->saveOrder) : ?>
|
|
<input type="text" style="display:none" name="order[]" size="5"
|
|
value="<?php echo $item->ordering; ?>" class="width-20 text-area-order " />
|
|
<?php endif; ?>
|
|
<?php else: ?>
|
|
⋮
|
|
<?php endif; ?>
|
|
</td>
|
|
<td class="nowrap center">
|
|
<?php if ($canDo->get('library.edit')): ?>
|
|
<?php if ($item->checked_out) : ?>
|
|
<?php if ($canCheckin) : ?>
|
|
<?php echo Html::_('grid.id', $i, $item->id); ?>
|
|
<?php else: ?>
|
|
□
|
|
<?php endif; ?>
|
|
<?php else: ?>
|
|
<?php echo Html::_('grid.id', $i, $item->id); ?>
|
|
<?php endif; ?>
|
|
<?php else: ?>
|
|
□
|
|
<?php endif; ?>
|
|
</td>
|
|
<td class="nowrap">
|
|
<div>
|
|
<?php if ($canDo->get('library.edit')): ?>
|
|
<a href="<?php echo $edit; ?>&id=<?php echo $item->id; ?>"><?php echo $this->escape($item->name); ?></a>
|
|
<?php if ($item->checked_out): ?>
|
|
<?php echo Html::_('jgrid.checkedout', $i, $userChkOut->name, $item->checked_out_time, 'libraries.', $canCheckin); ?>
|
|
<?php endif; ?>
|
|
<?php else: ?>
|
|
<?php echo $this->escape($item->name); ?>
|
|
<?php endif; ?>
|
|
</div>
|
|
<?php // setup the return path
|
|
if (!isset($returnpath))
|
|
{
|
|
$returnpath = urlencode(base64_encode((string) Uri::getInstance()));
|
|
}
|
|
// setup the buttons
|
|
if (!isset($_buttons) || !ArrayHelper::check($_buttons))
|
|
{
|
|
$_buttons = array(
|
|
array(
|
|
'view' => 'library_config',
|
|
'views' => 'libraries_config',
|
|
'title' => Text::_('COM_COMPONENTBUILDER_THE_LIBRARY_CONFIG_FIELDS'),
|
|
'icon' => 'options'),
|
|
array(
|
|
'view' => 'library_files_folders_urls',
|
|
'views' => 'libraries_files_folders_urls',
|
|
'title' => Text::_('COM_COMPONENTBUILDER_THE_LIBRARY_FILES_FOLDERS_URLS'),
|
|
'icon' => 'briefcase')
|
|
);
|
|
}
|
|
?>
|
|
<div class="btn-group" style="margin: 5px 0 0 0;">
|
|
<?php foreach ($_buttons as $_button): ?>
|
|
<?php if ($canDo->get($_button['view'].'.edit') && ($id = GetHelper::var($_button['view'], $item->id, 'library', 'id')) !== false): ?>
|
|
<a class="hasTooltip btn btn-mini" href="index.php?option=com_componentbuilder&view=<?php echo $_button['views'] ?>&task=<?php echo $_button['view'] ?>.edit&id=<?php echo $id; ?>&return=<?php echo $returnpath; ?>" title="<?php echo $_button['title']; ?>" ><span class="icon-<?php echo $_button['icon']; ?>"></span></a>
|
|
<?php elseif ($canDo->get($_button['view'].'.create')): ?>
|
|
<a class="hasTooltip btn btn-mini" href="index.php?option=com_componentbuilder&view=<?php echo $_button['views'] ?>&task=<?php echo $_button['view'] ?>.edit&ref=library&refid=<?php echo $item->id; ?>&return=<?php echo $returnpath; ?>" title="<?php echo $_button['title']; ?>" ><span class="icon-<?php echo $_button['icon']; ?>"></span></a>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|
|
</div>
|
|
</td>
|
|
<td class="hidden-phone">
|
|
<?php echo Text::_($item->target); ?>
|
|
</td>
|
|
<td class="hidden-phone">
|
|
<?php echo $this->escape($item->how); ?>
|
|
</td>
|
|
<td class="hidden-phone">
|
|
<?php echo Text::_($item->type); ?>
|
|
</td>
|
|
<td class="hidden-phone">
|
|
<?php echo $this->escape($item->description); ?>
|
|
</td>
|
|
<td class="center">
|
|
<?php if ($canDo->get('library.edit.state')) : ?>
|
|
<?php if ($item->checked_out) : ?>
|
|
<?php if ($canCheckin) : ?>
|
|
<?php echo Html::_('jgrid.published', $item->published, $i, 'libraries.', true, 'cb'); ?>
|
|
<?php else: ?>
|
|
<?php echo Html::_('jgrid.published', $item->published, $i, 'libraries.', false, 'cb'); ?>
|
|
<?php endif; ?>
|
|
<?php else: ?>
|
|
<?php echo Html::_('jgrid.published', $item->published, $i, 'libraries.', true, 'cb'); ?>
|
|
<?php endif; ?>
|
|
<?php else: ?>
|
|
<?php echo Html::_('jgrid.published', $item->published, $i, 'libraries.', false, 'cb'); ?>
|
|
<?php endif; ?>
|
|
</td>
|
|
<td class="nowrap center hidden-phone">
|
|
<?php echo $item->id; ?>
|
|
</td>
|
|
</tr>
|
|
<?php endforeach; ?>
|