<?php
include("core/init.php");
include("session.php");
/***********Most Common Used**********/
$mainTable = "newsletter_subscribers";//Table name
$pageName = "newsletter-subscribers";//Page name
$pageHeading = "Subscribed Newsletter";//Page heading
/****************Search Filter Start***********/
if (!Session::exists("listFilterQuery")) {
  Session::put("listFilterQuery", '');
}

if (isset($_POST["filter_province"])) {
  Session::delete("Ifilter_province");

  $filterQuery = "";
  $filterQuery .= " WHERE 1=1 ";
  if (Input::getInput("filter_province") != "") {
    Session::put("Ifilter_province", Input::getInput("filter_province"));

    $filterQuery .= " and location_name='" . Input::getInput("filter_province") . "'";
  } else {
    $filterQuery = "";
  }

  Session::put("listFilterQuery", $filterQuery);
}
/****************Search Filter Ends**********************/
/****************Delete Start**********************/
if (Input::particularInputExists("get", "deleteId")) {

  if (Db::getInstance()->num_rows("select id from {$mainTable} where id='" . Input::getInput("deleteId") . "'") > 0) {
    Db::getInstance()->delete($mainTable, array("id" => Input::getInput("deleteId")));

    Session::flash("message", '<div class="alert-success" style="padding: 5px;">Subscribed newsletter data has been deleted successfully.</div><br>');
    Redirect::to($pageName);
  } else {
    Redirect::to($pageName);
  }
}

$dbProvinces = Db::getInstance()->get_results("select province from province where isActive=1");

$provinces = array();
if (count($dbProvinces)) foreach ($dbProvinces as $dbProvince) {
  $provinces[$dbProvince["province"]] = $dbProvince["province"];
}
/****************Delete Ends**********************/
?>
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title><?php echo $pageHeading; ?> - <?php echo Config::get("project/site_title"); ?></title>
  <!-- Tell the browser to be responsive to screen width -->
  <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
  <link rel="shortcut icon" href="dist/img/admin-panel.png">
  <!-- Bootstrap 3.3.6 -->
  <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
  <!-- Font Awesome -->
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css">
  <!-- Ionicons -->
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css">
  <!-- Theme style -->
  <link rel="stylesheet" href="plugins/datatables/dataTables.bootstrap.css">
  <link rel="stylesheet" href="dist/css/AdminLTE.min.css">
  <!-- AdminLTE Skins. Choose a skin from the css/skins
       folder instead of downloading all of them to reduce the load. -->
  <link rel="stylesheet" href="dist/css/skins/_all-skins.min.css">
  <!-- 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/html5shiv/3.7.3/html5shiv.min.js"></script>
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->
</head>
<body class="hold-transition skin-blue sidebar-mini">
  <div class="wrapper">
    <?php include("includes/header.php"); ?>
    <?php include("includes/sidebar.php"); ?>
    <!-- Content Wrapper. Contains page content -->
    <div class="content-wrapper">
      <!-- Content Header (Page header) -->
      <section class="content-header">
        <h1><?php echo $pageHeading; ?></h1>
        <ol class="breadcrumb">
          <li><a href="Dashboard"><i class="fa fa-dashboard"></i> Home</a></li>
          <li class="active"><?php echo $pageHeading; ?></li>
        </ol>
      </section>
      <!-- Main content -->
      <section class="content">
        <div class="row">
          <div class="col-md-12">

            <?php echo Session::flashDisplay("message"); ?>
            
            <div class="box">
              <div class="box-header">
                <div class="col-md-12 col-md-offset-3">
                    <div class="col-md-6">
                  <?php
                  $newProvinceArray = array("" => "All Locations");
                  $provinces = $newProvinceArray + $provinces;
                  ?>
                  <form id="_filterform" action="<?php echo $pageName; ?>" method="post">
                    <div class="col-md-6">
                      <select name="filter_province" class="form-control">
                        <?php echo Input::getSelected("filter_province", Session::get("Ifilter_province"), $provinces); ?>
                      </select>
                    </div>
                    <div class="col-md-6">
                      <button type="submit" class="btn btn-primary" onclick="filterResults();">Filter</button>
                    </div>
                  </form>
                  </div>
                    <div class="col-md-6">
                      <?php
                      $exportFltrQry = "";
                      if(isset($_SESSION["Ifilter_province"])){
                        $exportFltrQry = "?location=".Session::get("Ifilter_province");
                      }
                      ?>
                      <a href="export-newsletter-subscribers<?php echo $exportFltrQry; ?>" class="btn btn-primary">Data Download in XLSX</a>
                    </div>
                </div>
              </div>
              <!-- /.box-header -->
              <div class="box-body">
                <table id="example2" class="table table-bordered table-striped">
                  <thead>
                    <tr>
                      <th>No.</th>
                      <th>Email</th>
                      <th>Location</th>
                      <th>Subscribed At</th>
                      <th>Delete</th>
                    </tr>
                  </thead>
                  <tbody>
                    <?php 
                    $query = "select * from {$mainTable}" . Session::get("listFilterQuery") . " ORDER BY subscribed_at DESC";
                    $dbFields = Db::getInstance()->get_results($query);
                    $sno = 1;
                    if (!empty($dbFields)) {
                      foreach ($dbFields as $dbField) {
                        $date = new DateTime($dbField["subscribed_at"]);
                        echo '<tr>';
                        echo '<td>' . $sno . '</td>';
                        echo '<td>' . $dbField["email"] . '</td>';
                        echo '<td>' . $dbField["location_name"] . '</td>';
                        echo '<td>' . $date->format("Y-m-d h:i a") . '</td>';
                        echo '<td><a href="'.$pageName.'?deleteId=' . $dbField["id"] . '" onclick="return confirm(\'Are you sure you want to delete subscribed newsletter data?\');"> <i class="fa fa-trash fa-lg" aria-hidden="true"></i></a> </td>';
                        echo '</tr>';
                        $sno++;
                      }
                    }
                    ?>
                  </tbody>
                </table>
              </div>
              <!-- /.box-body -->
            </div>

          </div>

        </div>

      </section>
      <!-- /.content -->
    </div>
    <!-- /.content-wrapper -->

    <?php include("includes/footer.php"); ?>

    <!-- Add the sidebar's background. This div must be placed
       immediately after the control sidebar -->
    <div class="control-sidebar-bg"></div>
  </div>
  <!-- ./wrapper -->

  <!-- jQuery 2.2.3 -->
  <script src="plugins/jQuery/jquery-2.2.3.min.js"></script>
  <!-- Bootstrap 3.3.6 -->
  <script src="bootstrap/js/bootstrap.min.js"></script>
  <!-- Slimscroll -->
  <script src="plugins/slimScroll/jquery.slimscroll.min.js"></script>
  <!-- FastClick -->
  <script src="plugins/fastclick/fastclick.js"></script>
  <!-- AdminLTE App -->
  <script src="dist/js/app.min.js"></script>
  <!-- AdminLTE for demo purposes -->
  <script src="dist/js/demo.js"></script>
  <script src="plugins/datatables/jquery.dataTables.min.js"></script>
  <script src="plugins/datatables/dataTables.bootstrap.min.js"></script>
  <script>
    $(function() {
      $('#example2').DataTable({
          "destroy": true,
          "paging": true,
          "ordering": true,
          "info": true,
          "searching": true,
          "autoWidth": false,
          "responsive": true,
          "language": {
            "emptyTable": "No data available."
          },
          "lengthMenu": [[20, 50, 100, 250, -1], [20, 50, 100, 250, "All"]]
      });
    });

    function filterResults() {
      $("#_filterform").submit();
      return true;
    }
  </script>
</body>
</html>