joomla-component/admin/tmpl/open_ai_response/default.php
Robot 831530ff6b
Release of v5.0.14
Refactored the API classes. Add table schema checker.
2024-07-15 09:58:20 +02:00

147 lines
6.1 KiB
PHP

<?php
/*----------------------------------------------------------------------------------| io.vdm.dev |----/
Vast Development Method
/-------------------------------------------------------------------------------------------------------/
@package getBible.net
@created 3rd 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
/------------------------------------------------------------------------------------------------------*/
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper as Html;
use Joomla\CMS\Layout\LayoutHelper;
use Joomla\CMS\Router\Route;
use TrueChristianBible\Component\GetBible\Administrator\Helper\GetbibleHelper;
/** @var Joomla\CMS\WebAsset\WebAssetManager $wa */
$wa = $this->getDocument()->getWebAssetManager();
$wa->useScript('keepalive')->useScript('form.validate');
Html::_('bootstrap.tooltip');
// No direct access to this file
defined('_JEXEC') or die;
?>
<script type="text/javascript">
// waiting spinner
var outerDiv = document.querySelector('body');
var loadingDiv = document.createElement('div');
loadingDiv.id = 'loading';
loadingDiv.style.cssText = "background: rgba(255, 255, 255, .8) url('components/com_getbible/assets/images/import.gif') 50% 15% no-repeat; top: " + (outerDiv.getBoundingClientRect().top + window.pageYOffset) + "px; left: " + (outerDiv.getBoundingClientRect().left + window.pageXOffset) + "px; width: " + outerDiv.offsetWidth + "px; height: " + outerDiv.offsetHeight + "px; position: fixed; opacity: 0.80; -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); filter: alpha(opacity=80); display: none;";
outerDiv.appendChild(loadingDiv);
loadingDiv.style.display = 'block';
// when page is ready remove and show
window.addEventListener('load', function() {
var componentLoader = document.getElementById('getbible_loader');
if (componentLoader) componentLoader.style.display = 'block';
loadingDiv.style.display = 'none';
});
</script>
<div id="getbible_loader" style="display: none;">
<form action="<?php echo Route::_('index.php?option=com_getbible&layout=edit&id='. (int) $this->item->id . $this->referral); ?>" method="post" name="adminForm" id="adminForm" class="form-validate" enctype="multipart/form-data">
<?php echo LayoutHelper::render('open_ai_response.details_above', $this); ?>
<div class="main-card">
<?php echo Html::_('uitab.startTabSet', 'open_ai_responseTab', ['active' => 'details', 'recall' => true]); ?>
<?php echo Html::_('uitab.addTab', 'open_ai_responseTab', 'details', Text::_('COM_GETBIBLE_OPEN_AI_RESPONSE_DETAILS', true)); ?>
<div class="row">
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.details_left', $this); ?>
</div>
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.details_right', $this); ?>
</div>
</div>
<?php echo Html::_('uitab.endTab'); ?>
<?php echo Html::_('uitab.addTab', 'open_ai_responseTab', 'prompt', Text::_('COM_GETBIBLE_OPEN_AI_RESPONSE_PROMPT', true)); ?>
<div class="row">
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.prompt_left', $this); ?>
</div>
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.prompt_right', $this); ?>
</div>
</div>
<?php echo Html::_('uitab.endTab'); ?>
<?php echo Html::_('uitab.addTab', 'open_ai_responseTab', 'bible', Text::_('COM_GETBIBLE_OPEN_AI_RESPONSE_BIBLE', true)); ?>
<div class="row">
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.bible_left', $this); ?>
</div>
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.bible_right', $this); ?>
</div>
</div>
<?php echo Html::_('uitab.endTab'); ?>
<?php if ($this->canDo->get('open_ai_message.access')) : ?>
<?php echo Html::_('uitab.addTab', 'open_ai_responseTab', 'message', Text::_('COM_GETBIBLE_OPEN_AI_RESPONSE_MESSAGE', true)); ?>
<div class="row">
</div>
<div class="row">
<div class="col-md-12">
<?php echo LayoutHelper::render('open_ai_response.message_fullwidth', $this); ?>
</div>
</div>
<?php echo Html::_('uitab.endTab'); ?>
<?php endif; ?>
<?php $this->ignore_fieldsets = array('details','metadata','vdmmetadata','accesscontrol'); ?>
<?php $this->tab_name = 'open_ai_responseTab'; ?>
<?php echo LayoutHelper::render('joomla.edit.params', $this); ?>
<?php if ($this->canDo->get('open_ai_response.edit.created_by') || $this->canDo->get('open_ai_response.edit.created') || $this->canDo->get('open_ai_response.edit.state') || ($this->canDo->get('open_ai_response.delete') && $this->canDo->get('open_ai_response.edit.state'))) : ?>
<?php echo Html::_('uitab.addTab', 'open_ai_responseTab', 'publishing', Text::_('COM_GETBIBLE_OPEN_AI_RESPONSE_PUBLISHING', true)); ?>
<div class="row">
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.publishing', $this); ?>
</div>
<div class="col-md-6">
<?php echo LayoutHelper::render('open_ai_response.publlshing', $this); ?>
</div>
</div>
<?php echo Html::_('uitab.endTab'); ?>
<?php endif; ?>
<?php if ($this->canDo->get('core.admin')) : ?>
<?php echo Html::_('uitab.addTab', 'open_ai_responseTab', 'permissions', Text::_('COM_GETBIBLE_OPEN_AI_RESPONSE_PERMISSION', true)); ?>
<div class="row">
<div class="col-md-12">
<fieldset class="adminform">
<div class="adminformlist">
<?php foreach ($this->form->getFieldset('accesscontrol') as $field): ?>
<div>
<?php echo $field->label; echo $field->input;?>
</div>
<div class="clearfix"></div>
<?php endforeach; ?>
</div>
</fieldset>
</div>
</div>
<?php echo Html::_('uitab.endTab'); ?>
<?php endif; ?>
<?php echo Html::_('uitab.endTabSet'); ?>
<div>
<input type="hidden" name="task" value="open_ai_response.edit" />
<?php echo Html::_('form.token'); ?>
</div>
</div>
</form>
</div>