Ticket #3048: progfind_an.diff

File progfind_an.diff, 2.7 KB (added by stuartm, 17 years ago)
  • mythtv/libs/libmythtv/progfind.cpp

     
    12811281                   "title NOT REGEXP '^[A-Z0-9]' AND "
    12821282                   "title NOT REGEXP '^The [A-Z0-9]' AND "
    12831283                   "title NOT REGEXP '^A [A-Z0-9]' AND "
     1284                   "title NOT REGEXP '^An [A-Z0-9]' AND "
    12841285                   "starttime > :STARTTIME ) ORDER BY title;";
    12851286        bindings[":STARTTIME"] = progStart.toString("yyyy-MM-ddThh:mm:50");
    12861287    }
     
    12891290        QString one = searchData[charNum] + "%";
    12901291        QString two = QString("The ") + one;
    12911292        QString three = QString("A ") + one;
     1293        QString four = QString("An ") + one;
    12921294        where = "SELECT DISTINCT title "
    12931295                "FROM program "
    12941296                "WHERE ( title LIKE :ONE OR title LIKE :TWO "
    1295                 "        OR title LIKE :THREE ) "
     1297                "        OR title LIKE :THREE "
     1298                "        OR title LIKE :FOUR ) "
    12961299                "AND starttime > :STARTTIME "
    12971300                "ORDER BY title;";
    12981301        bindings[":ONE"] = one.utf8();
    12991302        bindings[":TWO"] = two.utf8();
    13001303        bindings[":THREE"] = three.utf8();
     1304        bindings[":FOUR"] = four.utf8();
    13011305        bindings[":STARTTIME"] = progStart.toString("yyyy-MM-ddThh:mm:50");
    13021306    }
    13031307}
     
    13161320            data = data.mid(2) + ", A";
    13171321        else if (data.left(3) == "A A" && searchData[curSearch] == "A")
    13181322             data = data.mid(2) + ", A";
     1323        else if (data.left(4) == "An A" && searchData[curSearch] == "A")
     1324             data = data.mid(3) + ", An";
    13191325        else if (data.left(4) != "The " && data.left(2) != "A ")
    13201326        {
    13211327             // nothing, use as is
     
    13321338            data = data.mid(4) + ", The";
    13331339        if (data.left(2) == "A ")
    13341340            data = data.mid(2) + ", A";
     1341        if (data.left(3) == "An ")
     1342            data = data.mid(3) + ", An";
    13351343    }
    13361344
    13371345    return retval;
     
    13511359            data = data.mid(2) + ", A";
    13521360        else if (data.left(3) == "A A" && charNum == 10)
    13531361            data = data.mid(2) + ", A";
     1362        else if (data.left(4) == "An A" && charNum == 10)
     1363             data = data.mid(3) + ", An";
    13541364        else if (data.left(4) != "The " && data.left(2) != "A ")
    13551365        {
    13561366            // use as is
     
    13671377            data = data.mid(4) + ", The";
    13681378        if (data.left(2) == "A ")
    13691379            data = data.mid(2) + ", A";
     1380        if (data.left(3) == "An ")
     1381            data = data.mid(3) + ", An";
    13701382    }
    13711383
    13721384    return retval;