def search(manual):
#	msg("Searching for episode","Showname: " + showname + " Episode: " + str(season) + "x" + str(episode) + "\nTitle: " + title + " Aired: " + firstaired)
	searchstring = createSearchString()
	if manual:
		manualstring = util.getKeyboardString(createSearchString(), localize(30006))
		if manualstring:
			searchstring = manualstring
		if searchstring == "-aborted-" :
			return
	searchresult = tracker.search(searchstring)
	if not searchresult:
		header = localize(30001)
		msg(header,localize(50002))
	return createTrackerListing(searchresult)
if not database.databaseExists():
	database.initDatabase()

mode = util.getMode()
if(mode.mode == "start"):
	sendToXbmc(startMode.createShowList())
else:
	if(mode.mode == "tvshow"):
#		rpdb2.start_embedded_debugger('pw')
		sendToXbmc(tvshowMode.createMissingEpisodeList())
	elif(mode.mode == "episode"):
		#rpdb2.start_embedded_debugger('pw')
		sendToXbmc(searchMode.search(False))
	elif(mode.mode == "changetvshow"):
		scraperID = util.matchSerie(util.getKeyboardString(mode.show.titel,localize(30005)));
		if scraperID != -1:
			database.addSerie(scraperID)
	elif(mode.mode == "manualsearch"):
		sendToXbmc(searchMode.search(True))
	elif(mode.mode == "magnet"):
		host = _settings_.getSetting("rpc_host")
		port = _settings_.getSetting("rpc_port")
		user = _settings_.getSetting("rpc_user")
		password = _settings_.getSetting("rpc_password")
		if user == "":
			user = None
			if password == "":
				password = None
		try:
			tc = transmissionrpcv08.Client(host, port=int(port), user=user, password=password)