added pagination and alpha key, added some styling for the results limit dropdown
authorAnthony Talarico <talarico@gaslightmedia.com>
Thu, 9 Mar 2017 21:50:02 +0000 (16:50 -0500)
committerAnthony Talarico <talarico@gaslightmedia.com>
Thu, 9 Mar 2017 21:50:02 +0000 (16:50 -0500)
adding some styling for the search results page

classes/data/dataObits.php
css/front.css
js/front.js
models/admin/management/obitImport.php
models/front/obits/search.php
views/front/obits/search.html
views/front/obits/searchResults.html

index cd668bf..c47953f 100644 (file)
@@ -290,5 +290,33 @@ class GlmDataObits extends GlmDataAbstract
         return $r;
 
     }
+     /* Get Alpha list of first characters in member name
+     * for those members that have active info.
+     *
+     * @param string $where Where clause
+     *     Note the table refernces M and I.
+     * @param string $selected Optional selected alpha character
+     *
+     * @return object Class object
+     *
+     */
+    public function getAlphaList($where = '', $selected = '')
+    {
+
+        $sql = "
+           SELECT DISTINCT LEFT(last_name, 1) AS alpha
+             FROM ".GLM_MEMBERS_OBITS_PLUGIN_DB_PREFIX. "obits
+            ORDER BY alpha
+        ;";
+        $alphaData = $this->wpdb->get_results($sql, ARRAY_A);
+
+        // Set selected
+        foreach ($alphaData as $k=>$v) {
+            $alphaData[$k]['default'] = ($v['alpha'] == $selected);
+        }
+
+        return $alphaData;
+
+    }
 
 }
index f76e523..7caf9f3 100644 (file)
@@ -48,7 +48,7 @@
     height: 25px;
     padding: 2px;
 }
-.search-container label{
+.search-container label:not(.search-results-label){
     float: left;
     margin-right: 5px;
 }
 }
 .options-wrapper{
     display: none;
-}
\ No newline at end of file
+}
+.pagination ul li{
+    float: left;
+    list-style: none;
+}
+
+.pagination ul li a {
+    display: block;
+    text-align: center;
+    padding: 3px;
+    text-decoration: none;
+}
+.results-limit{
+    display: inline-block;
+    max-width: 75px;
+    height: 25px;
+    padding: 2px;
+    text-align:center;
+    margin-left: 5px;
+}
+.search-results-label{
+    max-width: 105px;
+    display: inline;
+    margin-left: 100px !important;
+    font-weight: bold;
+}
+.search-container .results-limit-container {
+  margin-bottom: 20px;
+}
+
index 3d27be4..a718b44 100644 (file)
@@ -1,10 +1,21 @@
 $(document).ready(function(){
     $(".expand-collapse").on("click", function(e){
         e.preventDefault();
+        $('.options-wrapper').slideToggle(500, function () {});
+    });
 
-        $('.options-wrapper').slideToggle(500, function () {
-
-        });
-
+    $('.obits-link').on("click", function(){
+       $('#obits-search').submit(); 
+    });
+    
+    $('.alpha-link').on("click", function(){
+         console.log("test");
+        $('#obits-search').submit(); 
+        console.log("test");
+    });
+    
+    $('#results-limit').on('change', function(){
+//        $('#obits-search').submit(); 
     });
+    
 });
\ No newline at end of file
index a54e5c6..fed623e 100644 (file)
@@ -134,7 +134,11 @@ class GlmMembersAdmin_management_obitImport
             break;
             
         case 'importObits':
-            $article_url = "http://obits.charlevoixlibrary.org/articles/";
+             require_once GLM_MEMBERS_PLUGIN_PATH.'/models/admin/ajax/imageUpload.php';
+            $ImageUpload = new GlmMembersAdmin_ajax_imageUpload($this->wpdb, $this->config);
+            
+            $img_src = "http://obits.charlevoixlibrary.org/articles/";
+           
             
             if ( isset( $_REQUEST['start'] ) ) {
                 $start = filter_var( $_REQUEST['start'], FILTER_VALIDATE_INT );
@@ -145,31 +149,50 @@ class GlmMembersAdmin_management_obitImport
             $table = GLM_MEMBERS_OBITS_PLUGIN_DB_PREFIX . 'obits';
             
             $url = get_site_url() . '/wp-admin/admin.php?page=glm-members-admin-menu-management&glm_action=obitImport&option=importObits';
-            $limit = 400;
+            $limit = 200;
             
             $sql = "SELECT last, first_mid, b_year, b_yr_range,d_year, d_yr_range,spouse_partner, maiden_other,obit_article,article_a, article_b, article_c, father_name,mother_name,misc_info, courier_date FROM chxctyobit LIMIT $limit OFFSET $start";
             $obits = $wpdb->get_results( $sql, ARRAY_A );
             
             $count = 0;
-            foreach($obits as $column=>$data){
+            foreach($obits as $column=>$data ){
                 $count++;
                 $insert = array();
-                foreach($data as $key=>$value){
-                    if($key === 'last'){
+                foreach( $data as $key=>$value ){
+                    if( $key === 'last'){
                         $key = 'last_name';
                     }
-                    if($key === 'd_yr_range' || $key === 'b_yr_range'){
+                    if( $key === 'd_yr_range' || $key === 'b_yr_range' ){
                         $value = substr($value, 0, 4);
                     }
-                    if($key === 'courier_date'){
+                    if( $key === 'courier_date' ){
                         $key = 'newspaper_date';
                     }
-                    $insert[$key] = $value; 
+                    if( $key === 'obit_article' ){
+                        if ( !empty($value) ){
+                            $imageFullUrl = $img_src . $value;
+                 
+                            $fp = fopen( GLM_MEMBERS_PLUGIN_IMAGES_PATH . '/' . $value, 'w+' );
+                            $ch = curl_init( $imageFullUrl );
+                            curl_setopt($ch, CURLOPT_TIMEOUT, 50);
+                            curl_setopt($ch, CURLOPT_FILE, $fp);
+                            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
+                            $fileData = curl_exec($ch);
+                            $httpCode = curl_getinfo($ch);
+                            curl_close($ch);
+                            fclose($fp);
+                            // Set correct file permissions
+                            $oldUmask = umask(0);
+                            chmod( GLM_MEMBERS_PLUGIN_IMAGES_PATH_PATH . '/' . $value, 0660 );
+                            umask($oldUmask);
+                        }  
+                    }
+//                    $insert[$key] = $value; 
                 }
 //                echo '<pre>', print_r($insert), '</pre>';
 //                $wpdb->insert($table, $insert);
             }
-            echo $count;
+
 //            echo '<pre>', print_r($insert), '</pre>';
             
             $resultMessage =  "<pre>Start: $start</pre>";
index 0845e16..feedc16 100644 (file)
@@ -87,6 +87,11 @@ class GlmMembersFront_obits_search extends GlmDataObits
 
     public function modelAction($actionData = false)
     {
+        $paging         = true;
+        $prevStart      = false;
+        $nextStart      = false;
+        $start          = 1;
+        
         $this->table = GLM_MEMBERS_OBITS_PLUGIN_DB_PREFIX . 'obits';
         
         $view = 'search';
@@ -98,7 +103,13 @@ class GlmMembersFront_obits_search extends GlmDataObits
         $birth_death_range  = array('birth' => $year_ranges->getObitYearRange(BIRTH_YEAR_START), 'death' => $year_ranges->getObitYearRange(DEATH_YEAR_START));
         $logic_dropdown     = array('Contains' => 'LIKE' ,'Starts With' => 'LIKE%','Equals' => '=', 'More than' => '>', 'Less than' => '<');
         
-        $form_data = $_REQUEST;
+        $per_page   = isset( $_REQUEST['results-limit']) ? (int)filter_var( $_REQUEST['results-limit'], FILTER_SANITIZE_STRING) : 20;
+
+        $form_data = $_POST;
+        
+        if ( isset( $_REQUEST['alpha'] ) ){
+            $alpha_key = filter_var( $_REQUEST['alpha'], FILTER_SANITIZE_STRING );
+        }
         
         if( isset( $_REQUEST['conditions'] ) && $_REQUEST['conditions'][0] == 'any'){
             $clause = ' OR ';
@@ -108,7 +119,7 @@ class GlmMembersFront_obits_search extends GlmDataObits
 
         foreach($form_data as $key=>$value){
             if (isset($value) && $value !== ''){
-                if( $value !== 'Search' && $key !== 'conditions'){
+                if( $value !== 'Search' && $key !== 'conditions' && $key !== 'results-limit'){
                     if(strpos($key,'-logic') === false && strpos($key,'not-') === false  ) {
                         $value = filter_var($value, FILTER_SANITIZE_STRING);
                         $search_fields[$key] = $value; 
@@ -145,16 +156,79 @@ class GlmMembersFront_obits_search extends GlmDataObits
         }
 
         $search = implode($clause, $search_fields);
+  
+//        $sql = "SELECT * FROM $this->table" .
+//        ( empty($search) ? " ORDER BY last_name ASC LIMIT 100" : " WHERE $search ORDER BY last_name ASC LIMIT 100");
+
+        if( empty($search) && empty( $alpha_key) ){
+            $where = "";
+        } else if( !empty( $alpha_key ) ) {
+            $where = "last_name LIKE '$alpha_key%'";
+        } else {
+             $where = $search;
+        }
+
+        if (isset($_REQUEST['pageSelect'])) {
+
+            // If request is for Next
+            if ($_REQUEST['pageSelect'][0] == 'N') {
+                $newStart = $_REQUEST['nextStart'] - 0;
+
+            // Otherwise it must be Previous
+            } else {
+                $newStart = $_REQUEST['prevStart'] - 0;
+            }
+
+            if ($newStart > 0) {
+                $start = $newStart;
+            }
+        }
         
-        $sql = "SELECT * FROM $this->table LIMIT 10" .
-        (empty($search) ? "" : " WHERE $search");
-//        echo '<pre>', print_r($search_fields), '</pre>';
-        echo $sql;
+        $obits = $this->getList($where, 'last_name', $fieldVals = true, $idField = 'id', $start, $per_page);
+
+        // Get paging results
+        $numbDisplayed = $obits['returned'];
+        $lastDisplayed = $obits['last'];
+  
+        if ($start == 1) {
+            $prevStart = false;
+        } else {
+            $prevStart = $start - $per_page;
+            if ($start < 1) {
+                $start = 1;
+            }
+        }
+        if ($obits['returned'] == $per_page) {
+            $nextStart = $start + $per_page;
+        }
+//        print_r($obits['list']);
+        
+        $get_rows = "SELECT COUNT(*) FROM $this->table";
         
-        $obits = $this->wpdb->get_results($sql, 'ARRAY_A');
-//                echo '<pre>', print_r($obits), '</pre>';
+        $rows = $this->wpdb->get_results($get_rows, 'ARRAY_A');
+        
+        $total_records = $rows[0]['COUNT(*)'];
+        
+        $alphaList = false;
+        $alphaWhere = '';
+        if ($this->config['settings']['list_show_search_alpha']) {
+
+            $alphaSelected = false;
 
-        if( isset($_REQUEST['searchButton']) ){
+            // Check for alpha selected
+            if ($actionData['request']['alpha'] && strlen($actionData['request']['alpha']) == 1) {
+                $alphaSelected = strtoupper($actionData['request']['alpha']);
+                $alphaWhere .= " AND T.member_name LIKE '$alphaSelected%'";
+            }
+
+            // Get full list for all other filters, but not filtered by alpha (that would be silly)
+            $alphaList = $this->getAlphaList(' AND '.$where, $alphaSelected);
+
+        }
+//        print_r($alphaList);
+
+        if( isset($_REQUEST['searchButton']) || isset( $_REQUEST['pageSelect'] ) || isset($_REQUEST['alpha'] ) ){
             $view = 'searchResults';
         }
         
@@ -162,9 +236,21 @@ class GlmMembersFront_obits_search extends GlmDataObits
         $templateData = array(
             'birth_death_range' => $birth_death_range,
             'sql'               => $sql,
-            'obits'             => $obits,
+            'obits'             => $obits['list'],
             'logic'             => $logic_dropdown,
-            'clause'            => $clause
+            'pages'             => $pages,
+            'per_page'          => $per_page,
+            'numbDisplayed'     => $numbDisplayed,
+            'lastDisplayed'     => $lastDisplayed,
+            'paging'            => $paging,
+            'prevStart'         => $prevStart,
+            'nextStart'         => $nextStart,
+            'start'             => $start,
+            'limit'             => $per_page,
+            'total'             => $total_records,
+            'alphaList'         => $alphaList,
+            'alpha_key'         => $alpha_key
+
         );
              // Return status, any suggested view, and any data to controller
         return array(
index a454b38..c2b913f 100644 (file)
@@ -1,8 +1,21 @@
 <div class="search-container row">
     <div class="small-12 medium-10 small-centered columns">
         <form action="{$thisUrl}" method="post" enctype="multipart/form-data" name="obits-search" id="obits-search">
-           <input type="radio" checked value="all" name="conditions[]">All Conditions
-           <input type="radio" value="any" name="conditions[]">Any Condition
+            
+           <div class="results-limit-container">
+                <input type="radio" checked value="all" name="conditions[]">All Conditions
+                <input type="radio" value="any" name="conditions[]">Any Condition
+
+                <label class="search-results-label" for="results-limit">Results per page</label>
+                <select id="results-limit" class="results-limit" name="results-limit">
+                    <option value="10">10</option>
+                    <option value="20">20</option>
+                    <option value="30">30</option>
+                    <option value="50">50</option>
+                    <option value="100">100</option>
+                    <option value="500">500</option>
+                </select>
+           </div>
 
             <div class="row search-row">
                 <div class="small-12 medium-4 large-3 columns search-label"> 
             <input id="input" class="search-button" name="searchButton" value="Search" type="submit">
         </form>
     </div>
-</div>
\ No newline at end of file
+</div>
+<script>
+    jQuery(document).ready(function($) {
+        var results_limit = {$limit};
+        
+        $('#results-limit').val(results_limit);
+    });
+</script>
\ No newline at end of file
index 98ed53f..9e7d7a1 100644 (file)
 <div class="row">
-    <div class="small-12 large-9 columns results-container">
-       <table class="footable">
-         <thead>
-              <tr>
-                <th>Birth Year Range</th>
-                <th>Death Year Range</th> 
-                <th>Last Name</th>
-                <th>First Name</th>
-                <th>Birth Year</th>
-                <th>Death Year</th>
-                <th>Spouse</th>
-                <th>Maiden Name</th>
-              </tr>
-          </thead>
-            {foreach from=$obits item=i}
-                <tr>
-                    <td>{$i.b_yr_range}</td>
-                    <td>{$i.d_yr_range}</td> 
-                    <td>{$i.last_name}</td>
-                    <td>{$i.first_mid}</td>
-                    <td>{$i.b_year}</td>
-                    <td>{$i.d_year}</td>
-                    <td>{$i.spouse_partner}</td>
-                    <td>{$i.maiden_other}</td>
-                </tr>
-            {/foreach}
-        </table>
-    </div>
-    <div class="small-12 medium-6 large-3 columns small-centered large-uncentered search-sidebar-container">
-        <div class="search-sidebar">
-<!--            {include file='front/obits/search.html'}-->
-            <div class="search-container sidebar-container row">
-                <div class="small-12 columns">
-                    <form action="{$thisUrl}" method="post" enctype="multipart/form-data" name="obits-search" id="obits-search">
-                       <input class="sidebar-criteria" type="radio" checked value="all" name="conditions[]">All 
-                       <input class="sidebar-criteria" type="radio" value="any" name="conditions[]">Any 
-                       <a href="#" class="expand-collapse"> Expand Options </a>
-
-                       
-                        <div class="row search-row">
-                            <div class="small-12 columns search-label"> 
-                                Last Name: 
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-last">Not</label>
-                                   <input type="checkbox" value="not" id="not-last" name="not-last_name">
-                                </div>
-                      
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="last_name-logic" id="last_name-logic">
-                                        {foreach from=$logic key=k item=i}
-                                            <option value="{$i}">{$k}</option>
-                                        {/foreach}
-                                    </select>
-                                </div>
-                            </div>
-                            <div class="small-12 columns">
-                                <input type="text" name="last_name" placeholder="Last Name">
-                            </div>
-                        </div>
+        <form action="{$thisUrl}" method="post" enctype="multipart/form-data" name="obits-search" id="obits-search">
+            <div class="small-12 large-9 columns results-container">
+                <div class="glm-alpha-links">
+                    {foreach $alphaList as $a}
+                        <a href="{$thisUrl}?alpha={$a.alpha}&pageSelect=Previous&prevStart={$prevStart}&nextStart={$nextStart}&results-limit={$limit}" class="glm-alpha-link{if $a.default} glm-alpha-link-selected{/if}">{$a.alpha}</a>
+                    {/foreach}
+                </div>
+                {if $paging}
+                    <br>
+                    <a href="{$thisUrl}?pageSelect=Previous&prevStart={$prevStart}&nextStart={$nextStart}&results-limit={$limit}{if $alpha_key}&alpha={$alpha_key}{/if}" class="glm-alpha-link obits-link" {if !$prevStart} style="pointer-events: none; opacity: 0.5;"{/if}>Previous page</a>
+                    <a href="{$thisUrl}?pageSelect=Next&prevStart={$prevStart}&nextStart={$nextStart}&results-limit={$limit}{if $alpha_key}&alpha={$alpha_key}{/if}" class="glm-alpha-link obits-link" {if !$nextStart} style="pointer-events: none; opacity: 0.5;"{/if}>Next page</a>
+                    <br>
+                    showing {$start} through {$lastDisplayed} of {$total}
+                {/if}
+                <label class="search-results-label" for="results-limit">Results per page</label>
+                <select id="results-limit" class="results-limit" name="results-limit">
+                    <option value="10">10</option>
+                    <option value="20">20</option>
+                    <option value="30">30</option>
+                    <option value="50">50</option>
+                    <option value="100">100</option>
+                    <option value="500">500</option>
+                </select>
+               <table class="footable results-table" data-paging="false">
+                 <thead>
+                      <tr>
+                        <th>Birth Year Range</th>
+                        <th>Death Year Range</th> 
+                        <th>Last Name</th>
+                        <th>First Name</th>
+                        <th>Birth Year</th>
+                        <th>Death Year</th>
+                        <th>Spouse</th>
+                        <th>Maiden Name</th>
+                      </tr>
+                  </thead>
+                    {foreach from=$obits item=i}
+                        <tr>
+                            <td>{$i.b_yr_range}</td>
+                            <td>{$i.d_yr_range}</td> 
+                            <td>{$i.last_name}</td>
+                            <td>{$i.first_mid}</td>
+                            <td>{$i.b_year}</td>
+                            <td>{$i.d_year}</td>
+                            <td>{$i.spouse_partner}</td>
+                            <td>{$i.maiden_other}</td>
+                        </tr>
+                    {/foreach}
+                </table>
+            </div>
+            <div class="small-12 medium-6 large-3 columns small-centered large-uncentered search-sidebar-container">
+                <div class="search-sidebar">
+        <!--            {include file='front/obits/search.html'}-->
+                    <div class="search-container sidebar-container row">
+                        <div class="small-12 columns">
+                            <form action="{$thisUrl}" method="post" enctype="multipart/form-data" name="obits-search" id="obits-search">
+                               <input class="sidebar-criteria" type="radio" checked value="all" name="conditions[]">All 
+                               <input class="sidebar-criteria" type="radio" value="any" name="conditions[]">Any 
+                               <a href="#" class="expand-collapse"> Expand Options </a>
 
 
-                        <div class="row search-row">
-                            <div class="small-12 columns search-label"> 
-                                First Name &amp; Middle: 
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-first_mid">Not</label>
-                                   <input type="checkbox" value="not" id="not-first_mid" name="not-first_mid">
-                                </div>
-                         
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="first_mid-logic" id="first_mid-logic">
-                                        {foreach from=$logic key=k item=i}
-                                            <option value="{$i}">{$k}</option>
-                                        {/foreach}
-                                    </select>
+                                <div class="row search-row">
+                                    <div class="small-12 columns search-label"> 
+                                        Last Name: 
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-last">Not</label>
+                                           <input type="checkbox" value="not" id="not-last" name="not-last_name">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="last_name-logic" id="last_name-logic">
+                                                {foreach from=$logic key=k item=i}
+                                                    <option value="{$i}">{$k}</option>
+                                                {/foreach}
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="small-12 columns">
+                                        <input type="text" name="last_name" placeholder="Last Name">
+                                    </div>
                                 </div>
-                           </div>     
-                           <div class="small-12 columns">
-                               <input type="text" name="first_mid" placeholder="First - Middle Name">
-                            </div>
-                        </div>
 
 
-                        <div class="row search-row">
-                            <div class="small-12 columns search-label"> 
-                                Birth Year: 
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-b_year">Not</label>
-                                   <input type="checkbox" value="not" id="not-b_year" name="not-b_year">
-                                </div>
-                    
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="b_year-logic" id="b_year-logic">
-                                        {foreach from=$logic key=k item=i}
-                                           <option value="{$i}">{$k}</option>
-                                        {/foreach}
-                                    </select>
+                                <div class="row search-row">
+                                    <div class="small-12 columns search-label"> 
+                                        First Name &amp; Middle: 
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-first_mid">Not</label>
+                                           <input type="checkbox" value="not" id="not-first_mid" name="not-first_mid">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="first_mid-logic" id="first_mid-logic">
+                                                {foreach from=$logic key=k item=i}
+                                                    <option value="{$i}">{$k}</option>
+                                                {/foreach}
+                                            </select>
+                                        </div>
+                                   </div>     
+                                   <div class="small-12 columns">
+                                       <input type="text" name="first_mid" placeholder="First - Middle Name">
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="small-12 columns">
-                                <input type="text" name="b_year" placeholder="Year of Birth">
-                            </div>
-                        </div>
 
 
-                        <div class="row search-row">
-                              <div class="small-12 columns search-label"> 
-                                Birth Year Range:
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-b_yr_range">Not</label>
-                                   <input type="checkbox" value="not" id="not-b_yr_range" name="not-b_yr_range">
-                                </div>
-                      
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="b_yr_range-logic" id="b_yr_range-logic">
-                                         <option value="=">Equals</option>
-                                    </select>
+                                <div class="row search-row">
+                                    <div class="small-12 columns search-label"> 
+                                        Birth Year: 
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-b_year">Not</label>
+                                           <input type="checkbox" value="not" id="not-b_year" name="not-b_year">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="b_year-logic" id="b_year-logic">
+                                                {foreach from=$logic key=k item=i}
+                                                   <option value="{$i}">{$k}</option>
+                                                {/foreach}
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="small-12 columns">
+                                        <input type="text" name="b_year" placeholder="Year of Birth">
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="small-12 columns">
-                               <select name="b_yr_range" id="">
-                               <option value="">Select a date range</option>
-                                {foreach from=$birth_death_range.birth item=r}
-                                   <option value="{$r.start}">{$r.start} - {$r.end}</option>
-                                {/foreach}
-                                </select>
-                            </div>
-                        </div>
 
 
-                        <div class="row search-row">
-                            <div class="small-12 columns search-label"> 
-                                Death Year: 
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-death">Not</label>
-                                   <input type="checkbox" value="not" id="not-death" name="not-d_year">
-                                </div>
-                          
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="d_year-logic" id="d_year-logic">
-                                        {foreach from=$logic key=k item=i}
-                                            <option value="{$i}">{$k}</option>
+                                <div class="row search-row">
+                                      <div class="small-12 columns search-label"> 
+                                        Birth Year Range:
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-b_yr_range">Not</label>
+                                           <input type="checkbox" value="not" id="not-b_yr_range" name="not-b_yr_range">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="b_yr_range-logic" id="b_yr_range-logic">
+                                                 <option value="=">Equals</option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="small-12 columns">
+                                       <select name="b_yr_range" id="">
+                                       <option value="">Select a date range</option>
+                                        {foreach from=$birth_death_range.birth item=r}
+                                           <option value="{$r.start}">{$r.start} - {$r.end}</option>
                                         {/foreach}
-                                    </select>
+                                        </select>
+                                    </div>
                                 </div>
-                            </div>    
-                           <div class="small-12 columns">
-                                <input type="text" name="d_year" placeholder="Year of Death">
-                            </div>
-                        </div>
 
 
-                        <div class="row search-row">
-                              <div class="small-12 columns search-label"> 
-                               Death Year Range: 
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-d_yr_range">Not</label>
-                                   <input type="checkbox" value="not" id="not-d_yr_range" name="not-d_yr_range">
-                                </div>
-                 
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="d_yr_range-logic" id="d_yr_range-logic">
-                                        <option value="=">Equals</option>
-                                    </select>
+                                <div class="row search-row">
+                                    <div class="small-12 columns search-label"> 
+                                        Death Year: 
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-death">Not</label>
+                                           <input type="checkbox" value="not" id="not-death" name="not-d_year">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="d_year-logic" id="d_year-logic">
+                                                {foreach from=$logic key=k item=i}
+                                                    <option value="{$i}">{$k}</option>
+                                                {/foreach}
+                                            </select>
+                                        </div>
+                                    </div>    
+                                   <div class="small-12 columns">
+                                        <input type="text" name="d_year" placeholder="Year of Death">
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="small-12 columns">
-                                <select name="d_yr_range" id="d_yr_range-range">
-                                <option value="">Select a date range</option>
-                                {foreach from=$birth_death_range.death item=r}
-                                   <option value="{$r.start}">{$r.start} - {$r.end}</option>
-                                {/foreach}
-                                </select>
-                            </div>
-                        </div>
 
 
-                        <div class="row search-row">
-                             <div class="small-12 columns search-label"> 
-                                Maiden or Other Name:
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-maiden_other">Not</label>
-                                   <input type="checkbox" value="not" id="not-maiden" name="not-maiden_other">
-                                </div>
-                          
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="maiden_other-logic" id="maiden_other-logic">
-                                        {foreach from=$logic key=k item=i}
-                                            <option value="{$i}">{$k}</option>
+                                <div class="row search-row">
+                                      <div class="small-12 columns search-label"> 
+                                       Death Year Range: 
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-d_yr_range">Not</label>
+                                           <input type="checkbox" value="not" id="not-d_yr_range" name="not-d_yr_range">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="d_yr_range-logic" id="d_yr_range-logic">
+                                                <option value="=">Equals</option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="small-12 columns">
+                                        <select name="d_yr_range" id="d_yr_range-range">
+                                        <option value="">Select a date range</option>
+                                        {foreach from=$birth_death_range.death item=r}
+                                           <option value="{$r.start}">{$r.start} - {$r.end}</option>
                                         {/foreach}
-                                    </select>
+                                        </select>
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="small-12 columns">
-                                <input type="text" name="maiden_other" placeholder="Maiden or Other">
-                            </div>
-                        </div>
 
 
-                        <div class="row search-row">
-                             <div class="small-12 columns search-label"> 
-                                Spouse / Partner Name: 
-                            </div>
-                            <div class="options-wrapper">
-                                <div class="small-3 large-3 columns">
-                                   <label for="not-spouse_partner">Not</label>
-                                   <input type="checkbox" value="not" value="not" id="not-spouse" name="not-spouse_partner">
+                                <div class="row search-row">
+                                     <div class="small-12 columns search-label"> 
+                                        Maiden or Other Name:
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-maiden_other">Not</label>
+                                           <input type="checkbox" value="not" id="not-maiden" name="not-maiden_other">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="maiden_other-logic" id="maiden_other-logic">
+                                                {foreach from=$logic key=k item=i}
+                                                    <option value="{$i}">{$k}</option>
+                                                {/foreach}
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="small-12 columns">
+                                        <input type="text" name="maiden_other" placeholder="Maiden or Other">
+                                    </div>
                                 </div>
-                            
-                                <div class="small-4 medium-3 large-6 columns">
-                                    <select name="spouse_partner-logic" id="spouse_partner-logic">
-                                        {foreach from=$logic key=k item=i}
-                                            <option value="{$i}">{$k}</option>
-                                        {/foreach}
-                                    </select>
+
+
+                                <div class="row search-row">
+                                     <div class="small-12 columns search-label"> 
+                                        Spouse / Partner Name: 
+                                    </div>
+                                    <div class="options-wrapper">
+                                        <div class="small-3 large-3 columns">
+                                           <label for="not-spouse_partner">Not</label>
+                                           <input type="checkbox" value="not" value="not" id="not-spouse" name="not-spouse_partner">
+                                        </div>
+
+                                        <div class="small-4 medium-3 large-6 columns">
+                                            <select name="spouse_partner-logic" id="spouse_partner-logic">
+                                                {foreach from=$logic key=k item=i}
+                                                    <option value="{$i}">{$k}</option>
+                                                {/foreach}
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="small-12 columns">
+                                        <input type="text" name="spouse_partner" placeholder="Spouse or Partner">
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="small-12 columns">
-                                <input type="text" name="spouse_partner" placeholder="Spouse or Partner">
-                            </div>
+                                <input id="input" class="search-button" name="searchButton" value="Search" type="submit">
                         </div>
-
-                        <input id="input" class="search-button" name="searchButton" value="Search" type="submit">
-                    </form>
+                    </div>
                 </div>
             </div>
-        </div>
-    </div>
-</div>
\ No newline at end of file
+        </form>
+</div>
+<script type="text/javascript">
+    jQuery(document).ready(function($) {
+        var results_limit = {$limit};
+        
+        $('#results-limit').val(results_limit);
+    });
+</script>
\ No newline at end of file