Използвам плъгин за въртележка, който зависи от jQueryUI. За да го заредя, просто използвам Зареждане на jQueryUI addon от marketplace.
Редактиране - По-точно. Какво се случва е:
A. когато problematic.js
се зарежда директно - без if
: въртележката не работи, когато потребителят е влязъл и съдържанието на горната лента („Редактиране“, „Табло“) изчезва, така че дори е невъзможно да се влезе в режим на редактиране
B. когато problematic.js
е зареден с такова условие:
if (!$c->isEditMode()){ ?>
<script type="text/javascript" src="problematic.js"></script>
<?php } ?>
точно както по-горе: въртележката не работи, когато потребителят е влязъл и съдържанието на горната лента („Редактиране“, „Табло“) изчезва, така че дори е невъзможно да влезете в режим на редактиране
C. когато problematic.js
е зареден с такова условие:
<?php $u = new User();
if (!$u->isRegistered()){ ?>
<script type="text/javascript" src="problematic.js"></script>
<?php } ?>
съдържанието на горната лента е налице, възможно е страницата да се превърне в режим на редактиране, но очевидно js файлът не се изпълнява, когато потребителят е влязъл.
Това обаче не е това, от което се нуждая - искам скриптът ми да работи, когато:
- потребителят не е влязъл,
- потребителят е влязъл в уебсайта, но страницата НЕ Е в режим на редактиране.
Искам скриптът да НЕ се изпълнява, когато страницата Е САМО в режим на редактиране.
Как трябва да постигна това?
Редактиране: Ето част от PHP/HTML кода:
<?php
defined('C5_EXECUTE') or die(_('Access Denied.'));
?>
<!DOCTYPE html>
<html>
<head>
<?php Loader::element('header_required');?>
<script type="text/javascript" src="<?php print $this->getThemePath(); ?>/js/respond.min.js"></script>
<script type="text/javascript" src="<?php print $this->getThemePath(); ?>/js/jquery.ui.rcarousel.min.js"></script>
<?php $u = new User();
if (!$u->isRegistered()){ ?>
<!-- To prevent conflicts with C5 jQuery UI when in edit mode -->
<script type="text/javascript" src="<?php print $this->getThemePath(); ?>/js/home.js"></script>
<?php } ?>
<link rel='stylesheet' type='text/css' href="/bg<?php print $this->getStyleSheet('css/style.css'); ?>" />
<meta name='viewport' content='width=device-width, initial-scale=1, maximum-scale=1' />
</head>
<body <?php if ($c->isEditMode()) { ?> class='editmode' <?php } ?>>
<div class='c5wrapper'>
<div id='container'>
<div id='content-promo' class='content-promo full-width'>
<div id='carousel-wrapper' class='content-promo carousel-wrapper'>
<?php
$a = new Area('Carousel');
$a->display($c);
?>
</div> <!-- End of carousel wrapper -->
<a href='/bg#' id='ui-carousel-prev' class='carousel-controls'><span class='carousel-control-text'>Prev</span></a>
<a href='/bg#' id='ui-carousel-next' class='carousel-controls'><span class='carousel-control-text'>Next</span></a>
</div> <!-- End of content promo -->
<?php $this->inc('elements/footer.php'); ?>