Spade

Mini Shell

Directory:~$ /proc/self/root/home/lmsyaran/www/pusher/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ //proc/self/root/home/lmsyaran/www/pusher/views.zip

PK{V�[�Z�**login/tmpl/default.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

$cookieLogin = $this->user->get('cookieLogin');

if (!empty($cookieLogin) || $this->user->get('guest'))
{
	// The user is not logged in or needs to provide a password.
	echo $this->loadTemplate('login');
}
else
{
	// The user is already logged in.
	echo $this->loadTemplate('logout');
}
PK{V�[?��|GGlogin/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_LOGIN_VIEW_DEFAULT_TITLE"
option="COM_USER_LOGIN_VIEW_DEFAULT_OPTION">
		<help
			key = "JHELP_MENUS_MENU_ITEM_USER_LOGIN"
		/>
		<message>
			<![CDATA[COM_USER_LOGIN_VIEW_DEFAULT_DESC]]>
		</message>
	</layout>

	<!-- Add fields to the parameters object for the layout. -->
	<fields name="params">

		<!-- Basic options. -->
		<fieldset name="basic"
addrulepath="components/com_users/models/rules"
label="COM_MENUS_BASIC_FIELDSET_LABEL">

		<field
			name="loginredirectchoice"
			type="radio"
			label="COM_USERS_FIELD_LOGIN_REDIRECT_CHOICE_LABEL"
			description="COM_USERS_FIELD_LOGIN_REDIRECT_CHOICE_DESC"
			class="btn-group btn-group-yesno"
			default="1"
			>
			<option
value="1">COM_USERS_FIELD_LOGIN_MENUITEM</option>
			<option
value="0">COM_USERS_FIELD_LOGIN_URL</option>
		</field>

		<field
			name="login_redirect_url"
			type="text"
			label="JFIELD_LOGIN_REDIRECT_URL_LABEL"
			description="JFIELD_LOGIN_REDIRECT_URL_DESC"
			class="inputbox"
			validate="loginuniquefield"
			field="login_redirect_menuitem"
			hint="COM_USERS_FIELD_LOGIN_REDIRECT_PLACEHOLDER"
			message="COM_USERS_FIELD_LOGIN_REDIRECT_ERROR"
			showon="loginredirectchoice:0"
		/>

		<field
			name="login_redirect_menuitem"
			type="modal_menu"
			label="COM_USERS_FIELD_LOGIN_REDIRECTMENU_LABEL"
			description="COM_USERS_FIELD_LOGIN_REDIRECTMENU_DESC"
			disable="separator,alias,heading,url"
			showon="loginredirectchoice:1"
			select="true"
			new="true"
			edit="true"
			clear="true"
			>
			<option value="">JDEFAULT</option>
		</field>

		<field
			name="logindescription_show"
			type="list"
			label="JFIELD_BASIS_LOGIN_DESCRIPTION_SHOW_LABEL"
			description="JFIELD_BASIS_LOGIN_DESCRIPTION_SHOW_DESC"
			default="1"
			class="chzn-color"
			>
			<option value="0">JHIDE</option>
			<option value="1">JSHOW</option>
		</field>

		<field
			name="login_description"
			type="textarea"
			label="JFIELD_BASIS_LOGIN_DESCRIPTION_LABEL"
			description="JFIELD_BASIS_LOGIN_DESCRIPTION_DESC"
			rows="3"
			cols="40"
			filter="safehtml"
			showon="logindescription_show:1"
		/>

		<field
			name="login_image"
			type="media"
			label="JFIELD_LOGIN_IMAGE_LABEL"
			description="JFIELD_LOGIN_IMAGE_DESC"
		/>

		<field 
			name="spacer1" 
			type="spacer"
			hr="true"
		/>

		<field
			name="logoutredirectchoice"
			type="radio"
			label="COM_USERS_FIELD_LOGOUT_REDIRECT_CHOICE_LABEL"
			description="COM_USERS_FIELD_LOGOUT_REDIRECT_CHOICE_DESC"
			class="btn-group btn-group-yesno"
			default="1"
			>
			<option
value="1">COM_USERS_FIELD_LOGIN_MENUITEM</option>
			<option
value="0">COM_USERS_FIELD_LOGIN_URL</option>
		</field>

		<field
			name="logout_redirect_url"
			type="text"
			label="JFIELD_LOGOUT_REDIRECT_URL_LABEL"
			description="JFIELD_LOGOUT_REDIRECT_URL_DESC"
			class="inputbox"
			field="logout_redirect_menuitem"
			validate="logoutuniquefield"
			hint="COM_USERS_FIELD_LOGIN_REDIRECT_PLACEHOLDER"
			message="COM_USERS_FIELD_LOGOUT_REDIRECT_ERROR"
			showon="logoutredirectchoice:0"
		/>
		
		<field
			name="logout_redirect_menuitem"
			type="modal_menu"
			label="COM_USERS_FIELD_LOGOUT_REDIRECTMENU_LABEL"
			description="COM_USERS_FIELD_LOGOUT_REDIRECTMENU_DESC"
			disable="separator,alias,heading,url"
			showon="logoutredirectchoice:1"
			select="true"
			new="true"
			edit="true"
			clear="true"
			>
			<option value="">JDEFAULT</option>
		</field>

		<field
			name="logoutdescription_show"
			type="list"
			label="JFIELD_BASIS_LOGOUT_DESCRIPTION_SHOW_LABEL"
			description="JFIELD_BASIS_LOGOUT_DESCRIPTION_SHOW_DESC"
			default="1"
			class="chzn-color"
			>
			<option value="0">JHIDE</option>
			<option value="1">JSHOW</option>
		</field>

		<field
			name="logout_description"
			type="textarea"
			label="JFIELD_BASIS_LOGOUT_DESCRIPTION_LABEL"
			description="JFIELD_BASIS_LOGOUT_DESCRIPTION_DESC"
			rows="3"
			cols="40"
			filter="safehtml"
			showon="logoutdescription_show:1"
		/>

		<field
			name="logout_image"
			type="media"
			label="JFIELD_LOGOUT_IMAGE_LABEL"
			description="JFIELD_LOGOUT_IMAGE_DESC"
		/>

		</fieldset>
	</fields>
</metadata>
PK{V�[S��!��login/tmpl/default_login.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');

?>
<div class="login<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<?php if (($this->params->get('logindescription_show')
== 1 && str_replace(' ', '',
$this->params->get('login_description')) != '')
|| $this->params->get('login_image') != '') :
?>
		<div class="login-description">
	<?php endif; ?>
	<?php if ($this->params->get('logindescription_show')
== 1) : ?>
		<?php echo $this->params->get('login_description');
?>
	<?php endif; ?>
	<?php if ($this->params->get('login_image') !=
'') : ?>
		<img src="<?php echo
$this->escape($this->params->get('login_image'));
?>" class="login-image" alt="<?php echo
JText::_('COM_USERS_LOGIN_IMAGE_ALT'); ?>" />
	<?php endif; ?>
	<?php if (($this->params->get('logindescription_show')
== 1 && str_replace(' ', '',
$this->params->get('login_description')) != '')
|| $this->params->get('login_image') != '') :
?>
		</div>
	<?php endif; ?>
	<form action="<?php echo
JRoute::_('index.php?option=com_users&task=user.login');
?>" method="post" class="form-validate
form-horizontal well">
		<fieldset>
			<?php echo
$this->form->renderFieldset('credentials'); ?>
			<?php if ($this->tfa) : ?>
				<?php echo $this->form->renderField('secretkey');
?>
			<?php endif; ?>
			<?php if (JPluginHelper::isEnabled('system',
'remember')) : ?>
				<div class="control-group">
					<div class="control-label">
						<label for="remember">
							<?php echo JText::_('COM_USERS_LOGIN_REMEMBER_ME');
?>
						</label>
					</div>
					<div class="controls">
						<input id="remember" type="checkbox"
name="remember" class="inputbox" value="yes"
/>
					</div>
				</div>
			<?php endif; ?>
			<div class="control-group">
				<div class="controls">
					<button type="submit" class="btn
btn-primary">
						<?php echo JText::_('JLOGIN'); ?>
					</button>
				</div>
			</div>
			<?php $return = $this->form->getValue('return',
'', $this->params->get('login_redirect_url',
$this->params->get('login_redirect_menuitem'))); ?>
			<input type="hidden" name="return"
value="<?php echo base64_encode($return); ?>" />
			<?php echo JHtml::_('form.token'); ?>
		</fieldset>
	</form>
</div>
<div>
	<ul class="nav nav-tabs nav-stacked">
		<li>
			<a href="<?php echo
JRoute::_('index.php?option=com_users&view=reset');
?>">
				<?php echo JText::_('COM_USERS_LOGIN_RESET'); ?>
			</a>
		</li>
		<li>
			<a href="<?php echo
JRoute::_('index.php?option=com_users&view=remind');
?>">
				<?php echo JText::_('COM_USERS_LOGIN_REMIND'); ?>
			</a>
		</li>
		<?php $usersConfig =
JComponentHelper::getParams('com_users'); ?>
		<?php if ($usersConfig->get('allowUserRegistration')) :
?>
			<li>
				<a href="<?php echo
JRoute::_('index.php?option=com_users&view=registration');
?>">
					<?php echo JText::_('COM_USERS_LOGIN_REGISTER'); ?>
				</a>
			</li>
		<?php endif; ?>
	</ul>
</div>
PK{V�[*G���login/tmpl/default_logout.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

?>
<div class="logout<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<?php if (($this->params->get('logoutdescription_show')
== 1 && str_replace(' ', '',
$this->params->get('logout_description')) !=
'')|| $this->params->get('logout_image') !=
'') : ?>
		<div class="logout-description">
	<?php endif; ?>
	<?php if ($this->params->get('logoutdescription_show')
== 1) : ?>
		<?php echo $this->params->get('logout_description');
?>
	<?php endif; ?>
	<?php if ($this->params->get('logout_image') !=
'') : ?>
		<img src="<?php echo
$this->escape($this->params->get('logout_image'));
?>" class="thumbnail pull-right logout-image"
alt="<?php echo JText::_('COM_USER_LOGOUT_IMAGE_ALT');
?>" />
	<?php endif; ?>
	<?php if (($this->params->get('logoutdescription_show')
== 1 && str_replace(' ', '',
$this->params->get('logout_description')) !=
'')|| $this->params->get('logout_image') !=
'') : ?>
		</div>
	<?php endif; ?>
	<form action="<?php echo
JRoute::_('index.php?option=com_users&task=user.logout');
?>" method="post" class="form-horizontal
well">
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn
btn-primary">
					<span class="icon-arrow-left icon-white"></span>
					<?php echo JText::_('JLOGOUT'); ?>
				</button>
			</div>
		</div>
		<?php if ($this->params->get('logout_redirect_url')) :
?>
			<input type="hidden" name="return"
value="<?php echo
base64_encode($this->params->get('logout_redirect_url',
$this->form->getValue('return'))); ?>" />
		<?php else : ?>
			<input type="hidden" name="return"
value="<?php echo
base64_encode($this->params->get('logout_redirect_menuitem',
$this->form->getValue('return'))); ?>" />
		<?php endif; ?>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[¿�.��login/tmpl/logout.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_LOGOUT_VIEW_DEFAULT_TITLE"
option="COM_USER_LOGOUT_VIEW_DEFAULT_OPTION">
		<help key = "JHELP_MENUS_MENU_ITEM_USER_LOGOUT"/>
		<message>
			<![CDATA[COM_USER_LOGOUT_VIEW_DEFAULT_DESC]]>
		</message>
	</layout>

	<!-- Add fields to the request variables for the layout. -->
	<fields name="request">
		<fieldset name="request">
			<field
				name="task"
				type="hidden"
				default="user.menulogout"
			/>
		</fieldset>
	</fields>

	<!-- Add fields to the parameters object for the layout. -->
	<fields name="params">
		<fieldset name="basic"
label="COM_MENUS_BASIC_FIELDSET_LABEL">
			<field
				name="logout"
				type="modal_menu"
				label="JFIELD_LOGOUT_REDIRECT_PAGE_LABEL"
				description="JFIELD_LOGOUT_REDIRECT_PAGE_DESC"
				disable="separator,alias,heading,url"
				select="true"
				new="true"
				edit="true"
				clear="true"
				>
				<option value="">JDEFAULT</option>
			</field>
		</fieldset>
	</fields>
</metadata>
PK{V�[������login/view.html.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

/**
 * Login view class for Users.
 *
 * @since  1.5
 */
class UsersViewLogin extends JViewLegacy
{
	protected $form;

	protected $params;

	protected $state;

	protected $user;

	/**
	 * Method to display the view.
	 *
	 * @param   string  $tpl  The name of the template file to parse;
automatically searches through the template paths.
	 *
	 * @return  mixed  A string if successful, otherwise an Error object.
	 *
	 * @since   1.5
	 */
	public function display($tpl = null)
	{
		// Get the view data.
		$this->user   = JFactory::getUser();
		$this->form   = $this->get('Form');
		$this->state  = $this->get('State');
		$this->params = $this->state->get('params');

		// Check for errors.
		if (count($errors = $this->get('Errors')))
		{
			JError::raiseError(500, implode('<br />', $errors));

			return false;
		}

		// Check for layout override
		$active = JFactory::getApplication()->getMenu()->getActive();

		if (isset($active->query['layout']))
		{
			$this->setLayout($active->query['layout']);
		}

		$tfa = JAuthenticationHelper::getTwoFactorMethods();
		$this->tfa = is_array($tfa) && count($tfa) > 1;

		// Escape strings for HTML output
		$this->pageclass_sfx =
htmlspecialchars($this->params->get('pageclass_sfx'),
ENT_COMPAT, 'UTF-8');

		$this->prepareDocument();

		parent::display($tpl);
	}

	/**
	 * Prepares the document
	 *
	 * @return  void
	 *
	 * @since   1.6
	 */
	protected function prepareDocument()
	{
		$app   = JFactory::getApplication();
		$menus = $app->getMenu();
		$user  = JFactory::getUser();
		$login = $user->get('guest') ? true : false;
		$title = null;

		// Because the application sets a default page title,
		// we need to get it from the menu item itself
		$menu = $menus->getActive();

		if ($menu)
		{
			$this->params->def('page_heading',
$this->params->get('page_title', $menu->title));
		}
		else
		{
			$this->params->def('page_heading', $login ?
JText::_('JLOGIN') : JText::_('JLOGOUT'));
		}

		$title = $this->params->get('page_title', '');

		if (empty($title))
		{
			$title = $app->get('sitename');
		}
		elseif ($app->get('sitename_pagetitles', 0) == 1)
		{
			$title = JText::sprintf('JPAGETITLE',
$app->get('sitename'), $title);
		}
		elseif ($app->get('sitename_pagetitles', 0) == 2)
		{
			$title = JText::sprintf('JPAGETITLE', $title,
$app->get('sitename'));
		}

		$this->document->setTitle($title);

		if ($this->params->get('menu-meta_description'))
		{
			$this->document->setDescription($this->params->get('menu-meta_description'));
		}

		if ($this->params->get('menu-meta_keywords'))
		{
			$this->document->setMetadata('keywords',
$this->params->get('menu-meta_keywords'));
		}

		if ($this->params->get('robots'))
		{
			$this->document->setMetadata('robots',
$this->params->get('robots'));
		}
	}
}
PK{V�[s-T�##profile/tmpl/default.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

?>
<div class="profile<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<?php if (JFactory::getUser()->id == $this->data->id) : ?>
		<ul class="btn-toolbar pull-right">
			<li class="btn-group">
				<a class="btn" href="<?php echo
JRoute::_('index.php?option=com_users&task=profile.edit&user_id='
. (int) $this->data->id); ?>">
					<span class="icon-user"></span>
					<?php echo JText::_('COM_USERS_EDIT_PROFILE'); ?>
				</a>
			</li>
		</ul>
	<?php endif; ?>
	<?php echo $this->loadTemplate('core'); ?>
	<?php echo $this->loadTemplate('params'); ?>
	<?php echo $this->loadTemplate('custom'); ?>
</div>
PK{V�[����33profile/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_PROFILE_VIEW_DEFAULT_TITLE"
option="COM_USER_PROFILE_VIEW_DEFAULT_OPTION">
		<help
			key = "JHELP_MENUS_MENU_ITEM_USER_PROFILE"
		/>
		<message>
			<![CDATA[COM_USER_PROFILE_VIEW_DEFAULT_DESC]]>
		</message>
	</layout>
</metadata>
PK{V�[����profile/tmpl/default_core.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

?>
<fieldset id="users-profile-core">
	<legend>
		<?php echo JText::_('COM_USERS_PROFILE_CORE_LEGEND'); ?>
	</legend>
	<dl class="dl-horizontal">
		<dt>
			<?php echo JText::_('COM_USERS_PROFILE_NAME_LABEL'); ?>
		</dt>
		<dd>
			<?php echo $this->escape($this->data->name); ?>
		</dd>
		<dt>
			<?php echo JText::_('COM_USERS_PROFILE_USERNAME_LABEL');
?>
		</dt>
		<dd>
			<?php echo $this->escape($this->data->username); ?>
		</dd>
		<dt>
			<?php echo
JText::_('COM_USERS_PROFILE_REGISTERED_DATE_LABEL'); ?>
		</dt>
		<dd>
			<?php echo JHtml::_('date',
$this->data->registerDate, JText::_('DATE_FORMAT_LC1'));
?>
		</dd>
		<dt>
			<?php echo
JText::_('COM_USERS_PROFILE_LAST_VISITED_DATE_LABEL'); ?>
		</dt>
		<?php if ($this->data->lastvisitDate !=
$this->db->getNullDate()) : ?>
			<dd>
				<?php echo JHtml::_('date',
$this->data->lastvisitDate, JText::_('DATE_FORMAT_LC1'));
?>
			</dd>
		<?php else : ?>
			<dd>
				<?php echo JText::_('COM_USERS_PROFILE_NEVER_VISITED');
?>
			</dd>
		<?php endif; ?>
	</dl>
</fieldset>
PK{V�[K���	�	profile/tmpl/default_custom.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::addIncludePath(JPATH_COMPONENT . '/helpers/html');
JHtml::register('users.spacer', array('JHtmlUsers',
'spacer'));

$fieldsets = $this->form->getFieldsets();

if (isset($fieldsets['core']))
{
	unset($fieldsets['core']);
}

if (isset($fieldsets['params']))
{
	unset($fieldsets['params']);
}

$tmp          = isset($this->data->jcfields) ?
$this->data->jcfields : array();
$customFields = array();

foreach ($tmp as $customField)
{
	$customFields[$customField->name] = $customField;
}

?>
<?php foreach ($fieldsets as $group => $fieldset) : ?>
	<?php $fields = $this->form->getFieldset($group); ?>
	<?php if (count($fields)) : ?>
		<fieldset id="users-profile-custom-<?php echo $group;
?>" class="users-profile-custom-<?php echo $group;
?>">
			<?php if (isset($fieldset->label) && ($legend =
trim(JText::_($fieldset->label))) !== '') : ?>
				<legend><?php echo $legend; ?></legend>
			<?php endif; ?>
			<?php if (isset($fieldset->description) &&
trim($fieldset->description)) : ?>
				<p><?php echo
$this->escape(JText::_($fieldset->description)); ?></p>
			<?php endif; ?>
			<dl class="dl-horizontal">
				<?php foreach ($fields as $field) : ?>
					<?php if (!$field->hidden && $field->type !==
'Spacer') : ?>
						<dt>
							<?php echo $field->title; ?>
						</dt>
						<dd>
							<?php if (key_exists($field->fieldname, $customFields)) :
?>
								<?php echo strlen($customFields[$field->fieldname]->value)
? $customFields[$field->fieldname]->value :
JText::_('COM_USERS_PROFILE_VALUE_NOT_FOUND'); ?>
							<?php elseif (JHtml::isRegistered('users.' .
$field->id)) : ?>
								<?php echo JHtml::_('users.' . $field->id,
$field->value); ?>
							<?php elseif (JHtml::isRegistered('users.' .
$field->fieldname)) : ?>
								<?php echo JHtml::_('users.' . $field->fieldname,
$field->value); ?>
							<?php elseif (JHtml::isRegistered('users.' .
$field->type)) : ?>
								<?php echo JHtml::_('users.' . $field->type,
$field->value); ?>
							<?php else : ?>
								<?php echo JHtml::_('users.value', $field->value);
?>
							<?php endif; ?>
						</dd>
					<?php endif; ?>
				<?php endforeach; ?>
			</dl>
		</fieldset>
	<?php endif; ?>
<?php endforeach; ?>
PK{V�[�A
33profile/tmpl/default_params.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::addIncludePath(JPATH_COMPONENT . '/helpers/html');

?>
<?php $fields = $this->form->getFieldset('params');
?>
<?php if (count($fields)) : ?>
	<fieldset id="users-profile-custom">
		<legend><?php echo
JText::_('COM_USERS_SETTINGS_FIELDSET_LABEL');
?></legend>
		<dl class="dl-horizontal">
			<?php foreach ($fields as $field) : ?>
				<?php if (!$field->hidden) : ?>
					<dt>
						<?php echo $field->title; ?>
					</dt>
					<dd>
						<?php if (JHtml::isRegistered('users.' . $field->id))
: ?>
							<?php echo JHtml::_('users.' . $field->id,
$field->value); ?>
						<?php elseif (JHtml::isRegistered('users.' .
$field->fieldname)) : ?>
							<?php echo JHtml::_('users.' . $field->fieldname,
$field->value); ?>
						<?php elseif (JHtml::isRegistered('users.' .
$field->type)) : ?>
							<?php echo JHtml::_('users.' . $field->type,
$field->value); ?>
						<?php else : ?>
							<?php echo JHtml::_('users.value', $field->value);
?>
						<?php endif; ?>
					</dd>
				<?php endif; ?>
			<?php endforeach; ?>
		</dl>
	</fieldset>
<?php endif; ?>
PK{V�[�~�profile/tmpl/edit.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');
JHtml::_('formbehavior.chosen', 'select');
JHtml::_('bootstrap.tooltip');


// Load user_profile plugin language
$lang = JFactory::getLanguage();
$lang->load('plg_user_profile', JPATH_ADMINISTRATOR);

?>
<div class="profile-edit<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<script type="text/javascript">
		Joomla.twoFactorMethodChange = function(e)
		{
			var selectedPane = 'com_users_twofactor_' +
jQuery('#jform_twofactor_method').val();

			jQuery.each(jQuery('#com_users_twofactor_forms_container>div'),
function(i, el)
			{
				if (el.id != selectedPane)
				{
					jQuery('#' + el.id).hide(0);
				}
				else
				{
					jQuery('#' + el.id).show(0);
				}
			});
		}
	</script>
	<form id="member-profile" action="<?php echo
JRoute::_('index.php?option=com_users&task=profile.save');
?>" method="post" class="form-validate
form-horizontal well" enctype="multipart/form-data">
		<?php // Iterate through the form fieldsets and display each one.
?>
		<?php foreach ($this->form->getFieldsets() as $group =>
$fieldset) : ?>
			<?php $fields = $this->form->getFieldset($group); ?>
			<?php if (count($fields)) : ?>
				<fieldset>
					<?php // If the fieldset has a label set, display it as the legend.
?>
					<?php if (isset($fieldset->label)) : ?>
						<legend>
							<?php echo JText::_($fieldset->label); ?>
						</legend>
					<?php endif; ?>
					<?php if (isset($fieldset->description) &&
trim($fieldset->description)) : ?>
						<p>
							<?php echo $this->escape(JText::_($fieldset->description));
?>
						</p>
					<?php endif; ?>
					<?php // Iterate through the fields in the set and display them.
?>
					<?php foreach ($fields as $field) : ?>
						<?php // If the field is hidden, just display the input. ?>
						<?php if ($field->hidden) : ?>
							<?php echo $field->input; ?>
						<?php else : ?>
							<div class="control-group">
								<div class="control-label">
									<?php echo $field->label; ?>
									<?php if (!$field->required && $field->type !==
'Spacer') : ?>
										<span class="optional">
											<?php echo JText::_('COM_USERS_OPTIONAL'); ?>
										</span>
									<?php endif; ?>
								</div>
								<div class="controls">
									<?php if ($field->fieldname === 'password1') :
?>
										<?php // Disables autocomplete ?>
										<input type="password"
style="display:none">
									<?php endif; ?>
									<?php echo $field->input; ?>
								</div>
							</div>
						<?php endif; ?>
					<?php endforeach; ?>
				</fieldset>
			<?php endif; ?>
		<?php endforeach; ?>
		<?php if (count($this->twofactormethods) > 1) : ?>
			<fieldset>
				<legend><?php echo
JText::_('COM_USERS_PROFILE_TWO_FACTOR_AUTH');
?></legend>
				<div class="control-group">
					<div class="control-label">
						<label id="jform_twofactor_method-lbl"
for="jform_twofactor_method" class="hasTooltip"
							title="<?php echo '<strong>' .
JText::_('COM_USERS_PROFILE_TWOFACTOR_LABEL') .
'</strong><br />' .
JText::_('COM_USERS_PROFILE_TWOFACTOR_DESC'); ?>">
							<?php echo
JText::_('COM_USERS_PROFILE_TWOFACTOR_LABEL'); ?>
						</label>
					</div>
					<div class="controls">
						<?php echo JHtml::_('select.genericlist',
$this->twofactormethods, 'jform[twofactor][method]',
array('onchange' =>
'Joomla.twoFactorMethodChange()'), 'value',
'text', $this->otpConfig->method,
'jform_twofactor_method', false); ?>
					</div>
				</div>
				<div id="com_users_twofactor_forms_container">
					<?php foreach ($this->twofactorform as $form) : ?>
						<?php $style = $form['method'] ==
$this->otpConfig->method ? 'display: block' :
'display: none'; ?>
						<div id="com_users_twofactor_<?php echo
$form['method']; ?>" style="<?php echo $style;
?>">
							<?php echo $form['form']; ?>
						</div>
					<?php endforeach; ?>
				</div>
			</fieldset>
			<fieldset>
				<legend>
					<?php echo JText::_('COM_USERS_PROFILE_OTEPS'); ?>
				</legend>
				<div class="alert alert-info">
					<?php echo JText::_('COM_USERS_PROFILE_OTEPS_DESC');
?>
				</div>
				<?php if (empty($this->otpConfig->otep)) : ?>
					<div class="alert alert-warning">
						<?php echo
JText::_('COM_USERS_PROFILE_OTEPS_WAIT_DESC'); ?>
					</div>
				<?php else : ?>
					<?php foreach ($this->otpConfig->otep as $otep) : ?>
						<span class="span3">
							<?php echo substr($otep, 0, 4); ?>-<?php echo substr($otep,
4, 4); ?>-<?php echo substr($otep, 8, 4); ?>-<?php echo
substr($otep, 12, 4); ?>
						</span>
					<?php endforeach; ?>
					<div class="clearfix"></div>
				<?php endif; ?>
			</fieldset>
		<?php endif; ?>
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn btn-primary
validate">
					<?php echo JText::_('JSUBMIT'); ?>
				</button>
				<a class="btn" href="<?php echo
JRoute::_('index.php?option=com_users&view=profile');
?>" title="<?php echo JText::_('JCANCEL');
?>">
					<?php echo JText::_('JCANCEL'); ?>
				</a>
				<input type="hidden" name="option"
value="com_users" />
				<input type="hidden" name="task"
value="profile.save" />
			</div>
		</div>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[ݏ�88profile/tmpl/edit.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_PROFILE_EDIT_DEFAULT_TITLE"
option="COM_USER_PROFILE_EDIT_DEFAULT_OPTION">
		<help
			key = "JHELP_MENUS_MENU_ITEM_USER_PROFILE_EDIT"
		/>
		<message>
			<![CDATA[COM_USER_PROFILE_EDIT_DEFAULT_DESC]]>
		</message>
	</layout>
</metadata>
PK{V�[�'E��profile/view.html.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

/**
 * Profile view class for Users.
 *
 * @since  1.6
 */
class UsersViewProfile extends JViewLegacy
{
	protected $data;

	protected $form;

	protected $params;

	protected $state;

	/**
	 * An instance of JDatabaseDriver.
	 *
	 * @var    JDatabaseDriver
	 * @since  3.6.3
	 */
	protected $db;

	/**
	 * Execute and display a template script.
	 *
	 * @param   string  $tpl  The name of the template file to parse;
automatically searches through the template paths.
	 *
	 * @return  mixed   A string if successful, otherwise an Error object.
	 *
	 * @since   1.6
	 */
	public function display($tpl = null)
	{
		$user = JFactory::getUser();

		// Get the view data.
		$this->data	        = $this->get('Data');
		$this->form	        = $this->getModel()->getForm(new
JObject(array('id' => $user->id)));
		$this->state            = $this->get('State');
		$this->params           = $this->state->get('params');
		$this->twofactorform    = $this->get('Twofactorform');
		$this->twofactormethods = UsersHelper::getTwoFactorMethods();
		$this->otpConfig        = $this->get('OtpConfig');
		$this->db               = JFactory::getDbo();

		// Check for errors.
		if (count($errors = $this->get('Errors')))
		{
			JError::raiseError(500, implode('<br />', $errors));

			return false;
		}

		// View also takes responsibility for checking if the user logged in with
remember me.
		$cookieLogin = $user->get('cookieLogin');

		if (!empty($cookieLogin))
		{
			// If so, the user must login to edit the password and other data.
			// What should happen here? Should we force a logout which destroys the
cookies?
			$app = JFactory::getApplication();
			$app->enqueueMessage(JText::_('JGLOBAL_REMEMBER_MUST_LOGIN'),
'message');
			$app->redirect(JRoute::_('index.php?option=com_users&view=login',
false));

			return false;
		}

		// Check if a user was found.
		if (!$this->data->id)
		{
			JError::raiseError(404,
JText::_('JERROR_USERS_PROFILE_NOT_FOUND'));

			return false;
		}

		JPluginHelper::importPlugin('content');
		$this->data->text = '';
		JEventDispatcher::getInstance()->trigger('onContentPrepare',
array ('com_users.user', &$this->data,
&$this->data->params, 0));
		unset($this->data->text);

		// Check for layout override
		$active = JFactory::getApplication()->getMenu()->getActive();

		if (isset($active->query['layout']))
		{
			$this->setLayout($active->query['layout']);
		}

		// Escape strings for HTML output
		$this->pageclass_sfx =
htmlspecialchars($this->params->get('pageclass_sfx'));

		$this->prepareDocument();

		return parent::display($tpl);
	}

	/**
	 * Prepares the document
	 *
	 * @return  void
	 *
	 * @since   1.6
	 */
	protected function prepareDocument()
	{
		$app   = JFactory::getApplication();
		$menus = $app->getMenu();
		$user  = JFactory::getUser();
		$title = null;

		// Because the application sets a default page title,
		// we need to get it from the menu item itself
		$menu = $menus->getActive();

		if ($menu)
		{
			$this->params->def('page_heading',
$this->params->get('page_title', $user->name));
		}
		else
		{
			$this->params->def('page_heading',
JText::_('COM_USERS_PROFILE'));
		}

		$title = $this->params->get('page_title', '');

		if (empty($title))
		{
			$title = $app->get('sitename');
		}
		elseif ($app->get('sitename_pagetitles', 0) == 1)
		{
			$title = JText::sprintf('JPAGETITLE',
$app->get('sitename'), $title);
		}
		elseif ($app->get('sitename_pagetitles', 0) == 2)
		{
			$title = JText::sprintf('JPAGETITLE', $title,
$app->get('sitename'));
		}

		$this->document->setTitle($title);

		if ($this->params->get('menu-meta_description'))
		{
			$this->document->setDescription($this->params->get('menu-meta_description'));
		}

		if ($this->params->get('menu-meta_keywords'))
		{
			$this->document->setMetadata('keywords',
$this->params->get('menu-meta_keywords'));
		}

		if ($this->params->get('robots'))
		{
			$this->document->setMetadata('robots',
$this->params->get('robots'));
		}
	}
}
PK{V�[}*A��registration/tmpl/complete.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

?>
<div class="registration-complete<?php echo
$this->pageclass_sfx; ?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<h1>
			<?php echo
$this->escape($this->params->get('page_heading')); ?>
		</h1>
	<?php endif; ?>
</div>
PK{V�[��˙ppregistration/tmpl/default.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');

?>
<div class="registration<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1><?php echo
$this->escape($this->params->get('page_heading'));
?></h1>
		</div>
	<?php endif; ?>
	<form id="member-registration" action="<?php echo
JRoute::_('index.php?option=com_users&task=registration.register');
?>" method="post" class="form-validate
form-horizontal well" enctype="multipart/form-data">
		<?php // Iterate through the form fieldsets and display each one.
?>
		<?php foreach ($this->form->getFieldsets() as $fieldset) : ?>
			<?php $fields = $this->form->getFieldset($fieldset->name);
?>
			<?php if (count($fields)) : ?>
				<fieldset>
					<?php // If the fieldset has a label set, display it as the legend.
?>
					<?php if (isset($fieldset->label)) : ?>
						<legend><?php echo JText::_($fieldset->label);
?></legend>
					<?php endif; ?>
					<?php echo $this->form->renderFieldset($fieldset->name);
?>
				</fieldset>
			<?php endif; ?>
		<?php endforeach; ?>
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn btn-primary
validate">
					<?php echo JText::_('JREGISTER'); ?>
				</button>
				<a class="btn" href="<?php echo
JRoute::_(''); ?>" title="<?php echo
JText::_('JCANCEL'); ?>">
					<?php echo JText::_('JCANCEL'); ?>
				</a>
				<input type="hidden" name="option"
value="com_users" />
				<input type="hidden" name="task"
value="registration.register" />
			</div>
		</div>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[��B�EEregistration/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_REGISTRATION_VIEW_DEFAULT_TITLE"
option="COM_USER_REGISTRATION_VIEW_DEFAULT_OPTION">
		<help
			key="JHELP_MENUS_MENU_ITEM_USER_REGISTRATION"
		/>
		<message>
			<![CDATA[COM_USER_REGISTRATION_VIEW_DEFAULT_DESC]]>
		</message>
	</layout>
</metadata>
PK{V�[��r��
�
registration/view.html.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

/**
 * Registration view class for Users.
 *
 * @since  1.6
 */
class UsersViewRegistration extends JViewLegacy
{
	protected $data;

	protected $form;

	protected $params;

	protected $state;

	public $document;

	/**
	 * Method to display the view.
	 *
	 * @param   string  $tpl  The template file to include
	 *
	 * @return  mixed
	 *
	 * @since   1.6
	 */
	public function display($tpl = null)
	{
		// Get the view data.
		$this->form   = $this->get('Form');
		$this->data   = $this->get('Data');
		$this->state  = $this->get('State');
		$this->params = $this->state->get('params');

		// Check for errors.
		if (count($errors = $this->get('Errors')))
		{
			JError::raiseError(500, implode('<br />', $errors));

			return false;
		}

		// Check for layout override
		$active = JFactory::getApplication()->getMenu()->getActive();

		if (isset($active->query['layout']))
		{
			$this->setLayout($active->query['layout']);
		}

		// Escape strings for HTML output
		$this->pageclass_sfx =
htmlspecialchars($this->params->get('pageclass_sfx'),
ENT_COMPAT, 'UTF-8');

		$this->prepareDocument();

		return parent::display($tpl);
	}

	/**
	 * Prepares the document.
	 *
	 * @return  void
	 *
	 * @since   1.6
	 */
	protected function prepareDocument()
	{
		$app   = JFactory::getApplication();
		$menus = $app->getMenu();
		$title = null;

		// Because the application sets a default page title,
		// we need to get it from the menu item itself
		$menu = $menus->getActive();

		if ($menu)
		{
			$this->params->def('page_heading',
$this->params->get('page_title', $menu->title));
		}
		else
		{
			$this->params->def('page_heading',
JText::_('COM_USERS_REGISTRATION'));
		}

		$title = $this->params->get('page_title', '');

		if (empty($title))
		{
			$title = $app->get('sitename');
		}
		elseif ($app->get('sitename_pagetitles', 0) == 1)
		{
			$title = JText::sprintf('JPAGETITLE',
$app->get('sitename'), $title);
		}
		elseif ($app->get('sitename_pagetitles', 0) == 2)
		{
			$title = JText::sprintf('JPAGETITLE', $title,
$app->get('sitename'));
		}

		$this->document->setTitle($title);

		if ($this->params->get('menu-meta_description'))
		{
			$this->document->setDescription($this->params->get('menu-meta_description'));
		}

		if ($this->params->get('menu-meta_keywords'))
		{
			$this->document->setMetadata('keywords',
$this->params->get('menu-meta_keywords'));
		}

		if ($this->params->get('robots'))
		{
			$this->document->setMetadata('robots',
$this->params->get('robots'));
		}
	}
}
PK{V�[ށ>remind/tmpl/default.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');

?>
<div class="remind<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<form id="user-registration" action="<?php echo
JRoute::_('index.php?option=com_users&task=remind.remind');
?>" method="post" class="form-validate
form-horizontal well">
		<?php foreach ($this->form->getFieldsets() as $fieldset) : ?>
			<fieldset>
				<?php if (isset($fieldset->label)) : ?>
					<p><?php echo JText::_($fieldset->label); ?></p>
				<?php endif; ?>
				<?php echo $this->form->renderFieldset($fieldset->name);
?>
			</fieldset>
		<?php endforeach; ?>
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn btn-primary
validate">
					<?php echo JText::_('JSUBMIT'); ?>
				</button>
			</div>
		</div>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[�q>�11remind/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_REMIND_VIEW_DEFAULT_TITLE"
option="COM_USER_REMIND_VIEW_DEFAULT_OPTION">
		<help
			key = "JHELP_MENUS_MENU_ITEM_USER_REMINDER"
		/>
		<message>
			<![CDATA[COM_USER_REMIND_VIEW_DEFAULT_DESC]]>
		</message>
	</layout>
</metadata>
PK{V�[�n?"h
h
remind/view.html.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

/**
 * Registration view class for Users.
 *
 * @since  1.5
 */
class UsersViewRemind extends JViewLegacy
{
	protected $form;

	protected $params;

	protected $state;

	/**
	 * Method to display the view.
	 *
	 * @param   string  $tpl  The template file to include
	 *
	 * @return  mixed
	 *
	 * @since   1.5
	 */
	public function display($tpl = null)
	{
		// Get the view data.
		$this->form   = $this->get('Form');
		$this->state  = $this->get('State');
		$this->params = $this->state->params;

		// Check for errors.
		if (count($errors = $this->get('Errors')))
		{
			JError::raiseError(500, implode('<br />', $errors));

			return false;
		}

		// Check for layout override
		$active = JFactory::getApplication()->getMenu()->getActive();

		if (isset($active->query['layout']))
		{
			$this->setLayout($active->query['layout']);
		}

		// Escape strings for HTML output
		$this->pageclass_sfx =
htmlspecialchars($this->params->get('pageclass_sfx'),
ENT_COMPAT, 'UTF-8');

		$this->prepareDocument();

		parent::display($tpl);
	}

	/**
	 * Prepares the document.
	 *
	 * @return  void
	 *
	 * @since   1.6
	 */
	protected function prepareDocument()
	{
		$app   = JFactory::getApplication();
		$menus = $app->getMenu();
		$title = null;

		// Because the application sets a default page title,
		// we need to get it from the menu item itself
		$menu = $menus->getActive();

		if ($menu)
		{
			$this->params->def('page_heading',
$this->params->get('page_title', $menu->title));
		}
		else
		{
			$this->params->def('page_heading',
JText::_('COM_USERS_REMIND'));
		}

		$title = $this->params->get('page_title', '');

		if (empty($title))
		{
			$title = $app->get('sitename');
		}
		elseif ($app->get('sitename_pagetitles', 0) == 1)
		{
			$title = JText::sprintf('JPAGETITLE',
$app->get('sitename'), $title);
		}
		elseif ($app->get('sitename_pagetitles', 0) == 2)
		{
			$title = JText::sprintf('JPAGETITLE', $title,
$app->get('sitename'));
		}

		$this->document->setTitle($title);

		if ($this->params->get('menu-meta_description'))
		{
			$this->document->setDescription($this->params->get('menu-meta_description'));
		}

		if ($this->params->get('menu-meta_keywords'))
		{
			$this->document->setMetadata('keywords',
$this->params->get('menu-meta_keywords'));
		}

		if ($this->params->get('robots'))
		{
			$this->document->setMetadata('robots',
$this->params->get('robots'));
		}
	}
}
PK{V�[��;�reset/tmpl/complete.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');

?>
<div class="reset-complete<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<form action="<?php echo
JRoute::_('index.php?option=com_users&task=reset.complete');
?>" method="post" class="form-validate
form-horizontal well">
		<?php foreach ($this->form->getFieldsets() as $fieldset) : ?>
			<fieldset>
				<?php if (isset($fieldset->label)) : ?>
					<p><?php echo JText::_($fieldset->label); ?></p>
				<?php endif; ?>
				<?php echo $this->form->renderFieldset($fieldset->name);
?>
			</fieldset>
		<?php endforeach; ?>
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn btn-primary
validate">
					<?php echo JText::_('JSUBMIT'); ?>
				</button>
			</div>
		</div>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[�M��

reset/tmpl/confirm.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');

?>
<div class="reset-confirm<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<form action="<?php echo
JRoute::_('index.php?option=com_users&task=reset.confirm');
?>" method="post" class="form-validate
form-horizontal well">
		<?php foreach ($this->form->getFieldsets() as $fieldset) : ?>
			<fieldset>
				<?php if (isset($fieldset->label)) : ?>
					<p><?php echo JText::_($fieldset->label); ?></p>
				<?php endif; ?>
				<?php echo $this->form->renderFieldset($fieldset->name);
?>
			</fieldset>
		<?php endforeach; ?>
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn btn-primary
validate">
					<?php echo JText::_('JSUBMIT'); ?>
				</button>
			</div>
		</div>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[�areset/tmpl/default.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

JHtml::_('behavior.keepalive');
JHtml::_('behavior.formvalidator');

?>
<div class="reset<?php echo $this->pageclass_sfx;
?>">
	<?php if ($this->params->get('show_page_heading')) :
?>
		<div class="page-header">
			<h1>
				<?php echo
$this->escape($this->params->get('page_heading')); ?>
			</h1>
		</div>
	<?php endif; ?>
	<form id="user-registration" action="<?php echo
JRoute::_('index.php?option=com_users&task=reset.request');
?>" method="post" class="form-validate
form-horizontal well">
		<?php foreach ($this->form->getFieldsets() as $fieldset) : ?>
			<fieldset>
				<?php if (isset($fieldset->label)) : ?>
					<p><?php echo JText::_($fieldset->label); ?></p>
				<?php endif; ?>
				<?php echo $this->form->renderFieldset($fieldset->name);
?>
			</fieldset>
		<?php endforeach; ?>
		<div class="control-group">
			<div class="controls">
				<button type="submit" class="btn btn-primary
validate">
					<?php echo JText::_('JSUBMIT'); ?>
				</button>
			</div>
		</div>
		<?php echo JHtml::_('form.token'); ?>
	</form>
</div>
PK{V�[��W�22reset/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="COM_USER_RESET_VIEW_DEFAULT_TITLE"
option="COM_USER_RESET_VIEW_DEFAULT_OPTION">
		<help
			key="JHELP_MENUS_MENU_ITEM_USER_PASSWORD_RESET"
		/>
		<message>
			<![CDATA[COM_USER_RESET_VIEW_DEFAULT_DESC]]>
		</message>
	</layout>
</metadata>
PK{V�[�o�reset/view.html.phpnu�[���<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_users
 *
 * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
 * @license     GNU General Public License version 2 or later; see
LICENSE.txt
 */

defined('_JEXEC') or die;

/**
 * Reset view class for Users.
 *
 * @since  1.5
 */
class UsersViewReset extends JViewLegacy
{
	protected $form;

	protected $params;

	protected $state;

	/**
	 * Method to display the view.
	 *
	 * @param   string  $tpl  The template file to include
	 *
	 * @return  mixed
	 *
	 * @since   1.5
	 */
	public function display($tpl = null)
	{
		// This name will be used to get the model
		$name = $this->getLayout();

		// Check that the name is valid - has an associated model.
		if (!in_array($name, array('confirm', 'complete')))
		{
			$name = 'default';
		}

		if ('default' === $name)
		{
			$formname = 'Form';
		}
		else
		{
			$formname = ucfirst($this->_name) . ucfirst($name) .
'Form';
		}

		// Get the view data.
		$this->form   = $this->get($formname);
		$this->state  = $this->get('State');
		$this->params = $this->state->params;

		// Check for errors.
		if (count($errors = $this->get('Errors')))
		{
			JError::raiseError(500, implode('<br />', $errors));

			return false;
		}

		// Escape strings for HTML output
		$this->pageclass_sfx =
htmlspecialchars($this->params->get('pageclass_sfx'),
ENT_COMPAT, 'UTF-8');

		$this->prepareDocument();

		parent::display($tpl);
	}

	/**
	 * Prepares the document.
	 *
	 * @return  void
	 *
	 * @since   1.6
	 */
	protected function prepareDocument()
	{
		$app   = JFactory::getApplication();
		$menus = $app->getMenu();
		$title = null;

		// Because the application sets a default page title,
		// we need to get it from the menu item itself
		$menu = $menus->getActive();

		if ($menu)
		{
			$this->params->def('page_heading',
$this->params->get('page_title', $menu->title));
		}
		else
		{
			$this->params->def('page_heading',
JText::_('COM_USERS_RESET'));
		}

		$title = $this->params->get('page_title', '');

		if (empty($title))
		{
			$title = $app->get('sitename');
		}
		elseif ($app->get('sitename_pagetitles', 0) == 1)
		{
			$title = JText::sprintf('JPAGETITLE',
$app->get('sitename'), $title);
		}
		elseif ($app->get('sitename_pagetitles', 0) == 2)
		{
			$title = JText::sprintf('JPAGETITLE', $title,
$app->get('sitename'));
		}

		$this->document->setTitle($title);

		if ($this->params->get('menu-meta_description'))
		{
			$this->document->setDescription($this->params->get('menu-meta_description'));
		}

		if ($this->params->get('menu-meta_keywords'))
		{
			$this->document->setMetadata('keywords',
$this->params->get('menu-meta_keywords'));
		}

		if ($this->params->get('robots'))
		{
			$this->document->setMetadata('robots',
$this->params->get('robots'));
		}
	}
}
PK�]�[@V��tree/metadata.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<view title="Dump Tree">
		<message>
			<![CDATA[This layout shows a DHTML tree with the dumped items.
It's best to use this with 'New Window With(out) Browser
Navigation'.]]>
		</message>
	</view>
</metadata>PK�]�[B���tree/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
	<layout title="Dump Tree">
		<message>
			<![CDATA[This layout shows a DHTML tree with the dumped items.
It's best to use this with 'New Window With(out) Browser
Navigation'.]]>
		</message>
	</layout>
	<state>
		<name>Dump Tree</name>
		<description>This layout shows a DHTML tree with the dumped items.
It's best to use this with 'New Window With(out) Browser
Navigation'.</description>
		<params></params>
		<advanced></advanced>
	</state>
</metadata>PK�E�[R��ǀ�form/view.html.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */
//no direct access
defined('_JEXEC') or die('Restricted access');

use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\View\HtmlView;
use Joomla\CMS\Uri\Uri;

class SppagebuilderViewForm extends HtmlView
{
	protected $form;
	protected $item;

	function display($tpl = null)
	{
		$user = Factory::getUser();
		$app  = Factory::getApplication();

		$this->item = $this->get('Item');
		$this->form = $this->get('Form');

		$this->item = ApplicationHelper::preparePageData($this->item);

		if (!$user->id)
		{
			$uri = Uri::getInstance();
			$pageURL = $uri->toString();
			$return_url = base64_encode($pageURL);
			$joomlaLoginUrl =
'index.php?option=com_users&view=login&return=' .
$return_url;
			$app->enqueueMessage(Text::_('JERROR_ALERTNOAUTHOR'),
'notice');
			$app->redirect(Uri::base() . $joomlaLoginUrl, 403);
		}

		$input = $app->input;
		$pageid = $input->get('id', '', 'INT');
		$item_info  = SppagebuilderModelPage::getPageInfoById($pageid);
		$authorised = $user->authorise('core.edit',
'com_sppagebuilder.page.' . $pageid) ||
($user->authorise('core.edit.own',  
'com_sppagebuilder.page.' . $pageid) &&
$item_info->created_by == $user->id);

		// checkout
		if (!($this->item->checked_out == 0 ||
$this->item->checked_out == $user->id))
		{
			$app->enqueueMessage(Text::_('COM_SPPAGEBUILDER_ERROR_CHECKED_IN'),
'warning');
			$app->redirect($this->item->link, 403);
			return false;
		}

		if ($authorised !== true)
		{
			$app->enqueueMessage(Text::_('COM_SPPAGEBUILDER_ERROR_EDIT_PERMISSION'),
'warning');
			$app->redirect($this->item->link, 403);
			return false;
		}

		// Check for errors.
		if (count($errors = (array) $this->get('Errors')))
		{
			throw new Exception(implode("\n", $errors), 500);
		}


		$this->_prepareDocument($this->item->title);
		SppagebuilderHelperSite::loadLanguage();
		parent::display($tpl);
	}

	/**
	 * Prepare Page Title and Site Name
	 *
	 * @param string $title
	 * @return void
	 */
	protected function _prepareDocument($title = '')
	{
		$config 	= Factory::getConfig();
		$app 		= Factory::getApplication();
		$doc 		= Factory::getDocument();
		$menus   	= $app->getMenu();
		$menu 		= $menus->getActive();

		if (isset($menu))
		{
			if ($menu->getParams()->get('page_title', ''))
			{
				$title = $menu->getParams()->get('page_title');
			}
			else
			{
				$title = $menu->title;
			}
		}

		//Include Site title
		$sitetitle = $title;
		if ($config->get('sitename_pagetitles') == 2)
		{
			$sitetitle = Text::sprintf('JPAGETITLE', $sitetitle,
$app->get('sitename'));
		}
		elseif ($config->get('sitename_pagetitles') == 1)
		{
			$sitetitle = Text::sprintf('JPAGETITLE',
$app->get('sitename'), $sitetitle);
		}

		$doc->setTitle($sitetitle);
	}
}
PK�E�[����form/tmpl/edit-iframe.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */
//no direct access
defined('_JEXEC') or die('Restricted access');

use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\Uri\Uri;

$doc = Factory::getDocument();
$app = Factory::getApplication();
$params = ComponentHelper::getParams('com_sppagebuilder');

$doc->addScriptdeclaration('var disableGoogleFonts = ' .
$params->get('disable_google_fonts', 0) . ';');

if ($params->get('fontawesome', 1))
{
	SppagebuilderHelperSite::addStylesheet('font-awesome-5.min.css');
	SppagebuilderHelperSite::addStylesheet('font-awesome-v4-shims.css');
}

// assets
SppagebuilderHelperSite::loadAssets();

if (!$params->get('disableanimatecss', 0))
{
	SppagebuilderHelperSite::addStylesheet('animate.min.css');
}

if (!$params->get('disablecss', 0))
{
	SppagebuilderHelperSite::addStylesheet('sppagebuilder.css');
	SppagebuilderHelperSite::addContainerMaxWidth();
}

SppagebuilderHelperSite::addStylesheet('canvas.css');

HTMLHelper::_('jquery.framework');
$doc->addScriptdeclaration('var pagebuilder_base="' .
Uri::root() . '";');
SppagebuilderHelperSite::addScript('jquery.parallax.js');
SppagebuilderHelperSite::addScript('sppagebuilder.js');

$menus = $app->getMenu();
$menu = $menus->getActive();
$menuClassPrefix = '';
$showPageHeading = 0;

// check active menu item
if ($menu)
{
	$menuClassPrefix 	=
$menu->getParams()->get('pageclass_sfx');
	$showPageHeading 	=
$menu->getParams()->get('show_page_heading');
	$menuheading 		= $menu->getParams()->get('page_heading');
}

require_once JPATH_COMPONENT . '/builder/classes/base.php';
require_once JPATH_COMPONENT . '/builder/classes/config.php';
require_once JPATH_COMPONENT . '/builder/classes/addon.php';


$this->item = ApplicationHelper::preparePageData($this->item);

SpPgaeBuilderBase::loadAddons();
$addons_list = SpAddonsConfig::$addons;

$addons_list = array_map(function ($addon)
{
	return AddonsHelper::modernizeAddonStructure($addon);
}, $addons_list);

SpPgaeBuilderBase::loadAssets($addons_list);
$addon_cats = SpPgaeBuilderBase::getAddonCategories($addons_list);
$doc->addScriptdeclaration('var addonsJSON=' .
json_encode($addons_list) . ';');
$doc->addScriptdeclaration('var addonsFromDB=' .
json_encode(SpAddonsConfig::loadAddonList()) . ';');
$doc->addScriptdeclaration('var addonCats=' .
json_encode($addon_cats) . ';');
$doc->addScriptdeclaration('var sppbVersion="' .
SppagebuilderHelperSite::getVersion() . '";');

if (!$this->item->text)
{
	$doc->addScriptdeclaration('var initialState=[];');
}
else
{
	$doc->addScriptdeclaration('var initialState=' .
json_encode($this->item->text) . ';');
}
?>

<div id="sp-page-builder" class="sp-pagebuilder <?php
echo $menuClassPrefix; ?> page-<?php echo $this->item->id;
?>">
	<div id="sp-pagebuilder-container">
		<div class="sp-pagebuilder-loading-wrapper">
			<div class="sp-pagebuilder-loading">
				<svg width="28" height="32"
fill="none" xmlns="http://www.w3.org/2000/svg">
					<path d="M23.028 17.741c.855-.89 2.358-.856 3.219 0 .88.88.85
2.33 0 3.219-.89.929-1.79 1.848-2.743 2.719-5.846 5.35-13.194 8.56-21.204
8.292-1.235-.039-2.276-1.007-2.276-2.276 0-1.202 1.045-2.315 2.276-2.276
2.524.082 4.426-.083 6.765-.677a25.837 25.837 0 0 0
2.694-.846c.222-.083.443-.17.662-.262l.292-.132c.379-.174.758-.355
1.133-.544a29.604 29.604 0 0 0
4.192-2.612c.097-.072.19-.146.287-.213-.015.01-.31.242-.112.087.136-.107.273-.214.408-.325.264-.21.52-.429.774-.648.491-.424.967-.855
1.44-1.303a59.718 59.718 0 0 0 2.193-2.203Zm-12.85-1.124c.732-.39
1.431-.837 2.092-1.336a.424.424 0 0 0-.01-.681l-5.228-3.77a.424.424 0 0
0-.67.345l.018 6.288a.423.423 0 0 0 .531.409 14.164 14.164 0 0 0
3.268-1.255Z" fill="#2684FF" />
					<path d="M19.959 12.932 5.476 1.853C4.8 1.337 4.324.973
3.647.458L.35 1.124c-.686 1.172-.175 2.362.808 3.111 4.824 3.69 9.653 7.388
14.482 11.078.676.516 1.352 1.032 2.024 1.547.977.749 2.548.15
3.111-.817.687-1.172.166-2.364-.816-3.112Z" fill="url(#a)"
/>
					<path d="M9.226 23.655c1.42-.326 2.82-.934 4.12-1.571
2.703-1.318 5.208-3.214 7.075-5.579.389-.49.666-.952.666-1.609
0-.56-.248-1.225-.666-1.61-.822-.753-2.432-.997-3.219 0a16.981 16.981 0 0
1-2.407 2.495c-.15.127-.307.254-.458.38-.374.306.355-.258 0 0a22.162 22.162
0 0 1-3.282
1.993c-.249.123-.496.234-.744.346-.16.072-.536.184.17-.068-.122.043-.239.097-.355.146-.36.141-.725.277-1.095.398-.33.107-.665.215-1.007.292-1.161.263-1.954
1.668-1.59 2.802.39 1.21 1.547 1.867 2.792 1.585ZM3.716.505A2.243 2.243 0 0
0 2.306 0C1.07 0 .03 1.04.03 2.276v27.35c0 1.231 1.044 2.277 2.275 2.277
1.236 0 2.276-1.04 2.276-2.277V1.167L3.715.505h.001Z"
fill="#2684FF" />
					<defs>
						<linearGradient id="a" x1="4.57476"
y1="5.7046" x2="15.8692" y2="14.5689"
gradientUnits="userSpaceOnUse">
							<stop stop-color="#0052CC" />
							<stop offset="1" stop-color="#2684FF" />
						</linearGradient>
					</defs>
				</svg>
			</div>
		</div>
	</div>
</div>

<style id="sp-pagebuilder-css" type="text/css">
	<?php echo $this->item->css; ?>
</style>

<?php
$doc->addScriptDeclaration('jQuery(document).ready(function($) {
	$(document).on("click", "a", function(e){
		e.preventDefault();
	});

	$(document).on("click", ".sp-editable-content,
.sp-inline-editable-element", function(e){
		e.preventDefault();
		var ids = jQuery(this).attr("id");
		jQuery(this).attr("contenteditable", true);
		jQuery(this).focus();
	});
});');
PK�E�[#W1�d�dform/tmpl/edit.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */

defined('_JEXEC') or die('Restricted access');

use Joomla\CMS\Factory;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Multilanguage;
use Joomla\CMS\Component\ComponentHelper;

require_once JPATH_COMPONENT . '/builder/classes/base.php';
require_once JPATH_COMPONENT . '/builder/classes/config.php';
require_once JPATH_COMPONENT . '/builder/classes/addon.php';

$doc = Factory::getDocument();
$app = Factory::getApplication();
$params = ComponentHelper::getParams('com_sppagebuilder');

if (!$params->get('enable_frontend_editing', 1))
{
	die("The frontend editing is disabled.");
}

$doc->addScriptdeclaration('var disableGoogleFonts = ' .
$params->get('disable_google_fonts', 0) . ';');

if ($params->get('fontawesome', 1))
{
	SppagebuilderHelperSite::addStylesheet('font-awesome-5.min.css');
	SppagebuilderHelperSite::addStylesheet('font-awesome-v4-shims.css');
}



// load font assets form database
SppagebuilderHelperSite::loadAssets();

if (!$params->get('disableanimatecss', 0))
{
	SppagebuilderHelperSite::addStylesheet('animate.min.css');
}

if (!$params->get('disablecss', 0))
{
	SppagebuilderHelperSite::addStylesheet('sppagebuilder.css');
	SppagebuilderHelperSite::addContainerMaxWidth();
}

SppagebuilderHelperSite::addStylesheet('editor.css');

HTMLHelper::_('jquery.framework');
$doc->addScriptdeclaration('var pagebuilder_base="' .
Uri::root() . '";');
SppagebuilderHelper::loadEditor();
SppagebuilderHelperSite::addScript('csslint.js'); // not
necessary
SppagebuilderHelperSite::addScript('actions.js');

if ($this->item->extension === 'com_content' &&
$this->item->extension_view === 'article')
{
	$extension_view = 'article';
}
else
{
	$extension_view = 'page';
}

$menus = $app->getMenu();
$menu = $menus->getActive();
$menuClassPrefix = '';
$showPageHeading = 0;

// check active menu item
if ($menu)
{
	$menuClassPrefix 	=
$menu->getParams()->get('pageclass_sfx');
	$showPageHeading 	=
$menu->getParams()->get('show_page_heading');
	$menuheading 		= $menu->getParams()->get('page_heading');
}

SpPgaeBuilderBase::loadAddons();

$fa_icon_list     = SpPgaeBuilderBase::getIconList(); // Icon List
$accessLevels     = SpPgaeBuilderBase::getAccessLevelList(); // Access
Levels
$article_cats     = SpPgaeBuilderBase::getArticleCategories(); // Article
Categories
$moduleAttr       = SpPgaeBuilderBase::getModuleAttributes(); // Module
Positions and Module List
$rowSettings      = SpPgaeBuilderBase::getRowGlobalSettings(); // Row
Settings Attributes
$columnSettings   = SpPgaeBuilderBase::getColumnGlobalSettings(); // Column
Settings Attributes
$global_attributes = SpPgaeBuilderBase::addonOptions();
$user = Factory::getUser();

$userPermissions = SpPgaeBuilderBase::getUserPermissions();

$addons_list = SpAddonsConfig::$addons;

$globalDefaults = [];
$globalSettingsGroups = ['style', 'advanced',
'interaction'];

foreach ($globalSettingsGroups as $groupName)
{
	$globalDefaults = array_merge($globalDefaults,
EditorUtils::extractSettingsDefaultValues($global_attributes[$groupName]));
}

$addons_list = array_map(function ($addon) use ($globalDefaults)
{
	$modernAddon =  AddonsHelper::modernizeAddonStructure($addon);
	$addonDefaults =
EditorUtils::extractSettingsDefaultValues($modernAddon['settings']);
	$modernAddon['default'] = array_merge($globalDefaults,
$addonDefaults);

	return $modernAddon;
}, $addons_list);

foreach ($addons_list as &$addon)
{
	if (!isset($addon['category']) ||
empty($addon['category']))
	{
		$addon['category'] = 'General';
	}

	$addon_name = preg_replace('/^sp_/i', '',
$addon['addon_name']);
	$class_name = 'SppagebuilderAddon' . ucfirst($addon_name);

	if (method_exists($class_name, 'getTemplate'))
	{
		$addon['js_template'] = true;
	}

	Factory::getApplication()->triggerEvent('onBeforeAddonConfigure',
array($addon_name, &$addon));
}

unset($addon);

Factory::getApplication()->triggerEvent('onBeforeRowConfigure',
array(&$rowSettings));

$rowDefaultValue = EditorUtils::getSectionSettingsDefaultValues();
$rowSettings['default'] = $rowDefaultValue;

$columnDefaultValue = EditorUtils::getColumnSettingsDefaultValues();
$columnSettings['default'] = $columnDefaultValue;

SpPgaeBuilderBase::loadAssets($addons_list);

$addon_cats = SpPgaeBuilderBase::getAddonCategories($addons_list);
$doc->addScriptdeclaration('var addonsJSON=' .
json_encode($addons_list) . ';');
$doc->addScriptdeclaration('var addonsFromDB=' .
json_encode(SpAddonsConfig::loadAddonList()) . ';');
$doc->addScriptdeclaration('var addonCats=' .
json_encode($addon_cats) . ';');

// Global Attributes
$doc->addScriptdeclaration('var globalAttr=' .
json_encode($global_attributes) . ';');
$doc->addScriptdeclaration('var faIconList=' .
json_encode($fa_icon_list) . ';');
$doc->addScriptdeclaration('var accessLevels=' .
json_encode($accessLevels) . ';');
$doc->addScriptdeclaration('var articleCats=' .
json_encode($article_cats) . ';');
$doc->addScriptdeclaration('var moduleAttr=' .
json_encode($moduleAttr) . ';');
$doc->addScriptdeclaration('var rowSettings=' .
json_encode($rowSettings) . ';');
$doc->addScriptdeclaration('var colSettings=' .
json_encode($columnSettings) . ';');
$doc->addScriptdeclaration('var sppbVersion="' .
SppagebuilderHelperSite::getVersion() . '";');
$doc->addScriptDeclaration('var
userPermissions=Object.freeze(' . json_encode($userPermissions) .
');');

// Media
$mediaParams = ComponentHelper::getParams('com_media');
$doc->addScriptdeclaration('var sppbMediaPath=\'/' .
$mediaParams->get('file_path', 'images') .
'\';');

$doc->addScriptdeclaration('var sppbSvgShape=' .
json_encode(SppagebuilderHelperSite::getSvgShapes()) . ';');
$doc->addScriptdeclaration('var extensionView=\'' .
$extension_view . '\';');

if (!$this->item->text)
{
	$doc->addScriptdeclaration('var initialState=[];');
}
else
{
	$doc->addScriptdeclaration('var initialState=' .
json_encode($this->item->text) . ';');
}

$languageCode = '';

if (Multilanguage::isEnabled())
{
	$languageCode = '&lang=' . $this->item->language;
}

?>

<div id="sp-page-builder" class="sp-pagebuilder <?php
echo $menuClassPrefix; ?> page-<?php echo $this->item->id;
?>" data-pageid="<?php echo $this->item->id;
?>">
	<form action="<?php echo
Route::_('index.php?option=com_sppagebuilder&id=' . (int)
$this->item->id); ?>" method="post"
name="adminForm" id="adminForm"
class="form-validate page-builder-form" style="display:
none;">
		<div id="page-options">
			<?php $fieldsets = $this->form->getFieldsets(); ?>

			<div class="sp-pagebuilder-form-group-toggler active">
				<span>Basic <span class="fa
fa-chevron-right"></span></span>
				<div>
					<?php foreach ($this->form->getFieldset('basic') as
$key => $field) : ?>
						<div class="sp-pagebuilder-form-group">
							<?php echo $field->label; ?>
							<?php echo $field->input; ?>
							<?php if ($field->getAttribute('desc')) : ?>
								<span class="sp-pagebuilder-form-help"><?php
echo Text::_($field->getAttribute('desc')); ?></span>
							<?php endif; ?>
						</div>
					<?php endforeach; ?>
				</div>
			</div>
		</div>

		<input type="hidden" id="form_task"
name="task" value="page.apply" />
		<?php
		$app = Factory::getApplication();
		$input = $app->input;
		$Itemid = $input->get('Itemid', 0, 'INT');

		$extension = $input->get('extension', '',
'STRING');

		$url =
Route::_('index.php?option=com_sppagebuilder&view=page&id='
. $this->item->id . '&Itemid=' . $Itemid);
		$root = Uri::base();
		$root = new Uri($root);
		$pageUrl = $root->getScheme() . '://' . $root->getHost()
. $url;

		$iframeUrl = Uri::root() .
'index.php?option=com_sppagebuilder&view=form&id=' .
$this->item->id . '&layout=edit-iframe&Itemid=' .
$Itemid . $languageCode;

		if ($extension === 'mod_sppagebuilder')
		{
			$iframeUrl .= '&tmpl=component';
		}
		?>
		<input type="hidden" id="return_page"
name="return_page" value="<?php echo
base64_encode($pageUrl); ?>" />
		<?php echo HTMLHelper::_('form.token'); ?>
	</form>

	<iframe name="sp-pagebuilder-view"
id="sp-pagebuilder-view" class="builder-iframe-laptop"
data-url="<?php echo $iframeUrl; ?>"></iframe>

	<div id="sp-page-builder-main"></div>

	<!-- Never delete this element -->
	<div id="builder-dnd-provider-dom"></div>
</div>
<script>
	window.builderDefaultDevice = 'xl';
</script>

<?php
$mediaQueries = [
	'xl' => '@media ( max-width: 1399.98px )',
	'lg' => '@media ( max-width: 1199.98px )',
	'md' => '@media ( max-width: 991.98px )',
	'sm' => '@media ( max-width: 767.98px )',
	'xs' => '@media ( max-width: 575.98px )',
];
$queryString = '';

foreach ($mediaQueries as $size => $media)
{
	$queryString .= $media . ' {';
	$queryString .= '
	
	#{{ addonId }}{
		<# if(_.isObject(data.global_border_width)){ #>
			<# if (!_.isEmpty(data.global_border_width.' . $size . '))
{ #>
			border-width: {{data.global_border_width.' . $size . '}}px;
			<# } #>
		<# } #>
		
		<# if(_.isObject(borderRadius)){ #>
			<# if (!_.isEmpty(borderRadius.' . $size . ')) { #>
			border-radius: {{ borderRadius.' . $size . ' }}px;
			<# } #>
		<# }
		if(_.isObject(padding)){
		#>
			{{{ padding.' . $size . ' }}}
		<# } #>

	}
	#sp-page-builder div#addon-wrap-{{ data.id }} {
		<# if(data.global_custom_position &&
data.global_seclect_position){ #>
			<# if(_.isObject(data.global_addon_position_top)) { #>
				top:{{data.global_addon_position_top.' . $size .
'}}{{unitTop}};
			<# }

			if(_.isObject(data.global_addon_position_left)) {
			#>
				left:{{data.global_addon_position_left.' . $size .
'}}{{unitLeft}};
			<# }
		}
		if(_.isObject(margin)){
		#>
			{{{ margin.' . $size . ' }}}
		<# }
		if(typeof data.use_global_width !== "undefined" &&
data.use_global_width && typeof data.global_width !==
"undefined" && _.isObject(data.global_width)) {
		#>
			width: {{data.global_width.' . $size . '}}%;
		<# } #>
	}
	
	<# if (!_.isEmpty(data.title)){ #>
		#sppb-addon-{{ data.id }} .sppb-addon-title{
			<# if(_.isObject(data.title_fontsize)){ #>
				font-size: {{ data.title_fontsize.' . $size . ' }}px;
				line-height: {{ data.title_fontsize.' . $size . ' }}px;
			<# } #>
			<# if(_.isObject(data.title_lineheight)){ #>
				line-height: {{ data.title_lineheight.' . $size . ' }}px;
			<# } else { #>
				line-height: {{ data.title_lineheight }}px;
			<# } #>
			<# if(_.isObject(data.title_margin_top)){ #>
				margin-top: {{ data.title_margin_top.' . $size . ' }}px;
			<# } #>
			<# if(_.isObject(data.title_margin_bottom)){ #>
				margin-bottom: {{ data.title_margin_bottom.' . $size . '
}}px;
			<# } #>
		}
	<# } #>
	';

	$queryString .= '}';
}

?>

<?php
foreach ($addons_list as $addon)
{
	$addon_name = $addon['addon_name'];
	$addon_name = preg_replace('/^sp_/i', '',
$addon['addon_name']);
	$class_name = 'SppagebuilderAddon' . ucfirst($addon_name);

	if (method_exists($class_name, 'getTemplate'))
	{
?>
		<script id="sppb-tmpl-addon-<?php echo $addon_name;
?>" type="x-tmpl-lodash">
			<#
			var addonClass = 'clearfix';
			var addonAttr = '';
			var addonId = 'sppb-addon-'+data.id;
			var addonName = '<?php echo $addon_name; ?>';

			var textColor = data.global_text_color || '';
			var linkColor = data.global_link_color || '';
			var linkHoverColor = data.global_link_hover_color || '';
			var backgroundRepeat = data.global_background_repeat || '';
			var backgroundSize = data.global_background_size || '';
			var backgroundAttachment = data.global_background_attachment ||
'';
			var backgroundPosition = data.global_background_position ||
'';
			var modern_font_style = false;
			var title_font_style = data.title_fontstyle || "";

			var backgroundColor = '';
			if(data.global_background_color){
				backgroundColor = data.global_background_color;
			}

			var backgroundImage = '';
			var globalBgImg = {}
			if (typeof data.global_background_image !== "undefined"
&& typeof data.global_background_image.src !==
"undefined") {
				globalBgImg = data.global_background_image
			} else {
				globalBgImg = {src: data.global_background_image}
			}

			if(globalBgImg.src &&
(globalBgImg.src.indexOf('http://') != -1 ||
globalBgImg.src.indexOf('https://') != -1)){
				backgroundImage = 'url('+globalBgImg.src+')';
			} else if(globalBgImg.src){
				backgroundImage =
'url('+pagebuilder_base+globalBgImg.src+')';
			}

			var borderWidth = '';

			if (data.global_user_border) {
				if (_.isObject(data.global_border_width)) {
					borderWidth =
data.global_border_width[window.builderDefaultDevice]+'px';
				} else {
					borderWidth = data.global_border_width+'px';
				}
			} 
			
			var borderColor = '';
			if(data.global_user_border && data.global_border_color){
				borderColor = data.global_border_color;
			}

			var borderStyle = '';
			if(data.global_user_border && data.global_boder_style){
				borderStyle = data.global_boder_style;
			}

			var borderRadius = data.global_border_radius || '';

			var margin = window.getMarginPadding(data.global_margin,
'margin');
			var padding = window.getMarginPadding(data.global_padding,
'padding');

			if(data.global_use_animation && data.global_animation){
				addonClass += ' sppb-wow '+data.global_animation;

				if(data.global_animationduration){
					addonAttr = `
data-sppb-wow-duration="${data.global_animationduration}ms"`;
				}

				if(data.global_animationdelay){
					addonAttr += `
data-sppb-wow-delay="${data.global_animationdelay}ms"`;
				}
			}

			if(_.isObject(data.global_boxshadow) &&
!data.global_boxshadow.enabled) {
				boxShadow = '';
			} else if(_.isObject(data.global_boxshadow)){
				var ho = data.global_boxshadow.ho + 'px' || '0px',
					vo = data.global_boxshadow.vo + 'px' || '0px',
					blur = data.global_boxshadow.blur + 'px' || '0px',
					spread = data.global_boxshadow.spread + 'px' ||
'0px',
					color = data.global_boxshadow.color || '';

				boxShadow = ho + ' ' + vo + ' ' + blur + '
' + spread  + ' ' + color;
			} else {
				boxShadow = data.global_boxshadow || '';
			}
			
		#>
		<div id="{{ (data.table_advanced_item || data.sp_tab_item ||
data.sp_accordion_item || addonName === 'div') ? '' :
addonId }}" class="{{ addonClass }}" {{{ addonAttr }}} >
			<# if(data.global_use_overlay){ #>
				<div class="sppb-addon-overlayer"></div>
			<# } #>
			<style type="text/css">
				<#
				var unitTop = typeof data.global_addon_position_top !==
"undefined" && typeof data.global_addon_position_top.unit
!== "undefined" ? data.global_addon_position_top.unit :
"px";
				var unitLeft = typeof data.global_addon_position_left !==
"undefined" && typeof
data.global_addon_position_left.unit !== "undefined" ?
data.global_addon_position_left.unit : "px";

				if(data.global_seclect_position == "absolute" ||
data.global_seclect_position == "fixed"){
				#>
					#sp-page-builder div#sppb-addon-{{ data.id }} { 
						margin: 0;
					}
				<# } #>
				#sp-page-builder div#addon-wrap-{{ data.id }} { 
					<# if (addonName === 'empty_space') { #>
						position: static;
					<#}#>
					<# if(data.global_custom_position &&
data.global_seclect_position){ #>
						<# if(data.global_seclect_position == "absolute"){ #>
							position:absolute;
						<# } else if(data.global_seclect_position == "fixed"){
#>
							position:fixed;
						<# }
						if(_.isObject(data.global_addon_position_top)) {
						#>
							top:{{data.global_addon_position_top[window.builderDefaultDevice]}}{{unitTop}};
						<# } else { #>
							top:{{data.global_addon_position_top}}{{unitTop}};
						<# }
						if(_.isObject(data.global_addon_position_left)) {
						#>
							left:{{data.global_addon_position_left[window.builderDefaultDevice]}}{{unitLeft}};
						<# } else { #>
							left:{{data.global_addon_position_left}}{{unitLeft}};
						<# }
						if(data.global_addon_z_index) {
						#>
							z-index:{{data.global_addon_z_index}};
						<# }
					} #>
					<# if(_.isObject(margin)){ #>
						{{{ margin[window.builderDefaultDevice] }}}
					<# } else { #>
						{{{ margin }}}
					<# } #>
					<# 
					if(typeof data.use_global_width !== "undefined" &&
data.use_global_width && typeof data.global_width !==
"undefined" && _.isObject(data.global_width)) {
					#>
						width: {{data.global_width[window.builderDefaultDevice]}}%;
					<# } #>
				}

				<# if (addonName === "button" || addonName ===
"button_group")  { #>
					#{{ addonId }} .sppb-btn {
						<# if (!_.isEmpty(boxShadow)) { #>
							box-shadow: {{ boxShadow }};
						<# } #>
					}
				<# } else {#>
					#{{ addonId }} {
						<# if (!_.isEmpty(boxShadow)) { #>
							box-shadow: {{ boxShadow }};
						<# } #>
					}
				<# } #>

				#{{ addonId }}{
					<# if(!_.isEmpty(textColor)) { #>
					color: {{ textColor }};
					<# } #>
					<# if(typeof data.global_background_type === "undefined"
&& backgroundColor){ #>
						background-color: {{ backgroundColor }};
					<# } else { #>
						<# if(data.global_background_type == "color" ||
data.global_background_type == "image" &&
backgroundColor){ #>
							background-color: {{ backgroundColor }};
						<# } #>
					<# } #>
					<# if(data.global_background_type == "gradient"
&& _.isObject(data.global_background_gradient)){ #>
						<# if(typeof data.global_background_gradient.type !==
'undefined' && data.global_background_gradient.type ==
'radial'){ #>
							background-image: radial-gradient(at {{
data.global_background_gradient.radialPos || 'center center'}},
{{ data.global_background_gradient.color }} {{
data.global_background_gradient.pos || 0 }}%, {{
data.global_background_gradient.color2 }} {{
data.global_background_gradient.pos2 || 100 }}%);
						<# } else { #>
							background-image: linear-gradient({{
data.global_background_gradient.deg || 0}}deg, {{
data.global_background_gradient.color }} {{
data.global_background_gradient.pos || 0 }}%, {{
data.global_background_gradient.color2 }} {{
data.global_background_gradient.pos2 || 100 }}%);
						<# } #>
					<# } #>
					<# if(typeof data.global_background_type === "undefined"
){ #>
						<# if(data.global_use_background){ #>
							background-image: {{ backgroundImage }};
							background-repeat: {{ backgroundRepeat }};
							background-size: {{ backgroundSize }};
							background-attachment: {{ backgroundAttachment }};
							background-position: {{ backgroundPosition }};
						<# } #>
					<# } else { #>
						<# if(data.global_background_type == "image" &&
backgroundImage){ #>
							background-image: {{ backgroundImage }};
							background-repeat: {{ backgroundRepeat }};
							background-size: {{ backgroundSize }};
							background-attachment: {{ backgroundAttachment }};
							background-position: {{ backgroundPosition }};
						<# } #>
					<# } #>
					<# if(_.isObject(borderRadius)){ #>
						<# if (!_.isEmpty(borderRadius[window.builderDefaultDevice]))
{#>
							border-radius: {{ borderRadius[window.builderDefaultDevice] }}px;
						<# } #>
					<# } else { #>
						<# if (!_.isEmpty(borderRadius)){ #>
							border-radius: {{ borderRadius }}px;
						<# } #>
					<# } #>
					<# if(_.isObject(padding)) { #>
						{{{ padding[window.builderDefaultDevice] }}}
					<# } else { #>
						{{{ padding }}}
					<# } #>
					<# if (!_.isEmpty(borderWidth)) { #>
						border-width: {{ borderWidth }};
					<# } #>
					<# if (!_.isEmpty(borderColor)) { #>
						border-color: {{ borderColor }};
					<# } #>
					<# if (!_.isEmpty(borderStyle)) { #>
						border-style: {{ borderStyle }};
					<# } #>
					
					<# if(data.global_use_overlay){ #>
						position: relative;
						overflow: hidden;
					<# } #>
				}
				<# if(data.global_use_overlay){ #>
					#{{ addonId }} .sppb-addon-overlayer{

						<# if(typeof data.global_overlay_type == "undefined"){
							data.global_overlay_type = "overlay_color";
						} #>
						<# if(data.global_overlay_type == "overlay_color") {
#>
							background-color: {{ data.global_background_overlay }};
						<# }

						if(data.global_background_type == "image" &&
backgroundImage){
							if(data.global_overlay_type == "overlay_gradient"
&& _.isObject(data.global_gradient_overlay)){
								if(typeof data.global_gradient_overlay.type !==
'undefined' && data.global_gradient_overlay.type ==
'radial'){
						#>
									background: radial-gradient(at {{
data.global_gradient_overlay.radialPos || 'center center'}}, {{
data.global_gradient_overlay.color }} {{ data.global_gradient_overlay.pos
|| 0 }}%, {{ data.global_gradient_overlay.color2 }} {{
data.global_gradient_overlay.pos2 || 100 }}%);
								<# } else { #>
									background: linear-gradient({{ data.global_gradient_overlay.deg ||
0}}deg, {{ data.global_gradient_overlay.color }} {{
data.global_gradient_overlay.pos || 0 }}%, {{
data.global_gradient_overlay.color2 }} {{ data.global_gradient_overlay.pos2
|| 100 }}%);
								<# }
							}
							let patternImgBg = {}
							if (typeof data.global_pattern_overlay !== "undefined"
&& typeof data.global_pattern_overlay.src !==
"undefined") {
								patternImgBg = data.global_pattern_overlay
							} else {
								patternImgBg = {src: data.global_pattern_overlay}
							}
							if(patternImgBg.src && data.global_overlay_type ==
"overlay_pattern"){
								let patternImg = '';
								if(patternImgBg.src &&
(patternImgBg.src.indexOf('http://') != -1 ||
patternImgBg.src.indexOf('https://') != -1)){
									patternImg = 'url('+patternImgBg.src+')';
								} else if(patternImgBg.src){
									patternImg =
'url('+pagebuilder_base+patternImgBg.src+')';
								}
							#>
								background-image:{{patternImg}};
								background-attachment: scroll;
								<# if(!_.isEmpty(data.global_overlay_pattern_color)){ #>
									background-color:{{data.global_overlay_pattern_color}};
								<# }
							}
						} #>
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%;
						z-index: 0;
						<# if(data.global_background_type == "image" &&
backgroundImage){ #>
							<# if (data.blend_mode) { #>
								mix-blend-mode:{{data.blend_mode}};
							<# } #>
						<# } #>
					}

					#{{ addonId }} > .sppb-addon{
						position: relative;
					}
				<# } #>
				#{{ addonId }} a{
					color: {{ linkColor }};
				}
				#{{ addonId }} a:hover,
				#{{ addonId }} a:focus,
				#{{ addonId }} a:active{
					color: {{ linkHoverColor }};
				}
				<# if (!_.isEmpty(data.title)){ #>
					#sppb-addon-{{ data.id }} .sppb-addon-title{
						<# if(_.isObject(data.title_fontsize)){ #>
							font-size: {{ data.title_fontsize[window.builderDefaultDevice] }}px;
							line-height: {{ data.title_fontsize[window.builderDefaultDevice]
}}px;
						<# } else { #>
							font-size: {{ data.title_fontsize }}px;
							line-height: {{ data.title_fontsize }}px;
						<# } #>
						<# if(_.isObject(data.title_lineheight)){ #>
							line-height: {{ data.title_lineheight[window.builderDefaultDevice]
}}px;
						<# } else { #>
							line-height: {{ data.title_lineheight }}px;
						<# }
						if(data.title_letterspace !== "custom") {
						#> 
							letter-spacing: {{ data.title_letterspace }};
						<# } else { #>
							letter-spacing: {{ data.custom_letterspacing }};
						<# } #>

						font-weight: {{ data.title_fontweight }};
						color: {{ data.title_text_color }};
						<# if(_.isObject(data.title_margin_top)){ #>
							margin-top: {{ data.title_margin_top[window.builderDefaultDevice]
}}px;
						<# } else { #>
							margin-top: {{ data.title_margin_top }}px;
						<# } #>
						<# if(_.isObject(data.title_margin_bottom)){ #>
							margin-bottom: {{
data.title_margin_bottom[window.builderDefaultDevice] }}px;
						<# } else { #>
							margin-bottom: {{ data.title_margin_bottom }}px;
						<# } #>

						<# if(_.isObject(data.title_font_style) &&
data.title_font_style.underline) { #>
							text-decoration: underline;
							<# modern_font_style = true #>
						<# } #>

						<# if(_.isObject(data.title_font_style) &&
data.title_font_style.italic) { #>
							font-style: italic;
							<# modern_font_style = true #>
						<# } #>

						<# if(_.isObject(data.title_font_style) &&
data.title_font_style.uppercase) { #>
							text-transform: uppercase;
							<# modern_font_style = true #>
						<# } #>

						<# if(_.isObject(data.title_font_style) &&
data.title_font_style.weight) { #>
							font-weight: {{ data.title_font_style.weight }};
							<# modern_font_style = true #>
						<# } #>

						<# if(!modern_font_style) { #>
							<# if(_.isArray(title_font_style)) { #>
								<# if(title_font_style.indexOf("underline") !== -1){
#>
									text-decoration: underline;
								<# } #>
								<# if(title_font_style.indexOf("uppercase") !== -1){
#>
									text-transform: uppercase;
								<# } #>
								<# if(title_font_style.indexOf("italic") !== -1){
#>
									font-style: italic;
								<# } #>
								<# if(title_font_style.indexOf("lighter") !== -1){
#>
									font-weight: lighter;
								<# } else if(title_font_style.indexOf("normal") !==
-1){#>
									font-weight: normal;
								<# } else if(title_font_style.indexOf("bold") !==
-1){#>
									font-weight: bold;
								<# } else if(title_font_style.indexOf("bolder") !==
-1){#>
									font-weight: bolder;
								<# } #>
							<# } #>
						<# } #>
					}
				<# } #>

				<?php echo $queryString; ?>
			</style>
			<?php echo $class_name::getTemplate(); ?>
		</div>
		</script>
<?php
	}
}
?>

<script type="text/javascript" src="<?php echo
Uri::base(true) .
'/components/com_sppagebuilder/assets/js/vendors.js?' .
SppagebuilderHelperSite::getVersion(true); ?>"></script>
<script type="text/javascript" src="<?php echo
Uri::base(true) .
'/components/com_sppagebuilder/assets/js/engine.js?' .
SppagebuilderHelperSite::getVersion(true);
?>"></script>PK�E�[��S�)�)ajax/view.json.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */

use Joomla\CMS\Factory;
use Joomla\CMS\Filesystem\File;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Layout\LayoutHelper;

//no direct access
defined('_JEXEC') or die('Restricted access');

require_once JPATH_COMPONENT . '/builder/classes/ajax.php';
if (!class_exists('SppagebuilderHelperSite'))
{
	require_once JPATH_ROOT .
'/components/com_sppagebuilder/helpers/helper.php';
}

$user = Factory::getUser();
$app  = Factory::getApplication();

$authorised = $user->authorise('core.edit',
'com_sppagebuilder') ||
($user->authorise('core.edit.own',
'com_sppagebuilder') && ($this->item->created_by ==
$user->id));
if ($authorised !== true)
{
	$app->enqueueMessage(Text::_('JERROR_ALERTNOAUTHOR'),
'error');
	$app->setHeader('status', 403, true);

	return false;
}

SppagebuilderHelperSite::loadLanguage();

$input = Factory::getApplication()->input;
$action = $input->get('callback', '',
'STRING');

function sanitizeAddonData($data)
{
	if (\is_object($data))
	{
		foreach ($data as &$value)
		{
			if (\is_object($value))
			{
				$value = sanitizeAddonData($value);
			}
			else if (is_string($value))
			{
				switch (\strtolower($value))
				{
					case 'true':
						$value = '1';
						break;
					case 'false':
						$value = '0';
						break;
				}
			}
		}
		unset($value);
	}

	return $data;
}

// all settings loading
if ($action === 'addon')
{
	require_once JPATH_COMPONENT . '/parser/addon-parser.php';

	if (!class_exists('SpPageBuilderAddonHelper'))
	{
		require_once JPATH_ROOT .
'/components/com_sppagebuilder/builder/classes/addon.php';
	}

	$post_data = $_POST['addon'];
	$addon = json_decode(json_encode($post_data));
	$addon = sanitizeAddonData($addon);

	$addon_name = $addon->name;
	$class_name = 'SppagebuilderAddon' . ucfirst($addon_name);
	$addon_path = AddonParser::getAddonPath($addon_name);

	$addon_options = [];

	if ((!isset($addon->type) || $addon->type !== 'inner_row')
&& isset($addon_list[$addon->name]['attr']) &&
$addon_list[$addon->name]['attr'])
	{
		$addon_groups = $addon_list[$addon->name]['attr'];

		if (is_array($addon_groups))
		{
			foreach ($addon_groups as $addon_group)
			{
				$addon_options += $addon_group;
			}
		}
	}

	$store = new \stdClass;



	foreach ($addon->settings as $key => &$setting)
	{
		if (\is_object($setting))
		{
			$original = \json_decode(\json_encode($setting));
		}

		if (isset($setting->md))
		{
			$md = isset($setting->md) ? $setting->md : "";
			$sm = isset($setting->sm) ? $setting->sm : "";
			$xs = isset($setting->xs) ? $setting->xs : "";

			$xl = isset($setting->xl) ? $setting->xl : $md;
			$lg = isset($setting->lg) ? $setting->lg : $md;

			$keySm = $key . '_sm';
			$keyXs = $key . '_xs';
			$keyLg = $key . '_lg';
			$keyXl = $key . '_xl';
			$keyMd = $key . '_md';
			$addon->settings->$keySm = $sm;
			$addon->settings->$keyXs = $xs;
			$addon->settings->$keyXl = $xl;
			$addon->settings->$keyLg = $lg;
			$addon->settings->$keyMd = $md;
			$originalKey = $key . '_original';
			$store->$originalKey = $original;
		}

		if (isset($addon_options[$key]['selector']))
		{
			$addon_selector = $addon_options[$key]['selector'];

			if (isset($addon->settings->{$key}) &&
!empty($addon->settings->{$key}))
			{
				$selector_value = $addon->settings->{$key};
				$addon->settings->{$key . '_selector'} =
str_replace('{{ VALUE }}', $selector_value, $addon_selector);
			}
		}

		// Repeatable
		if ((!isset($addon->type) || $addon->type !==
'inner_row') &&  (($key == 'sp_' .
$addon->name . '_item') || ($key == $addon->name .
'_item')))
		{
			if (count((array) $setting))
			{
				foreach ($setting as &$options)
				{
					foreach ($options as $key2 => &$opt)
					{

						if (isset($opt->md))
						{
							$md = isset($opt->md) ? $opt->md : "";
							$sm = isset($opt->sm) ? $opt->sm : "";
							$xs = isset($opt->xs) ? $opt->xs : "";
							$opt = $md;
							$options->{$key2 . '_sm'} = $sm;
							$options->{$key2 . '_xs'} = $xs;
						}

						if
(isset($addon_options[$key]['attr'][$key2]['selector']))
						{
							$addon_selector =
$addon_options[$key]['attr'][$key2]['selector'];
							if (isset($options->{$key2}) &&
!empty($options->{$key2}))
							{
								$selector_value = $options->{$key2};
								$options->{$key2 . '_selector'} = str_replace('{{
VALUE }}', $selector_value, $addon_selector);
							}
						}
					}
				}
			}
		}
	}

	unset($setting);

	foreach ($store as $key => $value)
	{
		$addon->settings->$key = $value;
	}

	$output = '';

	require_once $addon_path . '/site.php';

	$assets = array();
	$css = LayoutHelper::render('addon.css', array('addon'
=> $addon));

	if (class_exists($class_name))
	{
		$addon_obj = new $class_name($addon);  // initialize addon class
		$addon_output = $addon_obj->render();


		// css
		if (method_exists($class_name, 'css'))
		{
			$css .= $addon_obj->css();
		}

		// js
		if (method_exists($class_name, 'js'))
		{
			$assets['js'] = $addon_obj->js();
		}
	}
	else
	{
		$addon_output =
AddonParser::spDoAddon(AddonParser::generateShortcode($addon, 0, 0));
	}

	if ($css)
	{
		$assets['css'] = $css;
	}

	if (empty($addon_output))
	{
		$addon_output = '<div
class="sppb-empty-addon"><svg version="1.1"
id="Layer_1" xmlns="http://www.w3.org/2000/svg"
x="0px" y="0px" width="140.1px"
height="24.2px" viewBox="0 0 140.1 24.2">
		<path class="st0"
d="M19,13.5c-0.4-0.4-0.8-0.4-1.1,0.1c-0.9,1.1-1.9,2.1-2.9,3c-3.5,3-7.6,4.7-12.1,5.5
		c-0.6,0.1-0.8-0.1-0.8-0.7c0-0.9,0-1.9,0-2.8l0,0l0,0l0,0V5.5V4.9c0-0.2,0-0.4,0.3-0.5c0.4-0.3,0.7,0.2,1.1,0.5
		c3.4,2.4,6.8,4.9,10.2,7.3c0.5,0.3,0.5,0.5,0.1,0.9c-2.6,2.4-5.5,4.1-8.9,5.1c-1.2,0.3-1.2,0.3-1.2,1.6c0,0.5,0.1,0.6,0.6,0.5
		c1-0.2,2-0.5,2.9-0.8c3.7-1.4,6.8-3.5,9.4-6.5c0.6-0.7,0.6-0.6-0.1-1.2C11.1,7.9,5.9,4.2,0.7,0.5C0.6,0.4,0.4,0.3,0.3,0.4
		c-0.2,0-0.1,0.2-0.1,0.4c0,0.9,0,1.8,0,2.7c0,0.3,0,0.4,0,0.6v3.2l0,0v2.6v1.2V13v1.4v1.5l0,0l-0.1,4.3l0,0c0,0.3,0,0.5,0,0.7
		c0,0.8,0,1.7,0,2.5c0,0.4,0.1,0.6,0.6,0.6c2.1-0.1,4.1-0.4,6.1-1c5-1.5,9.1-4.2,12.5-8.1C19.9,14.2,19.9,14.2,19,13.5z"></path>
		<path class="st1"
d="M9.1,12.3c0.1-0.1,0.1-0.2,0-0.3c-1.2-0.9-2.4-1.7-3.5-2.5C5.4,9.4,5.3,9.2,5.2,9.3
		c-0.1,0-0.1,0.1-0.1,0.2v0.2v4.5C6.8,14.1,8.2,13.1,9.1,12.3z"></path>
		</svg></div>';
	}

	if (!empty($addon_output))
	{
		$output .= LayoutHelper::render('addon.start',
array('addon' => $addon)); // start addon
		$output .= $addon_output;
		$output .= LayoutHelper::render('addon.end'); // end addon
	}

	echo json_encode(array('html' =>
htmlspecialchars_decode($output), 'status' =>
'true', 'assets' => $assets));
	die;
}

if ($action === 'get-page-data')
{
	$page_path = $_POST['pagepath'];
	if (File::exists($page_path))
	{
		$content = file_get_contents($page_path);

		if (is_array(json_decode($content)))
		{
			require_once JPATH_COMPONENT . '/builder/classes/addon.php';
			$content = SpPageBuilderAddonHelper::__($content, true);
			$content = SpPageBuilderAddonHelper::getFontendEditingPage($content);

			echo json_encode(array('status' => true, 'data'
=> $content));
			die;
		}
	}

	echo json_encode(array('status' => false, 'data'
=> 'Something worng there.'));
	die;
}

// all settings loading
if ($action === 'setting_value')
{
	require_once JPATH_COMPONENT . '/builder/classes/base.php';
	require_once JPATH_COMPONENT . '/builder/classes/config.php';

	$addon_name = $_POST['name'];
	$addon_id = $_POST['id'];
	SpPgaeBuilderBase::loadSingleAddon($addon_name);
	$addonList = SpAddonsConfig::$addons;
	$addonItem = $addonList[$addon_name];
	$addonItem = AddonsHelper::modernizeAddonStructure($addonItem);

	require_once JPATH_COMPONENT . '/parser/addon-parser.php';

	$settings = !empty($addonItem) ?
EditorUtils::extractSettingsDefaultValues($addonItem['settings'])
: [];
	$globalDefaults = [];
	$globalSettingsGroups = ['style', 'advanced',
'interaction'];
	$globalSettings = SpPgaeBuilderBase::addonOptions();

	foreach ($globalSettingsGroups as $groupName)
	{
		$globalDefaults = array_merge($globalDefaults,
EditorUtils::extractSettingsDefaultValues($globalSettings[$groupName]));
	}

	$settings = array_merge($settings, $globalDefaults);

	$addon = json_decode(json_encode(array('id' => $addon_id,
'name' => $addon_name, 'settings' =>
$settings)));


	$class_name = 'SppagebuilderAddon' . ucfirst($addon_name);
	$addon_path = AddonParser::getAddonPath($addon_name);

	$output = '';

	require_once $addon_path . '/site.php';

	$assets = array();
	$css = LayoutHelper::render('addon.css', array('addon'
=> $addon));

	if (class_exists($class_name))
	{
		$addon_obj = new $class_name($addon);  // initialize addon class
		$addon_output = $addon_obj->render();

		// css
		if (method_exists($class_name, 'css'))
		{
			$css .= $addon_obj->css();
		}

		// js
		if (method_exists($class_name, 'js'))
		{
			$assets['js'] = $addon_obj->js();
		}
	}
	else
	{
		$addon_output =
AddonParser::spDoAddon(AddonParser::generateShortcode($addon, 0, 0));
	}

	if ($css)
	{
		$assets['css'] = $css;
	}

	if (empty($addon_output))
	{
		$addon_output = '<div
class="sppb-empty-addon"><svg version="1.1"
id="Layer_1" xmlns="http://www.w3.org/2000/svg"
x="0px" y="0px" width="140.1px"
height="24.2px" viewBox="0 0 140.1 24.2">
		<path class="st0"
d="M19,13.5c-0.4-0.4-0.8-0.4-1.1,0.1c-0.9,1.1-1.9,2.1-2.9,3c-3.5,3-7.6,4.7-12.1,5.5
		c-0.6,0.1-0.8-0.1-0.8-0.7c0-0.9,0-1.9,0-2.8l0,0l0,0l0,0V5.5V4.9c0-0.2,0-0.4,0.3-0.5c0.4-0.3,0.7,0.2,1.1,0.5
		c3.4,2.4,6.8,4.9,10.2,7.3c0.5,0.3,0.5,0.5,0.1,0.9c-2.6,2.4-5.5,4.1-8.9,5.1c-1.2,0.3-1.2,0.3-1.2,1.6c0,0.5,0.1,0.6,0.6,0.5
		c1-0.2,2-0.5,2.9-0.8c3.7-1.4,6.8-3.5,9.4-6.5c0.6-0.7,0.6-0.6-0.1-1.2C11.1,7.9,5.9,4.2,0.7,0.5C0.6,0.4,0.4,0.3,0.3,0.4
		c-0.2,0-0.1,0.2-0.1,0.4c0,0.9,0,1.8,0,2.7c0,0.3,0,0.4,0,0.6v3.2l0,0v2.6v1.2V13v1.4v1.5l0,0l-0.1,4.3l0,0c0,0.3,0,0.5,0,0.7
		c0,0.8,0,1.7,0,2.5c0,0.4,0.1,0.6,0.6,0.6c2.1-0.1,4.1-0.4,6.1-1c5-1.5,9.1-4.2,12.5-8.1C19.9,14.2,19.9,14.2,19,13.5z"></path>
		<path class="st1"
d="M9.1,12.3c0.1-0.1,0.1-0.2,0-0.3c-1.2-0.9-2.4-1.7-3.5-2.5C5.4,9.4,5.3,9.2,5.2,9.3
		c-0.1,0-0.1,0.1-0.1,0.2v0.2v4.5C6.8,14.1,8.2,13.1,9.1,12.3z"></path>
		</svg></div>';
	}

	$output .= LayoutHelper::render('addon.start',
array('addon' => $addon)); // start addon
	$output .= $addon_output;
	$output .= LayoutHelper::render('addon.end'); // end addon

	echo json_encode(array('formData' => json_encode($settings),
'html' => htmlspecialchars_decode($output), 'status'
=> 'true', 'assets' => $assets));
	die;
}

require_once JPATH_COMPONENT . '/helpers/ajax.php';
PK�E�[)!�VVmedia/view.json.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */

use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\View\HtmlView;

//no direct access
defined('_JEXEC') or die('Restricted access');

if (!class_exists('SppagebuilderHelperSite'))
{
	require_once JPATH_ROOT .
'/components/com_sppagebuilder/helpers/helper.php';
}
class SppagebuilderViewMedia extends HtmlView
{
	public function display($tpl = null)
	{
		$user = Factory::getUser();
		$authorised = $user->authorise('core.admin',
'com_sppagebuilder') ||
$user->authorise('core.manage',
'com_sppagebuilder');

		if (!$user->id || !$authorised)
		{
			throw new
Exception(Text::_('COM_SPPAGEBUILDER_GLOBAL_UNAUTHORIZED_ACCESS'));
		}

		$input = Factory::getApplication()->input;
		$layout = $input->get('layout', 'browse',
'STRING');
		$this->date = $input->post->get('date', NULL,
'STRING');
		$this->start = $input->post->get('start', 0,
'INT');
		$this->search = $input->post->get('search', NULL,
'STRING');
		$this->limit = 30;

		$model = $this->getModel();

		if (($layout == 'browse') || ($layout == 'modal'))
		{
			$this->items = $model->getItems();
			$this->filters = $model->getDateFilters($this->date,
$this->search);
			$this->total = $model->getTotalMedia($this->date,
$this->search);
			$this->categories = $model->getMediaCategories();
		}
		else
		{
			$this->media = $model->getFolders();
		}

		SppagebuilderHelperSite::loadLanguage();

		parent::display($tpl);
	}
}
PK�E�[a	w�media/tmpl/browse.phpnu�[���<?php
/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/
//no direct access
defined('_JEXEC') or die ('Restricted access');

$report = array();
$report['items'] = $this->items;
$report['filters'] = $this->filters;

if($this->total > ($this->limit + $this->start)) {
	$report['pageNav'] 	= 'true';
} else {
	$report['pageNav'] 	= 'false';
}

echo json_encode($report); die;
PK�E�[���C��media/tmpl/folders.phpnu�[���<?php
/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/

use Joomla\CMS\Factory;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Filesystem\File;

//no direct access
defined('_JEXEC') or die ('Restricted access');

$input 	= Factory::getApplication()->input;
$path 	= $input->post->get('path', '/images',
'PATH');
$media 	= $this->media;

$report['breadcrumbs'] = $media['breadcrumbs'];
$report['folders'] = $media['folders'];
$report['folders_list'] = $media['folders_list'];

$items = array();

foreach ($media['items'] as $key => $item) {

	$item 					= str_replace('\\', '/',$item);
	$root_path 				= str_replace('\\', '/', JPATH_ROOT);
	$path 					= str_replace($root_path . '/', '', $item);

	$items[$key]['path'] 	= $path;
	$thumb 					= dirname($path) . '/_sp-pagebuilder_thumbs/' .
basename($path);

	if(file_exists(JPATH_ROOT . '/' . $thumb))
	{
		$items[$key]['src'] = Uri::root(true) . '/' . $thumb;
	}
	else
	{
		$items[$key]['src'] = Uri::root(true) . '/' . $path;
	}

	$filename 				= basename($item);
	$title 					= File::stripExt($filename);
	$ext 					= File::getExt($filename);

	$items[$key]['id'] 			= 0;
	$items[$key]['title'] 		= $title;
	$items[$key]['ext'] 		= $ext;
	$items[$key]['type'] 		= ( $ext == 'pdf' ) ?
'pdf' : 'image';
}

$report['items'] = $items;

echo json_encode($report);
die;PK�E�[آ��media/tmpl/modal.phpnu�[���<?php
defined('_JEXEC') or die();
require_once JPATH_ADMINISTRATOR .
'/components/com_sppagebuilder/views/media/tmpl/modal.php';
PK�E�[Mp�W11page/view.html.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */
//no direct access
defined('_JEXEC') or die('Restricted access');

use Joomla\CMS\Factory;
use Joomla\CMS\Log\Log;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\View\HtmlView;
use Joomla\CMS\Component\ComponentHelper;

class SppagebuilderViewPage extends HtmlView
{

	protected $item;
	protected $canEdit;

	function display($tpl = null)
	{
		$app  = Factory::getApplication();
		$user = Factory::getUser();
		$this->item = $this->get('Item');

		// If a page is unpublished/trashed and a user tries to preview it. 
		if (is_string($this->item))
		{
			throw new Exception($this->item, 404);
		}

		$this->item = ApplicationHelper::preparePageData($this->item);

		$this->canEdit = $user->authorise('core.edit',
'com_sppagebuilder') ||
			$user->authorise('core.edit',
'com_sppagebuilder.page.' . $this->item->id) ||
			($user->authorise('core.edit.own',
'com_sppagebuilder.page.' . $this->item->id) &&
$this->item->created_by == $user->id);
		$this->checked_out = ($this->item->checked_out == 0 ||
$this->item->checked_out == $user->id);

		if (count($errors = (array) $this->get('Errors')))
		{
			Log::add(implode('<br />', $errors), Log::WARNING,
'jerror');
			return false;
		}

		// Temporary disabled
		if ($this->item->access_view == false)
		{
			$app->enqueueMessage(Text::_('JERROR_ALERTNOAUTHOR'),
'error');
			$app->setHeader('status', 403, true);

			return;
		}

		$this->_prepareDocument($this->item->title);



		parent::display($tpl);
	}

	protected function _prepareDocument($title = '')
	{
		$config = Factory::getConfig();
		$app = Factory::getApplication();
		$doc = Factory::getDocument();
		$menus = $app->getMenu();
		$menu = $menus->getActive();
		$config_params =
ComponentHelper::getParams('com_sppagebuilder');
		$disable_og = $config_params->get('disable_og', 0);
		$disable_tc = $config_params->get('disable_tc', 0);

		//Title
		if (isset($meta['title']) && $meta['title'])
		{
			$title = $meta['title'];
		}
		else
		{
			if ($menu)
			{
				if ($menu->getParams()->get('page_title',
''))
				{
					$title = $menu->getParams()->get('page_title');
				}
				else
				{
					$title = $menu->title;
				}
			}
		}

		//Include Site title
		$sitetitle = $title;
		if ($config->get('sitename_pagetitles') == 2)
		{
			$sitetitle = Text::sprintf('JPAGETITLE', $sitetitle,
$app->get('sitename'));
		}
		elseif ($config->get('sitename_pagetitles') == 1)
		{
			$sitetitle = Text::sprintf('JPAGETITLE',
$app->get('sitename'), $sitetitle);
		}
		$doc->setTitle($sitetitle);

		$og_title = $this->item->og_title;
		$language = ($this->item->language == '*') ?
Factory::getLanguage()->getTag() : $this->item->language;

		$this->document->addCustomTag('<meta
property="article:author" content="' .
$this->item->author_name . '"/>');
		$this->document->addCustomTag('<meta
property="article:published_time" content="' .
$this->item->created_on . '"/>');
		$this->document->addCustomTag('<meta
property="article:modified_time" content="' .
$this->item->modified . '"/>');
		$this->document->addCustomTag('<meta
property="og:locale" content="' . $language .
'" />');

		// Page Meta
		if (isset($this->item->attribs))
		{
			$attribs = json_decode($this->item->attribs);
		}
		else
		{
			$attribs = new stdClass;
		}

		if (!$disable_og)
		{
			if ($og_title)
			{
				$this->document->addCustomTag('<meta
property="og:title" content="' . $og_title .
'" />');
			}
			else
			{
				$doc->addCustomTag('<meta property="og:title"
content="' . $title . '" />');
			}

			$og_type = (isset($attribs->og_type) && $attribs->og_type)
? $attribs->og_type : 'website';

			$this->document->addCustomTag('<meta
property="og:type" content="' . $og_type . '"
/>');
			$this->document->addCustomTag('<meta
property="og:url" content="' .
Uri::getInstance()->toString() . '" />');

			if ($fb_app_id = $config_params->get('fb_app_id',
''))
			{
				$this->document->addCustomTag('<meta
property="fb:app_id" content="' . $fb_app_id .
'" />');
			}

			if ($config->get('sitename', ''))
			{
				$this->document->addCustomTag('<meta
property="og:site_name" content="' .
htmlspecialchars($config->get('sitename', '')) .
'" />');
			}
		}

		$og_image = "";

		if (!empty($this->item->og_image))
		{
			$og_image = preg_match("@^{@", $this->item->og_image) ?
json_decode($this->item->og_image)->src :
$this->item->og_image;
		}


		if (!$disable_og && $og_image)
		{
			$this->document->addCustomTag('<meta
property="og:image" content="' . Uri::root() .
$og_image . '" />');
			$this->document->addCustomTag('<meta
property="og:image:width" content="1200" />');
			$this->document->addCustomTag('<meta
property="og:image:height" content="630" />');
		}

		$og_description = $this->item->og_description;
		if (!$disable_og && $og_description)
		{
			$this->document->addCustomTag('<meta
property="og:description" content="' . $og_description
. '" />');
		}

		if (!$disable_tc)
		{
			// Twitter
			$this->document->addCustomTag('<meta
name="twitter:card" content="summary" />');

			if ($config->get('sitename', ''))
			{
				$this->document->addCustomTag('<meta
name="twitter:site" content="' .
htmlspecialchars($config->get('sitename', '')) .
'" />');
			}

			if ($og_description)
			{
				$this->document->addCustomTag('<meta
name="twitter:description" content="' . $og_description
. '" />');
			}

			if ($og_image)
			{
				$this->document->addCustomTag('<meta
name="twitter:image:src" content="' . Uri::root() .
$og_image . '" />');
			}
		}


		$meta_description = (isset($attribs->meta_description) &&
$attribs->meta_description) ? $attribs->meta_description :
'';
		$meta_keywords 	  = (isset($attribs->meta_keywords) &&
$attribs->meta_keywords) ? $attribs->meta_keywords : '';
		$robots 	  	  = (isset($attribs->robots) &&
$attribs->robots) ? $attribs->robots : '';


		if ($menu)
		{
			if ($menu->getParams()->get('menu-meta_description'))
			{
				$meta_description =
$menu->getParams()->get('menu-meta_description');
			}

			if ($menu->getParams()->get('menu-meta_keywords'))
			{
				$meta_keywords =
$menu->getParams()->get('menu-meta_keywords');
			}

			if ($menu->getParams()->get('robots'))
			{
				$robots = $menu->getParams()->get('robots');
			}
		}

		if (!empty($meta_description))
		{
			$this->document->setDescription($meta_description);
		}

		if (!empty($meta_keywords))
		{
			$this->document->setMetadata('keywords',
$meta_keywords);
		}

		if (!empty($robots))
		{
			$this->document->setMetadata('robots', $robots);
		}
	}
}
PK�E�[��L��page/tmpl/default.phpnu�[���<?php

/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2023 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
 */
//no direct access
defined('_JEXEC') or die('Restricted access');

use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;

$doc = Factory::getDocument();
$user = Factory::getUser();
$app = Factory::getApplication();

$params = ComponentHelper::getParams('com_sppagebuilder');

if ($params->get('fontawesome', 1))
{
	SppagebuilderHelperSite::addStylesheet('font-awesome-5.min.css');
	SppagebuilderHelperSite::addStylesheet('font-awesome-v4-shims.css');
}

if (!$params->get('disableanimatecss', 0))
{
	SppagebuilderHelperSite::addStylesheet('animate.min.css');
}

if (!$params->get('disablecss', 0))
{
	SppagebuilderHelperSite::addStylesheet('sppagebuilder.css');
	SppagebuilderHelperSite::addStylesheet('animate.min.css');
	SppagebuilderHelperSite::addContainerMaxWidth();
}

// load font assets form database
SppagebuilderHelperSite::loadAssets();

HTMLHelper::_('jquery.framework');
HTMLHelper::_('script',
'components/com_sppagebuilder/assets/js/jquery.parallax.js',
['version' => SppagebuilderHelperSite::getVersion(true)]);

HTMLHelper::_('script',
'components/com_sppagebuilder/assets/js/es5_interaction.js',
['version' => SppagebuilderHelperSite::getVersion(true)],
['defer' => true]);
HTMLHelper::_('script',
'components/com_sppagebuilder/assets/js/sppagebuilder.js',
['version' => SppagebuilderHelperSite::getVersion(true)],
['defer' => true]);

$menus = $app->getMenu();
$menu = $menus->getActive();
$menuClassPrefix = '';
$showPageHeading = 0;

// check active menu item
if ($menu)
{
	$menuClassPrefix 	=
$menu->getParams()->get('pageclass_sfx');
	$showPageHeading 	=
$menu->getParams()->get('show_page_heading');
	$menuHeading 		= $menu->getParams()->get('page_heading');
}

$page = $this->item;

require_once JPATH_ROOT .
'/components/com_sppagebuilder/parser/addon-parser.php';
require_once JPATH_ROOT .
'/components/com_sppagebuilder/builder/classes/addon.php';

$content = $page->text;

// Add page css
if (isset($page->css) && $page->css)
{
	$doc->addStyledeclaration($page->css);
}

?>

<div id="sp-page-builder" class="sp-page-builder <?php
echo $menuClassPrefix; ?> page-<?php echo $page->id;
?>">

	<?php if ($showPageHeading) : ?>
		<div class="page-header">
			<h1 itemprop="name">
				<?php echo $menuHeading ? $menuHeading : $page->title; ?>
			</h1>
		</div>
	<?php endif; ?>

	<div class="page-content">
		<?php $pageName = 'page-' . $page->id; ?>
		<?php echo AddonParser::viewAddons($content, 0, $pageName); ?>

		<?php if ($this->canEdit) : ?>
			<a class="sp-pagebuilder-page-edit" href="<?php
echo $this->checked_out ? $this->item->formLink :
$this->item->link . '#'; ?>">
				<?php if (!$this->checked_out) : ?>
					<span class="fas fa-lock"
area-hidden="true"></span> <?php echo
Text::_('COM_SPPAGEBUILDER_PAGE_CHECKED_OUT'); ?>
				<?php else : ?>
					<span class="fas fa-edit"
area-hidden="true"></span> <?php echo
Text::_('COM_SPPAGEBUILDER_PAGE_EDIT'); ?>
				<?php endif; ?>
			</a>
		<?php endif; ?>
	</div>
</div>PK�E�[��ܦEEpage/tmpl/default.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<metadata>
        <layout
title="COM_SPPAGEBUILDER_PAGE_DEFAULT_TITLE">
               
<message>COM_SPPAGEBUILDER_PAGE_VIEW_DEFAULT_DESC</message>
        </layout>
        <fields name="request">
                <fieldset name="request"
                       
addfieldpath="/administrator/components/com_sppagebuilder/models/fields">

                        <field name="id"
type="modal_page"
                               
label="COM_SPPAGEBUILDER_FIELD_SELECT_PAGE_LABEL"
                                required="true"
                                edit="false"
                                clear="false"
                               
description="COM_SPPAGEBUILDER_FIELD_SELECT_PAGE_DESC"
                                />
                </fieldset>
        </fields>
</metadata>PK{V�[�Z�**login/tmpl/default.phpnu�[���PK{V�[?��|GGplogin/tmpl/default.xmlnu�[���PK{V�[S��!���login/tmpl/default_login.phpnu�[���PK{V�[*G���D
login/tmpl/default_logout.phpnu�[���PK{V�[¿�.��()login/tmpl/logout.xmlnu�[���PK{V�[������\-login/view.html.phpnu�[���PK{V�[s-T�##9profile/tmpl/default.phpnu�[���PK{V�[����33�=profile/tmpl/default.xmlnu�[���PK{V�[����e?profile/tmpl/default_core.phpnu�[���PK{V�[K���	�	�Dprofile/tmpl/default_custom.phpnu�[���PK{V�[�A
33�Nprofile/tmpl/default_params.phpnu�[���PK{V�[�~�(Tprofile/tmpl/edit.phpnu�[���PK{V�[ݏ�88njprofile/tmpl/edit.xmlnu�[���PK{V�[�'E���kprofile/view.html.phpnu�[���PK{V�[}*A���|registration/tmpl/complete.phpnu�[���PK{V�[��˙pp�~registration/tmpl/default.phpnu�[���PK{V�[��B�EE��registration/tmpl/default.xmlnu�[���PK{V�[��r��
�
L�registration/view.html.phpnu�[���PK{V�[ށ>e�remind/tmpl/default.phpnu�[���PK{V�[�q>�11Ƙremind/tmpl/default.xmlnu�[���PK{V�[�n?"h
h
>�remind/view.html.phpnu�[���PK{V�[��;��reset/tmpl/complete.phpnu�[���PK{V�[�M��

=�reset/tmpl/confirm.phpnu�[���PK{V�[�a��reset/tmpl/default.phpnu�[���PK{V�[��W�22�reset/tmpl/default.xmlnu�[���PK{V�[�o�d�reset/view.html.phpnu�[���PK�]�[@V����tree/metadata.xmlnu�[���PK�]�[B�����tree/tmpl/default.xmlnu�[���PK�E�[R��ǀ�5�form/view.html.phpnu�[���PK�E�[������form/tmpl/edit-iframe.phpnu�[���PK�E�[#W1�d�d��form/tmpl/edit.phpnu�[���PK�E�[��S�)�);Lajax/view.json.phpnu�[���PK�E�[)!�VVvmedia/view.json.phpnu�[���PK�E�[a	w��|media/tmpl/browse.phpnu�[���PK�E�[���C���~media/tmpl/folders.phpnu�[���PK�E�[آ����media/tmpl/modal.phpnu�[���PK�E�[Mp�W11…page/view.html.phpnu�[���PK�E�[��L��5�page/tmpl/default.phpnu�[���PK�E�[��ܦEE%�page/tmpl/default.xmlnu�[���PK'':
��