How can I add a search parameter?

How can I add a search parameter?

I need help adding a search parameter to a web application I'm currently developing.  Right now, my search results are being pulled from Twitter and includes ALL tweets, however I would like for the returned tweets to all contain a certain word.  For the sake of example, if anyone could show me how to do this using the word 'dog' I would greatly appreciate it!

  1. function string_replace(haystack, find, sub) {
        return haystack.split(find).join(sub);
    }
    String.prototype.parseHashtag = function() {
        return this.replace(/[#]+[A-Za-z0-9-_]+/g, function(t) {
            var tag = t.replace("#","#");
            return t.link("http://search.twitter.com/search?q="+tag);
        });
    };
    String.prototype.parseUsername = function() {
        return this.replace(/[@]+[A-Za-z0-9-_]+/g, function(u) {
            var username = u.replace("@","");
            return u.link("http://twitter.com/"+username);
        });
    };

    function tweetEntry(item) {
        var text = item.text;
        var match = /(http|https)://(w+:{0,1}w*@)?(S+)(:[0-9]+)?(/|/([w#!:.?+=&%@!-/]))?/.exec(text);
        if (match) {
        text = string_replace(item.text, match[0], '<a href="'+ match[0] + '">' + match[0] + '</a>');
        }

        // @replies and #hashtags
        text = text.parseHashtag();
        text = text.parseUsername();
       
        var res = "<div class='entry'>"
        + "<div class='username'>"
        + "<a href='http://twitter.com/"+item.from_user+"'>"
        + "<img src='"+item.profile_image_url+"' width='48' height='48'/>"
        + " "+item.from_user+"</a>"
        + "</div>"
        + "<div class='text'>"+text+"</div>"
        + "<div class='date'>"+formatTime(item.created_at)+"</div>"
        + "</div>";
        return res;
    }

    function noResults(search_term) {
        var res = "<div class='entry'>"
        + "<div class='no_results'>"
        + "No matching results for '"+ search_term +"'..."
        + "</div>"
        + "</div>";
        return res;
    }

    function formatTime(time){
        var now  = new Date(), then = new Date(time);
        var diff = now - then,
        sec  = 1000,
        min  = sec  * 60,
        hour = min  * 60,
        day  = hour * 24,
        week = day  * 7;
       
        if(isNaN(diff) || diff < 0){
        return "";
        }
        if(diff < sec * 7){
        return "right now";
        }
        if(diff < min){
        return Math.floor(diff / sec) + " seconds ago";
        }
        if(diff < min * 2){
        return "about 1 minute ago";
        }
        if(diff < hour){
        return Math.floor(diff / min) + " minutes ago";
        }
        if(diff < hour * 2){
        return "about 1 hour ago";
        }
        if(diff < day){
        return Math.floor(diff / hour) + " hours ago";
        }
        if(diff > day && diff < day * 2){
        return "yesterday";
        }
        if(diff < day * 365){
        return Math.floor(diff / day) + " days ago";
        } else {
        return "over a year ago";
        }
    }

    function getLang() {   
        var code = navigator.language;
        // iso 639-1 codes are always 2 letters long
        return code.substr(0,2);
    }

    function addHashes(words) {
        var temp = new Array();
        for (var w in words) {   
        temp.push("#" + words[w]);
        }
        return temp;
    }


    function handleSuggestions2(data) {
        //var base_url = "http://search.twitter.com/search.json?callback=?&lang="+getLang()+"&q=";
        var base_url = "http://search.twitter.com/search.json?callback=?&q=";

        var the_words = new Array();
        var search_term = data[0];
        for (var i in data[1]) {
        the_words.push(data[1][i][0]);
        }   
        // add hash to suggested words
        if (search_term[0] == "#") {
        the_words = addHashes(the_words);
        }

        $("#searchfield").autocomplete(
            { source: the_words.slice(0,4)
            });

        if (the_words.length == 0) {
        renderGeist("", search_term);
        $.get(base_url + encodeURIComponent(search_term),
                  { rpp: 10
                  },
                  function(data) {
              if (!data.error) {         
                  $("#main").empty();
                      if (data.results.length > 0) {
                      for(var i in data.results) {
                          $("#main").append(tweetEntry(data.results[i]));
                      }
                      } else {             
                      $("#main").append(noResults(search_term));             
                  }
              }
                  }, "json");
        } else {
        renderGeist(the_words[0], search_term);
        $.get(base_url + encodeURIComponent(search_term +' OR '+ the_words[0]),
                  { rpp: 10
                  },
                  function(data) {
              if (!data.error) {
                  $("#main").empty();
                      if (data.results.length > 0) {
                      for (var i in data.results) {
                          $("#main").append(tweetEntry(data.results[i]));
                      }
                      } else {
                  $("#main").append(noResults(search_term));             
                  }
              }
                  }, "json");
        }
    }

    function suggestedTerms(term) {
        var suggest_url = "http://suggestqueries.google.com/complete/search?hl="+getLang()+"&cp=1&hjson=t&jsonp=?&q=";

        // badly hacked (no official api), but working...
        $.getJSON(suggest_url + term, handleSuggestions2);
    }

    function instantTwitter(event) {
        var search_term = encodeURIComponent($("#searchfield").val());
        if (search_term.length > 0) {
        // get suggested search terms
        suggestedTerms(search_term);
        } else {
        $("#geist").empty();
        }
    }

    function renderGeist(word, search_term) {
        var len = search_term.length;
        if (search_term.toLowerCase() == word.substr(0,len).toLowerCase()) {   
        var leng = search_term.length;
        var temp_word = word.slice(leng);
        var final_word = search_term + temp_word;
        $("#geist").text(final_word);
        } else {
        $("#geist").text("");
         }
     }

     $(document).ready(
         function() {

    $("#moreResult").click( function(e) {
            
          $("#main").animate({
            height: '+=100',
          }, 1000, function() {
          });     
                e.preventDefault();
            });

         $("#about_lnk").click(
             function() {                 
             $("#dialog").dialog();
             });
         //$("#message").slideDown("slow").delay(7000).slideUp("slow");
         $("#searchfield").focus();
         $("#searchfield").submit(instantTwitter);
         $("#searchfield").keyup(instantTwitter);
        }
    );