Ticket #3048: progfind_an.diff
File progfind_an.diff, 2.7 KB (added by , 17 years ago) |
---|
-
mythtv/libs/libmythtv/progfind.cpp
1281 1281 "title NOT REGEXP '^[A-Z0-9]' AND " 1282 1282 "title NOT REGEXP '^The [A-Z0-9]' AND " 1283 1283 "title NOT REGEXP '^A [A-Z0-9]' AND " 1284 "title NOT REGEXP '^An [A-Z0-9]' AND " 1284 1285 "starttime > :STARTTIME ) ORDER BY title;"; 1285 1286 bindings[":STARTTIME"] = progStart.toString("yyyy-MM-ddThh:mm:50"); 1286 1287 } … … 1289 1290 QString one = searchData[charNum] + "%"; 1290 1291 QString two = QString("The ") + one; 1291 1292 QString three = QString("A ") + one; 1293 QString four = QString("An ") + one; 1292 1294 where = "SELECT DISTINCT title " 1293 1295 "FROM program " 1294 1296 "WHERE ( title LIKE :ONE OR title LIKE :TWO " 1295 " OR title LIKE :THREE ) " 1297 " OR title LIKE :THREE " 1298 " OR title LIKE :FOUR ) " 1296 1299 "AND starttime > :STARTTIME " 1297 1300 "ORDER BY title;"; 1298 1301 bindings[":ONE"] = one.utf8(); 1299 1302 bindings[":TWO"] = two.utf8(); 1300 1303 bindings[":THREE"] = three.utf8(); 1304 bindings[":FOUR"] = four.utf8(); 1301 1305 bindings[":STARTTIME"] = progStart.toString("yyyy-MM-ddThh:mm:50"); 1302 1306 } 1303 1307 } … … 1316 1320 data = data.mid(2) + ", A"; 1317 1321 else if (data.left(3) == "A A" && searchData[curSearch] == "A") 1318 1322 data = data.mid(2) + ", A"; 1323 else if (data.left(4) == "An A" && searchData[curSearch] == "A") 1324 data = data.mid(3) + ", An"; 1319 1325 else if (data.left(4) != "The " && data.left(2) != "A ") 1320 1326 { 1321 1327 // nothing, use as is … … 1332 1338 data = data.mid(4) + ", The"; 1333 1339 if (data.left(2) == "A ") 1334 1340 data = data.mid(2) + ", A"; 1341 if (data.left(3) == "An ") 1342 data = data.mid(3) + ", An"; 1335 1343 } 1336 1344 1337 1345 return retval; … … 1351 1359 data = data.mid(2) + ", A"; 1352 1360 else if (data.left(3) == "A A" && charNum == 10) 1353 1361 data = data.mid(2) + ", A"; 1362 else if (data.left(4) == "An A" && charNum == 10) 1363 data = data.mid(3) + ", An"; 1354 1364 else if (data.left(4) != "The " && data.left(2) != "A ") 1355 1365 { 1356 1366 // use as is … … 1367 1377 data = data.mid(4) + ", The"; 1368 1378 if (data.left(2) == "A ") 1369 1379 data = data.mid(2) + ", A"; 1380 if (data.left(3) == "An ") 1381 data = data.mid(3) + ", An"; 1370 1382 } 1371 1383 1372 1384 return retval;