Bläddra i källkod

Gets search working again and adds a few customizations

Caleb Fangmeier 5 år sedan
förälder
incheckning
a6253e37ce

BIN
static/tipuesearch/img/loader.gif


BIN
static/tipuesearch/img/search.png


+ 312 - 83
static/tipuesearch/tipuesearch.css

@@ -1,134 +1,363 @@
+@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400|Source+Code+Pro');
+
+
 /*
-Tipue Search 3.1
-Copyright (c) 2013 Tipue
+Tipue Search 7.0
+Copyright (c) 2018 Tipue
 Tipue Search is released under the MIT License
 http://www.tipue.com/search
 */
-#tipue_search_content
+
+
+/* basics */
+
+
+.tipue_search_group:after
 {
-    clear: left;
-    margin: 0;
-    max-width: 650px;
-    padding: 25px 0 13px 0;
+     content: "";
+     display: table;
+     clear: both;
 }
-#tipue_search_loading
+
+
+/* fonts, colors */
+
+
+#tipue_search_input
 {
-    background: #fff url('img/loader.gif') no-repeat left;
-    padding-top: 60px;
+     font: 15px/1 'Open Sans', sans-serif;
+     color: #333;     
+     -webkit-font-smoothing: antialiased;
+	-moz-osx-font-smoothing: grayscale;
 }
-#tipue_search_warning
+.tipue_search_icon
+{
+     font: 300 24px/1 'Open Sans', sans-serif;
+     color: #777;   
+}
+#tipue_search_results_count, .tipue_search_related, .tipue_search_note
+{
+     font: 12px/1.3 'Source Code Pro', monospace;
+	text-transform: uppercase;
+	color: #999;
+     -webkit-font-smoothing: antialiased;
+	-moz-osx-font-smoothing: grayscale;
+}
+#tipue_search_replace, #tipue_search_error, .tipue_search_content_text
 {
-    color: #333;
-    font: 12px/1.6 'Helvetica Neue', Helvetica, 'Gill Sans', 'Gill Sans MT', Calibri, Arial, Sans-Serif;
-    margin: 7px 0;
+     font: 300 16px/1.6 'Open Sans', sans-serif;
+	color: #666; 
 }
-#tipue_search_warning a
+#tipue_search_replace a
 {
-    color: #3f72d8;
-    text-decoration: none;
+     color: #339e41;
+     text-decoration: none;
 }
-#tipue_search_warning a:hover
+#tipue_search_replace a:hover
 {
-    border-bottom: 1px solid #ccc;
-    padding-bottom: 1px;
+     color: #666;  
 }
-#tipue_search_results_count, #tipue_search_warning_head
+.tipue_search_related_btn
 {
-    border-bottom: 1px solid rgb(143, 134, 134);
-    color: darkred;
-    font-family: Baskerville, Garamond, Georgia, "DejaVu Serif", "Times New Roman", Times, Serif;
-    font-size: 3em;
-    font-weight: normal;
-    margin: 20px 0 20px 0;
-    padding: 5px 5px 15px 5px;
+     font: 11px/1 'Source Code Pro', monospace;
+	color: #666;
+	text-transform: uppercase;
+	letter-spacing: 1px;
+	background-color: #f7f7f7;
 }
 .tipue_search_content_title
 {
-    font: 300 23px/1.6 'Helvetica Neue', Helvetica, 'Gill Sans', 'Gill Sans MT', Calibri, Arial, Sans-Serif;
-    margin-top: 20px;
+     font: 300 30px/1.2 'Open Sans', sans-serif;
+     color: #333;
+     -webkit-font-smoothing: antialiased;
+	-moz-osx-font-smoothing: grayscale;
 }
 .tipue_search_content_title a
 {
-    color: #3f72d8;
-    text-decoration: none;
+     color: #333;
+     text-decoration: none;
+}
+.tipue_search_content_url, .tipue_search_content_debug
+{
+     font: 300 15px/1.7 'Open Sans', sans-serif;
+     color: #333;
+}
+.tipue_search_content_url a
+{
+     color: #339e41;
+     text-decoration: none;
+}
+.tipue_search_content_url a:hover
+{
+     color: #666;
+}
+.tipue_search_content_bold
+{
+     font-weight: 400;
+     color: #333;
+}
+.tipue_search_note a
+{
+     color: #999;
+     text-decoration: none;
 }
-.tipue_search_content_title a:hover
+.tipue_search_image_close
 {
-    border-bottom: 1px solid #ccc;
-    padding-bottom: 1px;
+     font: 22px/1 'Source Code Pro', monospace;
+	color: #ccc;     
+}
+#tipue_search_zoom_text
+{
+     font: 11px/1.7 'Source Code Pro', monospace;
+	color: #ccc;
+	text-transform: uppercase;
+	letter-spacing: 1px;
+}
+#tipue_search_zoom_text a
+{
+     color: #ccc;
+     text-decoration: none;
+     border-bottom: 2px solid #f7f7f7;
+}
+#tipue_search_zoom_text a:hover
+{
+     border: 0;
+}
+#tipue_search_foot_boxes
+{
+     font: 13px/1 'Source Code Pro', sans-serif;
+	text-transform: uppercase;
+	color: #333;     
+}
+#tipue_search_foot_boxes li a
+{
+     background-color: #f7f7f7;
+	color: #666;
+}
+#tipue_search_foot_boxes li.current
+{
+     background: #252525;
+	color: #ccc;
+}
+#tipue_search_foot_boxes li a:hover, .tipue_search_related_btn:hover
+{
+     background: #252525;
+     color: #ccc;
+}
+
+
+/* search box */
+
+
+#tipue_search_input
+{
+     float: left;
+     width: 200px;
+     background-color: #f3f3f3;
+     border: none;
+     padding: 9px 6px 10px 15px;
+     height: 56px;
+     border-radius: 3px;
+	-moz-appearance: none;
+	-webkit-appearance: none;
+	box-sizing: border-box;
+     box-shadow: none;
+	outline: 0;
+	margin: 0;
+}
+.tipue_search_button
+{
+     position: relative;
+     float: left;
+     width: 47px;
+     height: 56px;
+     margin-left: -3px;
+     background-color: #f3f3f3;
+     border: none;
+     border-radius: 3px;
+     box-sizing: border-box;
+     cursor: pointer;
+	outline: 0;
+}
+.tipue_search_icon
+{
+     float: left;
+     transform: rotate(-45deg);
+	-moz-appearance: none;
+	-webkit-appearance: none;
+	box-sizing: border-box;
+     box-shadow: none;
+	outline: 0;	
+	margin: -1px 0 0 8px;
+}
+
+
+/* search results */
+
+
+#tipue_search_content
+{
+     max-width: 100%;
+	margin: 0;
+}
+.tipue_search_result
+{
+     padding-top: 21px;
+}
+#tipue_search_results_count
+{
+     padding-top: 9px;
+}
+.tipue_search_related
+{
+     padding-top: 13px;
+}
+.tipue_search_related_block
+{
+     padding-bottom: 6px;
+}
+#tipue_search_warning
+{
+	padding-top: 10px;
+}
+.tipue_search_related_btn
+{
+     display: inline-block;
+     padding: 9px 10px;
+     text-decoration: none;
+     text-align: center;
+     border-radius: 3px;
+     margin: 9px 9px 0 0;
+     outline: 0;
+     transition: 0.2s; 
+     cursor: pointer;
+}
+#tipue_search_replace
+{
+     padding-top: 13px;
+}
+#tipue_search_error
+{
+     padding-top: 13px;
+}
+.tipue_search_content_url
+{
+     padding-top: 3px;
+     word-wrap: break-word;
+     hyphens: auto;
 }
 .tipue_search_content_text
 {
-    color: #333;
-    font-family: Scala, Georgia, "DejaVu Serif", "Times New Roman", Times, Serif;
-    font-size: 1em;
-    font-variant: normal;
-    line-height: 1.6em;
-    padding: 13px 0;
-    text-transform: none;
+     word-wrap: break-word;
+     hyphens: auto;
+     margin-top: 1px;
+}
+.tipue_search_note
+{
+     padding-top: 5px;
 }
+.tipue_search_content_debug
+{
+     margin: 5px 0;
+}
+
+
+/* images */
 
-.tipue_search_content_text b {
-    color: #EF1D1D;
-    font-family: Garamond;
-    font-size: 1.3em;
+
+.tipue_search_image
+{
+     padding: 9px 0 6px 0;
+}
+.tipue_search_img
+{
+     width: 200px;
+     max-width: 100%;
+     height: auto;
+     transition: 0.5s;
+     border-radius: 1px;
+}
+.tipue_search_img:hover
+{
+     opacity: 0.7;
 }
-.tipue_search_content_loc
+.tipue_search_image_zoom
 {
-    font: 300 13px/1.7 'Helvetica Neue', Helvetica, 'Gill Sans', 'Gill Sans MT', Calibri, Arial, Sans-Serif;
-    overflow: auto;
+     cursor: pointer;     
 }
-.tipue_search_content_loc a
+#tipue_search_image_modal
 {
-    color: #555;
-    text-decoration: none;
+     display: none;
+     position: fixed;
+     z-index: 1000;
+     left: 0;
+     top: 0;
+     width: 100%;
+     height: 100%;
+     overflow: auto;
+     background-color: rgba(0, 0, 0, 0.9);
 }
-.tipue_search_content_loc a:hover
+.tipue_search_image_close
 {
-    border-bottom: 1px solid #ccc;
-    padding-bottom: 1px;
+     position: absolute;
+     top: 0;
+     right: 0;
+     padding: 25px 30px;
+     cursor: pointer;
 }
+.tipue_search_image_block
+{
+     margin: 0 auto;
+     max-width: 900px;
+     padding: 73px 30px 30px 30px;
+     box-sizing: border-box;
+     color: #fff;
+}
+#tipue_search_zoom_img
+{
+     max-width: 100%;
+     height: auto;
+}
+#tipue_search_zoom_text, .tipue_search_zoom_options
+{
+     padding-top: 9px;
+}
+
+
+/* footer */
+
+
 #tipue_search_foot
 {
-    margin: 51px 0 21px 0;
+     margin: 51px 0 21px 0;
 }
 #tipue_search_foot_boxes
 {
-    font: 12px/1 'Helvetica Neue', Helvetica, 'Gill Sans', 'Gill Sans MT', Calibri, Arial, Sans-Serif;
-    margin: 0;
-    padding: 0;
+	padding: 0;
+	margin: 0;
+	cursor: pointer;
 }
 #tipue_search_foot_boxes li
 {
-    display: inline;
-    list-style: none;
-    margin: 0;
-    padding: 0;
+     display: inline;
+	list-style: none;
+	margin: 0;
+	padding: 0;
 }
 #tipue_search_foot_boxes li a
 {
-    background-color: #f1f1f1;
-    border-radius: 1px;
-    border: 1px solid #dcdcdc;
-    color: #333;
-    margin-right: 7px;
-    padding: 7px 13px 8px 13px;
-    text-align: center;
-    text-decoration: none;
+	padding: 10px 17px 11px 17px;
+     border-radius: 3px;
+	margin-right: 7px;
+	text-decoration: none;
+	text-align: center;
+	transition: 0.2s;
 }
 #tipue_search_foot_boxes li.current
 {
-    background: #fff;
-    border-radius: 1px;
-    border: 1px solid #dcdcdc;
-    color: #333;
-    margin-right: 7px;
-    padding: 7px 13px 8px 13px;
-    text-align: center;
-}
-#tipue_search_foot_boxes li a:hover
-{
-    background-color: #f3f3f3;
-    border: 1px solid #ccc;
+	padding: 10px 17px 11px 17px;
+     border-radius: 3px;
+	margin-right: 7px;
+	text-align: center;
 }
 

+ 418 - 193
static/tipuesearch/tipuesearch.js

@@ -1,10 +1,10 @@
 
 /*
-Tipue Search 3.1
-Copyright (c) 2013 Tipue
+Tipue Search 7.0
+Copyright (c) 2018 Tipue
 Tipue Search is released under the MIT License
 http://www.tipue.com/search
-*/ 
+*/
 
 
 (function($) {
@@ -13,77 +13,28 @@ http://www.tipue.com/search
 
           var set = $.extend( {
           
-               'show'                   : 7,
-               'newWindow'              : false,
-               'showURL'                : true,
-               'minimumLength'          : 3,
-               'descriptiveWords'       : 25,
-               'highlightTerms'         : true,
-               'highlightEveryTerm'     : false,
-               'mode'                   : 'static',
-               'liveDescription'        : '*',
-               'liveContent'            : '*',
-               'contentLocation'        : 'tipuesearch/tipuesearch_content.json'
-          
+          'contextBuffer'          : 60,
+          'contextLength'          : 60,
+          'contextStart'           : 90,
+          'debug'                  : false,
+          'descriptiveWords'       : 25,
+          'footerPages'            : 3,
+          'highlightTerms'         : true,
+          'imageZoom'              : true,
+          'minimumLength'          : 3,
+          'newWindow'              : false,
+          'show'                   : 10,
+          'showContext'            : true,
+          'showRelated'            : true,
+          'showTime'               : true,
+          'showTitleCount'         : true,
+          'showURL'                : true,
+          'wholeWords'             : true
           }, options);
           
           return this.each(function() {
-
-               var tipuesearch_in = {
-                    pages: []
-               };
-               $.ajaxSetup({
-                    async: false
-               });
-
-               if (set.mode == 'live')
-               {
-                    for (var i = 0; i < tipuesearch_pages.length; i++)
-                    {
-                         $.get(tipuesearch_pages[i], '',
-                              function (html)
-                              {
-                                   var cont = $(set.liveContent, html).text();
-                                   cont = cont.replace(/\s+/g, ' ');
-                                   var desc = $(set.liveDescription, html).text();
-                                   desc = desc.replace(/\s+/g, ' ');
-                                                                      
-                                   var t_1 = html.toLowerCase().indexOf('<title>');
-                                   var t_2 = html.toLowerCase().indexOf('</title>', t_1 + 7);
-                                   if (t_1 != -1 && t_2 != -1)
-                                   {
-                                        var tit = html.slice(t_1 + 7, t_2);
-                                   }
-                                   else
-                                   {
-                                        var tit = 'No title';
-                                   }
-
-                                   tipuesearch_in.pages.push({
-                                        "title": tit,
-                                        "text": desc,
-                                        "tags": cont,
-                                        "loc": tipuesearch_pages[i] 
-                                   });    
-                              }
-                         );
-                    }
-               }
                
-               if (set.mode == 'json')
-               {
-                    $.getJSON(set.contentLocation,
-                         function(json)
-                         {
-                              tipuesearch_in = $.extend({}, json);
-                         }
-                    );
-               }
-
-               if (set.mode == 'static')
-               {
-                    tipuesearch_in = $.extend({}, tipuesearch);
-               }                              
+               var tipuesearch_t_c = 0;                         
                
                var tipue_search_w = '';
                if (set.newWindow)
@@ -93,18 +44,26 @@ http://www.tipue.com/search
 
                function getURLP(name)
                {
-                    return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20')) || null;
+                    var locSearch = location.search;
+                    var splitted = (new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(locSearch)||[,""]);
+                    var searchString = splitted[1].replace(/\+/g, '%20');
+                    try
+                    {
+                         searchString = decodeURIComponent(searchString);
+                    }
+                    catch(e)
+                    {
+                         searchString = unescape(searchString);
+                    }
+                    return searchString || null;
                }
+               
                if (getURLP('q'))
                {
                     $('#tipue_search_input').val(getURLP('q'));
                     getTipueSearch(0, true);
                }               
-                             
-               $('#tipue_search_button').click(function()
-               {
-                    getTipueSearch(0, true);
-               });
+               
                $(this).keyup(function(event)
                {
                     if(event.keyCode == '13')
@@ -112,256 +71,526 @@ http://www.tipue.com/search
                          getTipueSearch(0, true);
                     }
                });
+               
 
                function getTipueSearch(start, replace)
                {
-                    $('#tipue_search_content').hide();
+                    window.scrollTo(0, 0);
+                    
                     var out = '';
-                    var results = '';
                     var show_replace = false;
                     var show_stop = false;
+                    var standard = true;
+                    var c = 0;
+                    var found = [];
+                    
+                    var d_o = $('#tipue_search_input').val();
+                    d_o = d_o.replace(/\+/g, ' ').replace(/\s\s+/g, ' ');
+ 
+                    d_o = $.trim(d_o);
+                    var d = d_o.toLowerCase();
+                    
+                    if ((d.match("^\"") && d.match("\"$")) || (d.match("^'") && d.match("'$")))
+                    {
+                         standard = false;
+                    }
                     
-                    var d = $('#tipue_search_input').val().toLowerCase();
-                    d = $.trim(d);
                     var d_w = d.split(' ');
-                    d = '';
-                    for (var i = 0; i < d_w.length; i++)
+                    
+                    if (standard)
                     {
-                         var a_w = true;
-                         for (var f = 0; f < tipuesearch_stop_words.length; f++)
+                         d = '';
+                         for (var i = 0; i < d_w.length; i++)
                          {
-                              if (d_w[i] == tipuesearch_stop_words[f])
+                              var a_w = true;
+                              for (var f = 0; f < tipuesearch_stop_words.length; f++)
                               {
-                                   a_w = false;
-                                   show_stop = true;          
+                                   if (d_w[i] == tipuesearch_stop_words[f])
+                                   {
+                                        a_w = false;
+                                        show_stop = true;          
+                                   }
+                              }
+                              if (a_w)
+                              {
+                                   d = d + ' ' + d_w[i];
                               }
                          }
-                         if (a_w)
-                         {
-                              d = d + ' ' + d_w[i];
-                         }
+                         d = $.trim(d);
+                         d_w = d.split(' ');
                     }
-                    d = $.trim(d);
-                    d_w = d.split(' ');
-                    
+                    else
+                    {
+                         d = d.substring(1, d.length - 1);
+                    }
+               
                     if (d.length >= set.minimumLength)
                     {
-                         if (replace)
+                         if (standard)
                          {
-                              var d_r = d;
+                              if (replace)
+                              {
+                                   var d_r = d;
+                                   for (var i = 0; i < d_w.length; i++)
+                                   {
+                                        for (var f = 0; f < tipuesearch_replace.words.length; f++)
+                                        {
+                                             if (d_w[i] == tipuesearch_replace.words[f].word)
+                                             {
+                                                  d = d.replace(d_w[i], tipuesearch_replace.words[f].replace_with);
+                                                  show_replace = true;
+                                             }
+                                        }
+                                   }
+                                   d_w = d.split(' ');
+                              }                   
+                    
+                              var d_t = d;
                               for (var i = 0; i < d_w.length; i++)
                               {
-                                   for (var f = 0; f < tipuesearch_replace.words.length; f++)
+                                   for (var f = 0; f < tipuesearch_stem.words.length; f++)
                                    {
-                                        if (d_w[i] == tipuesearch_replace.words[f].word)
+                                        if (d_w[i] == tipuesearch_stem.words[f].word)
                                         {
-                                             d = d.replace(d_w[i], tipuesearch_replace.words[f].replace_with);
-                                             show_replace = true;
+                                             d_t = d_t + ' ' + tipuesearch_stem.words[f].stem;
                                         }
                                    }
                               }
-                              d_w = d.split(' ');
-                         }                   
-                         
-                         var d_t = d;
-                         for (var i = 0; i < d_w.length; i++)
-                         {
-                              for (var f = 0; f < tipuesearch_stem.words.length; f++)
+                              d_w = d_t.split(' ');
+
+                              for (var i = 0; i < tipuesearch.pages.length; i++)
                               {
-                                   if (d_w[i] == tipuesearch_stem.words[f].word)
+                                   var score = 0;
+                                   var s_t = tipuesearch.pages[i].text;
+                                   for (var f = 0; f < d_w.length; f++)
+                                   {
+                                        if (set.wholeWords)
+                                        {
+                                             var pat = new RegExp('\\b' + d_w[f] + '\\b', 'gi');
+                                        }
+                                        else
+                                        {
+                                             var pat = new RegExp(d_w[f], 'gi');
+                                        }
+                                        if (tipuesearch.pages[i].title.search(pat) != -1)
+                                        {
+                                             var m_c = tipuesearch.pages[i].title.match(pat).length;
+                                             score += (20 * m_c);
+                                        }
+                                        if (tipuesearch.pages[i].text.search(pat) != -1)
+                                        {
+                                             var m_c = tipuesearch.pages[i].text.match(pat).length;
+                                             score += (20 * m_c);
+                                        }
+                                        if (tipuesearch.pages[i].tags)
+                                        {
+                                             if (tipuesearch.pages[i].tags.search(pat) != -1)
+                                             {
+                                                  var m_c = tipuesearch.pages[i].tags.match(pat).length;
+                                                  score += (10 * m_c);
+                                             }
+                                        }
+                                        if (tipuesearch.pages[i].url.search(pat) != -1)
+                                        {
+                                             score += 20;
+                                        }
+                                        
+                                        if (score != 0)
+                                        {
+                                             for (var e = 0; e < tipuesearch_weight.weight.length; e++)
+                                             {
+                                                  if (tipuesearch.pages[i].url == tipuesearch_weight.weight[e].url)
+                                                  {
+                                                       score += tipuesearch_weight.weight[e].score;
+                                                  }
+                                             }
+                                        }
+                                        
+                                        if (d_w[f].match('^-'))
+                                        {
+                                             pat = new RegExp(d_w[f].substring(1), 'i');
+                                             if (tipuesearch.pages[i].title.search(pat) != -1 || tipuesearch.pages[i].text.search(pat) != -1 || tipuesearch.pages[i].tags.search(pat) != -1)
+                                             {
+                                                  score = 0;     
+                                             }    
+                                        }
+                                   }
+                                   
+                                   if (score != 0)
                                    {
-                                        d_t = d_t + ' ' + tipuesearch_stem.words[f].stem;
+                                        found.push(
+                                        {
+                                             "score": score,
+                                             "title": tipuesearch.pages[i].title,
+                                             "desc": s_t,
+                                             "img": tipuesearch.pages[i].img, 
+                                             "url": tipuesearch.pages[i].url,
+                                             "note": tipuesearch.pages[i].note
+                                        });
+                                        c++;                                                                   
                                    }
                               }
                          }
-                         d_w = d_t.split(' ');
-
-                         var c = 0;
-                         found = new Array();
-                         for (var i = 0; i < tipuesearch_in.pages.length; i++)
+                         else
                          {
-                              var score = 1000000000;
-                              var s_t = tipuesearch_in.pages[i].text;
-                              for (var f = 0; f < d_w.length; f++)
+                              for (var i = 0; i < tipuesearch.pages.length; i++)
                               {
-                                   var pat = new RegExp(d_w[f], 'i');
-                                   if (tipuesearch_in.pages[i].title.search(pat) != -1)
+                                   var score = 0;
+                                   var s_t = tipuesearch.pages[i].text;
+                                   var pat = new RegExp(d, 'gi');
+                                   if (tipuesearch.pages[i].title.search(pat) != -1)
                                    {
-                                        score -= (200000 - i);
+                                        var m_c = tipuesearch.pages[i].title.match(pat).length;
+                                        score += (20 * m_c);
                                    }
-                                   if (tipuesearch_in.pages[i].text.search(pat) != -1)
+                                   if (tipuesearch.pages[i].text.search(pat) != -1)
                                    {
-                                        score -= (150000 - i);
+                                        var m_c = tipuesearch.pages[i].text.match(pat).length;
+                                        score += (20 * m_c);
                                    }
-                                   
-                                   if (set.highlightTerms)
+                                   if (tipuesearch.pages[i].tags)
                                    {
-                                        if (set.highlightEveryTerm) 
+                                        if (tipuesearch.pages[i].tags.search(pat) != -1)
                                         {
-                                             var patr = new RegExp('(' + d_w[f] + ')', 'gi');
+                                             var m_c = tipuesearch.pages[i].tags.match(pat).length;
+                                             score += (10 * m_c);
                                         }
-                                        else
+                                   }
+                                   if (tipuesearch.pages[i].url.search(pat) != -1)
+                                   {
+                                        score += 20;
+                                   }
+                                   
+                                   if (score != 0)
+                                   {
+                                        for (var e = 0; e < tipuesearch_weight.weight.length; e++)
                                         {
-                                             var patr = new RegExp('(' + d_w[f] + ')', 'i');
+                                             if (tipuesearch.pages[i].url == tipuesearch_weight.weight[e].url)
+                                             {
+                                                  score += tipuesearch_weight.weight[e].score;
+                                             }
                                         }
-                                        s_t = s_t.replace(patr, "<b>$1</b>");
                                    }
-                                   if (tipuesearch_in.pages[i].tags.search(pat) != -1)
+                              
+                                   if (score != 0)
                                    {
-                                        score -= (100000 - i);
-                                   }
-                    
-                              }
-                              if (score < 1000000000)
-                              {
-                                   found[c++] = score + '^' + tipuesearch_in.pages[i].title + '^' + s_t + '^' + tipuesearch_in.pages[i].loc;                                                                   
+                                        found.push(
+                                        {
+                                             "score": score,
+                                             "title": tipuesearch.pages[i].title,
+                                             "desc": s_t,
+                                             "img": tipuesearch.pages[i].img,
+                                             "url": tipuesearch.pages[i].url,
+                                             "note": tipuesearch.pages[i].note
+                                        });
+                                        c++;                                                                  
+                                   }                              
                               }
                          }                         
                          
                          if (c != 0)
                          {
-                              if (show_replace == 1)
+                              if (set.showTitleCount && tipuesearch_t_c == 0)
                               {
-                                   out += '<div id="tipue_search_warning_head">Showing results for ' + d + '</div>';
-                                   out += '<div id="tipue_search_warning">Search for <a href="javascript:void(0)" id="tipue_search_replaced">' + d_r + '</a></div>'; 
-                              }
+                                   var title = document.title;
+                                   document.title = '(' + c + ') ' + title;
+                                   tipuesearch_t_c++;
+                              }                         
+
                               if (c == 1)
                               {
-                                   out += '<div id="tipue_search_results_count">1 result</div>';
+                                   out += '<div id="tipue_search_results_count">' + tipuesearch_string_4;
                               }
                               else
                               {
-                                   c_c = c.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
-                                   out += '<div id="tipue_search_results_count">' + c_c + ' results</div>';
+                                   var c_c = c.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
+                                   out += '<div id="tipue_search_results_count">' + c_c + ' ' + tipuesearch_string_5;
+                              }
+                              if (set.showTime)
+                              {
+                                   var endTimer = new Date().getTime();
+                                   var time = (endTimer - startTimer) / 1000;
+                                   out += ' (' + time.toFixed(2) + ' ' + tipuesearch_string_14 + ')';
+                                   set.showTime = false;
+                              }
+                              out += '</div>';
+                                   
+                              if (set.showRelated && standard)
+                              {
+                                   f = 0;
+                                   for (var i = 0; i < tipuesearch_related.Related.length; i++)
+                                   {
+                                        if (d == tipuesearch_related.Related[i].search)
+                                        {
+                                             if (!f)
+                                             {
+                                                  out += '<div class="tipue_search_related">' + tipuesearch_string_10 + '</div><div class="tipue_search_related_block">';
+                                             }
+                                             if (show_replace)
+                                             {
+                                                  d_o = d;
+                                             }
+                                             
+                                             if (tipuesearch_related.Related[i].include)
+                                             {
+                                                  var r_d = d_o + ' ' + tipuesearch_related.Related[i].related;
+                                             }
+                                             else
+                                             {
+                                                  var r_d = tipuesearch_related.Related[i].related;
+                                             }                                             
+                                             
+                                             out += '<a class="tipue_search_related_btn" id="' + r_d + '">' + tipuesearch_related.Related[i].related + '</a>';
+                                             f++;         
+                                        }
+                                   }
+                                   if (f)
+                                   {
+                                        out += '</div>';
+                                   }   
+                              }
+
+                              if (show_replace)
+                              {
+                                   out += '<div id="tipue_search_replace">' + tipuesearch_string_2 + ' ' + d + '. ' + tipuesearch_string_3 + ' <a id="tipue_search_replaced">' + d_r + '</a></div>';
                               }
                               
-                              found.sort();
+                              found.sort(function(a, b) { return b.score - a.score } );
+                              
                               var l_o = 0;
+                              
+                              if (set.imageZoom)
+                              {
+                                   out += '<div id="tipue_search_image_modal"><div class="tipue_search_image_close">&#10005;</div><div class="tipue_search_image_block"><a id="tipue_search_zoom_url"><img id="tipue_search_zoom_img"></a><div id="tipue_search_zoom_text"></div></div></div>';    
+                              }
+                              
                               for (var i = 0; i < found.length; i++)
                               {
-                                   var fo = found[i].split('^');
                                    if (l_o >= start && l_o < set.show + start)
                                    {
-                                        out += '<div class="tipue_search_content_title"><a href="' + fo[3] + '"' + tipue_search_w + '>' +  fo[1] + '</a></div>';
-                                                                                
-                                        var t = fo[2];
-                                        var t_d = '';
-                                        var t_w = t.split(' ');
-                                        if (t_w.length < set.descriptiveWords)
-                                        {
-                                             t_d = t;
+                                        out += '<div class="tipue_search_result">';
+                                                                           
+                                        out += '<div class="tipue_search_content_title"><a href="' + found[i].url + '"' + tipue_search_w + '>' +  found[i].title + '</a></div>';
+ 
+                                        if (set.debug)
+                                        {                                             
+                                             out += '<div class="tipue_search_content_debug">Score: ' + found[i].score + '</div>';
                                         }
-                                        else
+                                        
+                                        if (set.showURL)
                                         {
-                                             for (var f = 0; f < set.descriptiveWords; f++)
+                                             var s_u = found[i].url.toLowerCase();
+                                             if (s_u.indexOf('http://') == 0)
                                              {
-                                                  t_d += t_w[f] + ' '; 	
-                                             }
+                                                  s_u = s_u.slice(7);
+                                             }                                             
+                                             out += '<div class="tipue_search_content_url"><a href="' + found[i].url + '"' + tipue_search_w + '>' + s_u + '</a></div>';
                                         }
-                                        t_d = $.trim(t_d);
-                                        if (t_d.charAt(t_d.length - 1) != '.')
+                                        
+                                        if (found[i].img)
                                         {
-                                             t_d += ' ...';
+                                             if (set.imageZoom)
+                                             {
+                                                  out += '<div class="tipue_search_image"><img class="tipue_search_img tipue_search_image_zoom" src="' + found[i].img + '" alt="' + found[i].title + '" data-url="' + found[i].url + '"></div>';     
+                                             }
+                                             else
+                                             {
+                                                  out += '<div class="tipue_search_image"><a href="' + found[i].url + '"' + tipue_search_w + '><img class="tipue_search_img" src="' + found[i].img + '" alt="' + found[i].title + '"></a></div>';
+                                             }
                                         }
-                                        out += '<div class="tipue_search_content_text">' + t_d + '</div>';
                                         
-                                        if (set.showURL)
-                                        {  
-                                             out += '<div class="tipue_search_content_loc"><a href="' + fo[3] + '"' + tipue_search_w + '>' + fo[3] + '</a></div>';
+                                        if (found[i].desc)
+                                        {                                        
+                                             var t = found[i].desc;
+
+                                             if (set.showContext)
+                                             {
+                                                  d_w = d.split(' ');
+                                                  var s_1 = found[i].desc.toLowerCase().indexOf(d_w[0]);
+                                                  if (s_1 > set.contextStart)
+                                                  {
+                                                       var t_1 = t.substr(s_1 - set.contextBuffer);
+                                                       var s_2 = t_1.indexOf(' ');
+                                                       t_1 = t.substr(s_1 - set.contextBuffer + s_2);
+                                                       t_1 = $.trim(t_1);
+                                                       
+                                                       if (t_1.length > set.contextLength)
+                                                       {                                                      
+                                                            t = '... ' + t_1;
+                                                       }
+                                                  }   
+                                             }
+                                             
+                                             if (standard)
+                                             {
+                                                  d_w = d.split(' ');
+                                                  for (var f = 0; f < d_w.length; f++)
+                                                  {
+                                                       if (set.highlightTerms)
+                                                       {
+                                                            var patr = new RegExp('(' + d_w[f] + ')', 'gi');
+                                                            t = t.replace(patr, "<h0011>$1<h0012>");
+                                                       }
+                                                  }
+                                             }
+                                             else if (set.highlightTerms)
+                                             {
+                                                  var patr = new RegExp('(' + d + ')', 'gi');
+                                                  t = t.replace(patr, "<span class=\"tipue_search_content_bold\">$1</span>");
+                                             }
+                                                                                  
+                                             var t_d = '';
+                                             var t_w = t.split(' ');
+                                             if (t_w.length < set.descriptiveWords)
+                                             {
+                                                  t_d = t;
+                                             }
+                                             else
+                                             {
+                                                  for (var f = 0; f < set.descriptiveWords; f++)
+                                                  {
+                                                       t_d += t_w[f] + ' '; 	
+                                                  }
+                                             }
+                                             t_d = $.trim(t_d);
+                                             if (t_d.charAt(t_d.length - 1) != '.')
+                                             {
+                                                  t_d += ' ...';
+                                             }
+                                             
+                                             t_d = t_d.replace(/h0011/g, 'span class=\"tipue_search_content_bold\"');
+                                             t_d = t_d.replace(/h0012/g, '/span');
+                                             
+                                             out += '<div class="tipue_search_content_text">' + t_d + '</div>';
                                         }
+                                        
+                                        if (found[i].note)
+                                        {
+                                             out += '<div class="tipue_search_note">' + found[i].note + '</div>';    
+                                        }                                       
+                                        
+                                        out += '</div>';
                                    }
                                    l_o++;     
-                              }
-                              
+                              }                              
+
                               if (c > set.show)
                               {
                                    var pages = Math.ceil(c / set.show);
                                    var page = (start / set.show);
+                                   if (set.footerPages < 3)
+                                   {
+                                        set.footerPages = 3;
+                                   }
+                                   
                                    out += '<div id="tipue_search_foot"><ul id="tipue_search_foot_boxes">';
                                    
                                    if (start > 0)
                                    {
-                                       out += '<li><a href="javascript:void(0)" class="tipue_search_foot_box" id="' + (start - set.show) + '_' + replace + '">&#171; Prev</a></li>'; 
+                                       out += '<li role="navigation"><a class="tipue_search_foot_box" accesskey="b" id="' + (start - set.show) + '_' + replace + '">' + tipuesearch_string_6 + '</a></li>'; 
                                    }
                                                        
                                    if (page <= 2)
                                    {
                                         var p_b = pages;
-                                        if (pages > 3)
+                                        if (pages > set.footerPages)
                                         {
-                                             p_b = 3;
+                                             p_b = set.footerPages;
                                         }                    
                                         for (var f = 0; f < p_b; f++)
                                         {
                                              if (f == page)
                                              {
-                                                  out += '<li class="current">' + (f + 1) + '</li>';
+                                                  out += '<li class="current" role="navigation">' + (f + 1) + '</li>';
                                              }
                                              else
                                              {
-                                                  out += '<li><a href="javascript:void(0)" class="tipue_search_foot_box" id="' + (f * set.show) + '_' + replace + '">' + (f + 1) + '</a></li>';
+                                                  out += '<li role="navigation"><a class="tipue_search_foot_box" id="' + (f * set.show) + '_' + replace + '">' + (f + 1) + '</a></li>';
                                              }
                                         }
                                    }
                                    else
                                    {
-                                        var p_b = pages + 2;
+                                        var p_b = page + set.footerPages - 1;
                                         if (p_b > pages)
                                         {
                                              p_b = pages; 
                                         }
-                                        for (var f = page; f < p_b; f++)
+                                        for (var f = page - 1; f < p_b; f++)
                                         {
                                              if (f == page)
                                              {
-                                                  out += '<li class="current">' + (f + 1) + '</li>';
+                                                  out += '<li class="current" role="navigation">' + (f + 1) + '</li>';
                                              }
                                              else
                                              {
-                                                  out += '<li><a href="javascript:void(0)" class="tipue_search_foot_box" id="' + (f * set.show) + '_' + replace + '">' + (f + 1) + '</a></li>';
+                                                  out += '<li role="navigation"><a class="tipue_search_foot_box" id="' + (f * set.show) + '_' + replace + '">' + (f + 1) + '</a></li>';
                                              }
-                                        }                         
-                                   }
+                                        }
+                                   }                         
                                                       
                                    if (page + 1 != pages)
                                    {
-                                       out += '<li><a href="javascript:void(0)" class="tipue_search_foot_box" id="' + (start + set.show) + '_' + replace + '">Next &#187;</a></li>'; 
+                                       out += '<li role="navigation"><a class="tipue_search_foot_box" accesskey="m" id="' + (start + set.show) + '_' + replace + '">' + tipuesearch_string_7 + '</a></li>'; 
                                    }                    
                                    
                                    out += '</ul></div>';
-                              }                        
+                              }
+
                          }
                          else
                          {
-                              out += '<div id="tipue_search_warning_head">Nothing found</div>'; 
+                              out += '<div id="tipue_search_error">' + tipuesearch_string_8 + '</div>'; 
                          }
                     }
                     else
                     {
                          if (show_stop)
                          {
-                              out += '<div id="tipue_search_warning_head">Nothing found</div><div id="tipue_search_warning">Common words are largely ignored</div>';     
+                              out += '<div id="tipue_search_error">' + tipuesearch_string_8 + ' ' + tipuesearch_string_9 + '</div>';     
                          }
                          else
                          {
-                              out += '<div id="tipue_search_warning_head">Search too short</div>';
                               if (set.minimumLength == 1)
                               {
-                                   out += '<div id="tipue_search_warning">Should be one character or more</div>';
+                                   out += '<div id="tipue_search_error">' + tipuesearch_string_11 + '</div>';
                               }
                               else
                               {
-                                   out += '<div id="tipue_search_warning">Should be ' + set.minimumLength + ' characters or more</div>';
+                                   out += '<div id="tipue_search_error">' + tipuesearch_string_12 + ' ' + set.minimumLength + ' ' + tipuesearch_string_13 + '</div>';
                               }
                          }
-                    }
-               
-                    $('#tipue_search_content').html(out);
-                    $('#tipue_search_content').slideDown(200);
+                    }                
+                    
+                    $('#tipue_search_content').hide().html(out).slideDown(200);
                     
                     $('#tipue_search_replaced').click(function()
                     {
                          getTipueSearch(0, false);
+                    });
+                    
+                    $('.tipue_search_related_btn').click(function()
+                    {
+                         $('#tipue_search_input').val($(this).attr('id'));
+                         getTipueSearch(0, true);
+                    });
+                    
+                    $('.tipue_search_image_zoom').click(function()
+                    {
+                         $('#tipue_search_image_modal').fadeIn(300);
+                         $('#tipue_search_zoom_img').attr('src', this.src);
+                         
+                         var z_u = $(this).attr('data-url');
+                         $('#tipue_search_zoom_url').attr('href', z_u);
+                         
+                         var z_o = this.alt + '<div class="tipue_search_zoom_options"><a href="' + this.src + '" target="_blank">' + tipuesearch_string_15 + '</a>&nbsp; <a href="' + z_u + '">' + tipuesearch_string_16 + '</a></div>';
+                         
+                         $('#tipue_search_zoom_text').html(z_o);
+                    });
+                    
+                    $('.tipue_search_image_close').click(function()
+                    {
+                         $('#tipue_search_image_modal').fadeOut(300);
                     });                
                
                     $('.tipue_search_foot_box').click(function()
@@ -377,7 +606,3 @@ http://www.tipue.com/search
      };
    
 })(jQuery);
-
-
-
-

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 181 - 12
static/tipuesearch/tipuesearch.min.js


+ 18 - 0
static/tipuesearch/tipuesearch_content.js

@@ -0,0 +1,18 @@
+
+var tipuesearch = {"pages": [
+     {"title": "Tipue", "text": "Tipue is a small web development studio based in North London.", "url": "http://www.tipue.com"}, 
+     {"title": "Tipue Search, a jQuery Site Search Plugin", "text": "Tipue Search is a site search jQuery plugin. It's free, open source, responsive and fast. Tipue Search only needs a browser that supports jQuery. It doesn't need MySQL or similar. It doesn't even need a web server.", "img": "http://www.tipue.com/img/surface.jpg", "tags": "JavaScript", "url": "http://www.tipue.com/search"},
+     {"title": "Tipue Search Help", "text": "Tipue Search help. Tipue Search is a site search jQuery plugin. It's free, open source, responsive and fast. What is Tipue Search? Getting Started. Using Tipue Search. Options.", "img": "http://www.tipue.com/img/elvis.jpg", "url": "http://www.tipue.com/search/help"},
+     {"title": "Tipue Search demo", "text": "Tipue Search demo. Try searching for Tipue.", "url": "http://www.tipue.com/search/demo"},
+     {"title": "About Tipue", "text": "Tipue is a small web development studio based in North London, founded in 2001. We design innovative and original jQuery plugins and add-in code. We talk to MySQL and similar with heavy-duty Perl. Our work breathes.", "url": "http://www.tipue.com/is"},     
+     {"title": "Tipr, a Small and Simple jQuery Tooltip Plugin", "text": "Small, simple, flat, cool. Tipr is a jQuery tooltip plugin. It works on almost any element, and it's free and open source. Tipr displays nice tooltips, and it's around 3KB, CSS included. The tooltips can appear on almost any HTML element. Tipr reacts to the size of the viewport.", "img": "http://www.tipue.com/img/glow.jpg", "tags": "JavaScript", "url": "http://www.tipue.com/tipr"},
+     {"title": "Tipue Support", "text": "We offer a range of flexible support plans for our jQuery plugins, including free. We hope to continue offering excellent free support. Get it by talking to us on Twitter.", "url": "http://www.tipue.com/support"},     
+     {"title": "Getting Started with Tipue Search", "text": "Download Tipue Search and copy the tipuesearch folder to your site. You should look at the demo included with Tipue Search. You should first create a search page. The site content is stored in the tipuesearch_content.js file. It contains the search data as a JavaScript object.", "note": "<a href='http://www.tipue.com/search/help/'>From Help</a>", "url": "http://www.tipue.com/search/help/?d=1"},
+     {"title": "Content for Tipue Search", "text": "The search data for Tipue Search is contained in the tipuesearch JavaScript object. Usually this is stored in the tipuesearch_content.js file, but it doesn't have to be. You can create a JavaScript object for your website with Beaty.", "note": "<a href='http://www.tipue.com/search/help/'>From Help</a>", "url": "http://www.tipue.com/search/help/?d=2"},
+     {"title": "Beaty", "text": "Beaty is a web scraper that grabs content from your website and returns the data as a JavaScript object, JSON or CSV. Beaty is for small to medium websites, and there's a limit of 70 pages. English is the only language supported.", "tags": "Tipue", "url": "http://www.tipue.com/beaty"},
+     {"title": "The Complete Guide to Centering a Div", "text": "Every developer inevitably finds that centering a div isn't as obvious as you'd expect. Centering what's inside a div horizontally is easy but then things tend to get a bit sticky. When you get to centering a div vertically, you can end up in a world of CSS hurt.", "tags": "Tipue Features", "url": "http://www.tipue.com/blog/center-a-div"},
+     {"title": "Using Vw and Vh", "text": "Viewport width (vw) and viewport height (vh) are viewport-percentage values introduced in CSS3. Given how powerful they are, and with almost complete browser support, they should be everywhere.", "tags": "Tipue Features", "url": "http://www.tipue.com/blog/css3-vw-vh"},     
+     {"title": "Using CSS Feature Queries", "text": "CSS feature queries are now supported everywhere. They allow you to use cutting edge CSS with subtle and precise feature detection.", "tags": "Tipue Features", "url": "http://www.tipue.com/blog/feature-queries"},     
+     {"title": "A Very Simple CSS Background Zoom", "text": "A really easy method of creating a CSS background image zoom. Not only is this simple, it comes with wide browser support.", "tags": "Tipue Features", "url": "http://www.tipue.com/blog/css-background-zoom"},
+     {"title": "Using Z-index", "text": "The CSS z-index property often trips up both new and experienced developers. The aim of this article is to boil down a somewhat-complex specification to three major points, which should ease most z-index pain.", "tags": "Tipue Features", "url": "http://www.tipue.com/blog/z-index"}
+]};

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 72 - 40
static/tipuesearch/tipuesearch_set.js


+ 11 - 7
templates/base.html

@@ -33,15 +33,18 @@
         {% endblock meta_tags_in_head %}
         <title>{% block title %}{{ SITENAME|striptags|e }}{% endblock title %}</title>
         {% block head_links %}
-        <link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet">
-        <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.1/css/font-awesome.css" rel="stylesheet">
+        <link href="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet">
+        <link href="https://netdna.bootstrapcdn.com/font-awesome/4.0.1/css/font-awesome.css" rel="stylesheet">
         {% if 'assets' in PLUGINS %}
         {% include '_includes/minify_css.html' with context %}
         {% else %}
         <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/css/pygments.css" media="screen">
+        <link href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.0/normalize.min.css">
+        <script src="{{ SITEURL }}/theme/tipuesearch/tipuesearch_content.js"></script>
         <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/tipuesearch/tipuesearch.css" media="screen">
         <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/css/elegant.css" media="screen">
         <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/css/custom.css" media="screen">
+
         {% endif %}
         {% endblock head_links %}
         {% include '_includes/favicon_links.html' %}
@@ -69,9 +72,10 @@
                             <li {% if p == page %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ p.url }}">{{ p.title }}</a></li>
                             {% endfor %}
                             {% endif %}
-                            <li {% if page_name == 'categories' %} class="active"{% endif %}><a href="{{ SITEURL }}/categories.html">Categories</a></li>
-                            <li {% if page_name == 'tags' %} class="active"{% endif %}><a href="{{ SITEURL }}/tags.html">Tags</a></li>
-                            <li {% if page_name == 'archives' %} class="active"{% endif %}><a href="{{ SITEURL }}/archives.html">Archives</a></li>
+                            <!-- <li {% if page_name == 'categories' %} class="active"{% endif %}><a href="{{ SITEURL }}/categories.html">Categories</a></li> -->
+                            <!-- <li {% if page_name == 'tags' %} class="active"{% endif %}><a href="{{ SITEURL }}/tags.html">Tags</a></li> -->
+                            <!-- <li {% if page_name == 'archives' %} class="active"{% endif %}><a href="{{ SITEURL }}/archives.html">Archives</a></li> -->
+                            <li><a href="{{ SITEURL }}/thesis.pdf">Get PDF</a></li>
                             <li><form class="navbar-search" action="{{ SITEURL }}/search.html" onsubmit="return validateForm(this.elements['q'].value);"> <input type="text" class="search-query" placeholder="Search" name="q" id="tipue_search_input"></form></li>
                         </ul>
                     </div>
@@ -92,8 +96,8 @@
     </div>
         {% include '_includes/footer.html' %}
         {% block script %}
-        <script src="http://code.jquery.com/jquery.min.js"></script>
-        <script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
+        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
+        <script src="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
         <script>
             function validateForm(query)
             {

+ 4 - 14
templates/search.html

@@ -25,29 +25,19 @@ Search results for {{ SITENAME|striptags|e }} blog.
 {% endblock meta_tags_in_head %}
 
 {% block script %}
-<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
     {% if 'assets' in PLUGINS %}
     {% include '_includes/minify_tipuesearch.html' with context %}
     {% else %}
 <script type="text/javascript" src="{{ SITEURL }}/theme/tipuesearch/tipuesearch_set.js"></script>
 <script type="text/javascript" src="{{ SITEURL }}/theme/tipuesearch/tipuesearch.min.js"></script>
+<script type="text/javascript" src="{{ SITEURL }}/tipuesearch_content.js"></script>
     {% endif %}
 <script>
 $(document).ready(function() {
      $('#tipue_search_input').tipuesearch({
-         {% if 'tipue_search' in PLUGINS %}
-             'mode' : 'json',
-         {% else %}
-             'mode': 'live',
-         {% endif %}
-         'show': 10,
-         'newWindow': false,
-         {# I cannot place following statements in the conditionals above because then Tipue Search fails to work. Possibly a bug in Tipue Search. #}
-         {% if 'tipue_search' in PLUGINS %}
-             'contentLocation': 'tipuesearch_content.json'
-         {% else %}
-             'liveDescription': '.article-content'
-         {% endif %}
+             'show': 10,
+             'newWindow': false,
      });
 });
 </script>