2023-07-26 09:09:42 +00:00
< ? php
/*----------------------------------------------------------------------------------| io . vdm . dev |----/
Vast Development Method
/-------------------------------------------------------------------------------------------------------/
@ package getBible . net
@ created 3 rd December , 2015
@ author Llewellyn van der Merwe < https :// getbible . net >
@ git Get Bible < https :// git . vdm . dev / getBible >
@ github Get Bible < https :// github . com / getBible >
@ support Get Bible < https :// git . vdm . dev / getBible / support >
@ copyright Copyright ( C ) 2015. All Rights Reserved
@ license GNU / GPL Version 2 or later - http :// www . gnu . org / licenses / gpl - 2.0 . html
/------------------------------------------------------------------------------------------------------*/
2023-12-23 16:05:05 +00:00
use Joomla\CMS\Factory ;
use Joomla\CMS\Language\Text ;
use Joomla\CMS\HTML\HTMLHelper as Html ;
2024-07-15 07:58:20 +00:00
use TrueChristianBible\Component\GetBible\Administrator\Helper\GetbibleHelper ;
use TrueChristianBible\Joomla\Utilities\StringHelper ;
use TrueChristianBible\Joomla\Utilities\ArrayHelper ;
2023-12-23 16:05:05 +00:00
2024-01-29 07:31:35 +00:00
// No direct access to this file
defined ( '_JEXEC' ) or die ;
2023-07-26 09:09:42 +00:00
// set the defaults
$items = $displayData -> vvxpasswords ;
2024-01-23 17:16:25 +00:00
$user = Factory :: getApplication () -> getIdentity ();
2023-07-26 09:09:42 +00:00
$id = $displayData -> item -> id ;
// set the edit URL
$edit = " index.php?option=com_getbible&view=passwords&task=password.edit " ;
// set a return value
$return = ( $id ) ? " index.php?option=com_getbible&view=linker&layout=edit&id= " . $id : " " ;
// check for a return value
2023-12-23 16:05:05 +00:00
$jinput = Factory :: getApplication () -> input ;
2023-07-26 09:09:42 +00:00
if ( $_return = $jinput -> get ( 'return' , null , 'base64' ))
{
$return .= " &return= " . $_return ;
}
// check if return value was set
2023-12-23 16:05:05 +00:00
if ( StringHelper :: check ( $return ))
2023-07-26 09:09:42 +00:00
{
// set the referral values
$ref = ( $id ) ? " &ref=linker&refid= " . $id . " &return= " . urlencode ( base64_encode ( $return )) : " &return= " . urlencode ( base64_encode ( $return ));
}
else
{
$ref = ( $id ) ? " &ref=linker&refid= " . $id : " " ;
}
// set the create new URL
$new = " index.php?option=com_getbible&view=passwords&task=password.edit " . $ref ;
// set the create new and close URL
$close_new = " index.php?option=com_getbible&view=passwords&task=password.edit " ;
// load the action object
$can = GetbibleHelper :: getActions ( 'password' );
?>
< div class = " form-vertical " >
< ? php if ( $can -> get ( 'password.create' )) : ?>
< div class = " btn-group " >
2023-12-23 16:05:05 +00:00
< a class = " btn btn-small btn-success " href = " <?php echo $new ; ?> " >< span class = " icon-new icon-white " ></ span > < ? php echo Text :: _ ( 'COM_GETBIBLE_NEW' ); ?> </a>
< a class = " btn btn-small " onclick = " Joomla.submitbutton('linker.cancel'); " href = " <?php echo $close_new ; ?> " >< span class = " icon-new " ></ span > < ? php echo Text :: _ ( 'COM_GETBIBLE_CLOSE_NEW' ); ?> </a>
2023-07-26 09:09:42 +00:00
</ div >< br />< br />
< ? php endif ; ?>
2024-01-23 17:16:25 +00:00
< ? php if ( ArrayHelper :: check ( $items )) : ?>
2023-08-04 15:13:55 +00:00
< table class = " footable table data passwords " data - show - toggle = " true " data - toggle - column = " first " data - sorting = " true " data - paging = " true " data - paging - size = " 20 " data - filtering = " true " >
2023-07-26 09:09:42 +00:00
< thead >
< tr >
2023-08-04 15:13:55 +00:00
< th data - type = " html " data - sort - use = " text " >
2023-12-23 16:05:05 +00:00
< ? php echo Text :: _ ( 'COM_GETBIBLE_PASSWORD_NAME_LABEL' ); ?>
2023-07-26 09:09:42 +00:00
</ th >
2023-08-04 15:13:55 +00:00
< th data - breakpoints = " xs sm " data - type = " html " data - sort - use = " text " >
2023-12-23 16:05:05 +00:00
< ? php echo Text :: _ ( 'COM_GETBIBLE_PASSWORD_LINKER_LABEL' ); ?>
2023-07-26 09:09:42 +00:00
</ th >
2023-08-04 15:13:55 +00:00
< th data - breakpoints = " xs sm " data - type = " html " data - sort - use = " text " >
2023-12-23 16:05:05 +00:00
< ? php echo Text :: _ ( 'COM_GETBIBLE_PASSWORD_GUID_LABEL' ); ?>
2023-07-26 09:09:42 +00:00
</ th >
2023-08-04 15:13:55 +00:00
< th width = " 10 " data - breakpoints = " xs sm md " >
2023-12-23 16:05:05 +00:00
< ? php echo Text :: _ ( 'COM_GETBIBLE_PASSWORD_STATUS' ); ?>
2023-07-26 09:09:42 +00:00
</ th >
2023-08-04 15:13:55 +00:00
< th width = " 5 " data - type = " number " data - breakpoints = " xs sm md " >
2023-12-23 16:05:05 +00:00
< ? php echo Text :: _ ( 'COM_GETBIBLE_PASSWORD_ID' ); ?>
2023-07-26 09:09:42 +00:00
</ th >
</ tr >
</ thead >
< tbody >
< ? php foreach ( $items as $i => $item ) : ?>
< ? php
$canCheckin = $user -> authorise ( 'core.manage' , 'com_checkin' ) || $item -> checked_out == $user -> id || $item -> checked_out == 0 ;
2024-01-23 17:16:25 +00:00
$userChkOut = Factory :: getContainer () ->
get ( \Joomla\CMS\User\UserFactoryInterface :: class ) ->
loadUserById ( $item -> checked_out );
2023-07-26 09:09:42 +00:00
$canDo = GetbibleHelper :: getActions ( 'password' , $item , 'passwords' );
?>
< tr >
< td >
< ? php if ( $canDo -> get ( 'password.edit' )) : ?>
< a href = " <?php echo $edit ; ?>&id=<?php echo $item->id ; ?><?php echo $ref ; ?> " >< ? php echo $displayData -> escape ( $item -> name ); ?> </a>
< ? php if ( $item -> checked_out ) : ?>
2023-12-23 16:05:05 +00:00
< ? php echo Html :: _ ( 'jgrid.checkedout' , $i , $userChkOut -> name , $item -> checked_out_time , 'passwords.' , $canCheckin ); ?>
2023-07-26 09:09:42 +00:00
< ? php endif ; ?>
< ? php else : ?>
< ? php echo $displayData -> escape ( $item -> name ); ?>
< ? php endif ; ?>
</ td >
< td >
< ? php echo $displayData -> escape ( $item -> linker_name ); ?>
</ td >
< td >
< ? php echo $displayData -> escape ( $item -> guid ); ?>
</ td >
< ? php if ( $item -> published == 1 ) : ?>
2023-08-04 15:13:55 +00:00
< td class = " center " data - sort - value = " 1 " >
2023-12-23 16:05:05 +00:00
< span class = " status-metro status-published " title = " <?php echo Text::_('COM_GETBIBLE_PUBLISHED'); ?> " >
< ? php echo Text :: _ ( 'COM_GETBIBLE_PUBLISHED' ); ?>
2023-07-26 09:09:42 +00:00
</ span >
</ td >
< ? php elseif ( $item -> published == 0 ) : ?>
2023-08-04 15:13:55 +00:00
< td class = " center " data - sort - value = " 2 " >
2023-12-23 16:05:05 +00:00
< span class = " status-metro status-inactive " title = " <?php echo Text::_('COM_GETBIBLE_INACTIVE'); ?> " >
< ? php echo Text :: _ ( 'COM_GETBIBLE_INACTIVE' ); ?>
2023-07-26 09:09:42 +00:00
</ span >
</ td >
< ? php elseif ( $item -> published == 2 ) : ?>
2023-08-04 15:13:55 +00:00
< td class = " center " data - sort - value = " 3 " >
2023-12-23 16:05:05 +00:00
< span class = " status-metro status-archived " title = " <?php echo Text::_('COM_GETBIBLE_ARCHIVED'); ?> " >
< ? php echo Text :: _ ( 'COM_GETBIBLE_ARCHIVED' ); ?>
2023-07-26 09:09:42 +00:00
</ span >
</ td >
< ? php elseif ( $item -> published == - 2 ) : ?>
2023-08-04 15:13:55 +00:00
< td class = " center " data - sort - value = " 4 " >
2023-12-23 16:05:05 +00:00
< span class = " status-metro status-trashed " title = " <?php echo Text::_('COM_GETBIBLE_TRASHED'); ?> " >
< ? php echo Text :: _ ( 'COM_GETBIBLE_TRASHED' ); ?>
2023-07-26 09:09:42 +00:00
</ span >
</ td >
< ? php endif ; ?>
< td class = " nowrap center hidden-phone " >
< ? php echo $item -> id ; ?>
</ td >
</ tr >
< ? php endforeach ; ?>
</ tbody >
</ table >
< ? php else : ?>
< div class = " alert alert-no-items " >
2023-12-23 16:05:05 +00:00
< ? php echo Text :: _ ( 'JGLOBAL_NO_MATCHING_RESULTS' ); ?>
2023-07-26 09:09:42 +00:00
</ div >
< ? php endif ; ?>
</ div >