$main_template =~ s/%%keywords%%/$fields{'keywords'}/g; $main_template =~ s/%%searcresults%%/$pitem/g; $main_template =~ s/%%keywords%%/$fields{'keywords'}/g; $main_template =~ s/%%premiumlistings%%/$premiumitem/g; #### $fields{'keywords'} = &get_search_ready($fields{'keywords'}); if ($fields{'keywords'} eq ""){$fields{'keywords'} = "NOTHING";} if (length($fields{'keywords'}) < $minimum_keyword_length){$fields{'keywords'} = "2_CHARS";} if (($use_mysql eq "Yes") and ($fields{'keywords'} ne "NOTHING") and ($fields{'keywords'} ne "2_CHARS")) { &mysql_search; } elsif (($fields{'keywords'} ne "NOTHING") and ($fields{'keywords'} ne "2_CHARS")) { &normal_search; } if (($fields{'keywords'} eq "NOTHING") or ($fields{'keywords'} eq "2_CHARS")) { $fields{'keywords'} = ""; } #### RELEVANCE $rspcntr = 0; ############ CAPTURES ALL KEYWORD INPUT ############### (@skeyw) = split(/ /,$fields{'keywords'}); ########### ADDED 04/29/04 ################### $nrkeywords = push(@skeyw); foreach $kwrel (@resultline) ########################################### { $keycount = 0; $kwcntr = 1000; while ($keycount < $nrkeywords) { #### TITLE (@litems) = split(/\t/,$kwrel); if ($litems[1] =~ /$skeyw[$keycount]/i) { $kwcntr = $kwcntr - 5; } #### DESCRIPTION if ($litems[2] =~ /$skeyw[$keycount]/i) { $kwcntr = $kwcntr - 1; } #### KEYWORDS if ($litems[5] =~ /$skeyw[$keycount]/i) { $kwcntr = $kwcntr - 4; } ##### GENERAL if (($kwrel =~ /$skeyw[$keycount]/i) and ($skeyw[$keycount] ne "")) { $kwcntr = $kwcntr - 1; } ##### PHRASE if (($kwrel =~ /$fields{'keywords'}/i) and ($nrkeywords > 1)) { $kwcntr = $kwcntr - 10; } ##### AND BOOLEAN MATCHING if ($nrkeywords == 2) { if (($kwrel =~ /$skeyw[0]/i) and ($kwrel =~ /$skeyw[1]/i)) {$kwcntr = $kwcntr - 20;} } elsif ($nrkeywords == 3) { if (($kwrel =~ /$skeyw[0]/i) and ($kwrel =~ /$skeyw[1]/i) and ($kwrel =~ /$skeyw[2]/i)) {$kwcntr = $kwcntr - 30;} } elsif ($nrkeywords == 4) { if (($kwrel =~ /$skeyw[0]/i) and ($kwrel =~ /$skeyw[1]/i) and ($kwrel =~ /$skeyw[2]/i) and ($kwrel =~ /$skeyw[3]/i)) {$kwcntr = $kwcntr - 40;} } $keycount++; } if (length($kwcntr) == 3){$kwcntr = "0" . $kwcntr;} if (length($kwcntr) == 2){$kwcntr = "00" . $kwcntr;} if (length($kwcntr) == 1){$kwcntr = "000" . $kwcntr;} $resultline[$rspcntr] = $kwcntr . "-_:" . $kwrel;