示例#1
0
    def __init__(self, utility):
        self.utility = utility

        filename = self.utility.config.Read('language_file')

        langpath = os.path.join(self.utility.getPath(), "lang")

        sys.stdout.write("Setting up languages\n")
        sys.stdout.write("filename: " + str(filename) + "\n")

        # Set up user language file (stored in user's config directory)
        self.user_lang = None
        user_filepath = os.path.join(self.utility.getConfigPath(), 'user.lang')
        self.user_lang = ConfigReader(user_filepath, "ABC/language")

        # Set up local language file
        self.local_lang_filename = None
        self.local_lang = None
        local_filepath = os.path.join(langpath, filename)
        if filename != 'english.lang' and existsAndIsReadable(local_filepath):
            self.local_lang_filename = filename
            self.local_lang = ConfigReader(local_filepath, "ABC/language")

        # Set up english language file
        self.english_lang = None
        english_filepath = os.path.join(langpath, 'english.lang')
        if existsAndIsReadable(english_filepath):
            self.english_lang = ConfigReader(english_filepath, "ABC/language")

        self.cache = {}

        self.langwarning = False
示例#2
0
def convertOldList2B(utility, indexval):
    torrentconfig = utility.torrentconfig

    index = str(indexval)

    try:
        if not torrentconfig.has_section(index):
            return False
    except:
        return False

    if indexval == 0:
        # backup the old file
        oldconfigname = os.path.join(utility.getConfigPath(), "torrent.list")
        if existsAndIsReadable(oldconfigname):
            try:
                copy2(oldconfigname, oldconfigname + ".old")
            except:
                pass

    # Torrent information
    filename = torrentconfig.Read("src", section=index)
    # Format from earlier 2.7.0 test builds:
    if not filename:
        # If the src is missing, then we should not try to add the torrent
        sys.stdout.write("Filename is empty for index: " + str(index) + "!\n")
        return False
    elif filename.startswith(utility.getPath()):
        src = filename
    else:
        src = os.path.join(utility.getConfigPath(), "torrent", filename)

    filename = os.path.split(src)[1]
    newsrc = os.path.join(utility.getConfigPath(), "torrent", filename)

    configpath = os.path.join(utility.getConfigPath(), "torrentinfo",
                              filename + ".info")
    config = ConfigReader(configpath, "TorrentInfo")

    for name, value in torrentconfig.Items(index):
        if name != "src" and value != "":
            config.Write(name, value)

    config.Flush()

    torrentconfig.DeleteGroup(index)
    torrentconfig.Write(index, newsrc)

    return True
示例#3
0
    def setupTorrentMakerConfig(self):
        defaults = {
            'piece_size': '0', 
            'comment': '', 
            'created_by': '', 
            'announcedefault': '', 
            'announcehistory': '', 
            'announce-list': '', 
            'httpseeds': '', 
            'makehash_md5': '0', 
            'makehash_crc32': '0', 
            'makehash_sha1': '0', 
            'startnow': '0', 
            'savetorrent': '2'
        }

        torrentmakerconfigfilepath = os.path.join(self.getConfigPath(), "maker.conf")
        self.makerconfig = ConfigReader(torrentmakerconfigfilepath, "ABC/TorrentMaker", defaults)
示例#4
0
    def setupWebConfig(self):
        defaults = {
            'webID': 'yourkeyword', 
            'webIP': '127.0.0.1', 
            'webport': '56667', 
            'webautostart': '0', 
            'allow_query': '1', 
            'allow_delete': '1', 
            'allow_clearcompleted': '1', 
            'allow_add': '1', 
            'allow_setparam': '0', 
            'allow_getparam': '0', 
            'allow_queue': '1', 
            'allow_pause': '1', 
            'allow_stop': '1', 
            'allow_resume': '1', 
            'allow_setprio': '1', 
        }

        webconfigfilepath = os.path.join(self.getConfigPath(), "webservice.conf")
        self.webconfig = ConfigReader(webconfigfilepath, "ABC/Webservice", defaults)
示例#5
0
 def setupTorrentList(self):
     torrentfilepath = os.path.join(self.getConfigPath(), "torrent.list")
     self.torrentconfig = ConfigReader(torrentfilepath, "list0")
示例#6
0
    def setupConfig(self):        
        defaults = {
            'defrentorwithdest': '1', 
            'minport': str(random.randint(10000, 60000)), 
            'maxport': '50000', 
            'maxupload': '5', 
            'maxuploadrate': '0', 
            'maxdownloadrate': '0', 
            'maxseeduploadrate': '0', 
            'numsimdownload': '2', 
            'uploadoption': '2', 
            'uploadtimeh': '0', 
            'uploadtimem': '30', 
            'uploadratio': '100', 
            'removetorrent': '0', 
            'setdefaultfolder': '0', 
            'defaultfolder': 'c:\\', 
            'defaultmovedir': 'c:\\', 
            'mintray': '0', 
            'trigwhenfinishseed': '1', 
            'confirmonclose': '1', 
            'kickban': '1', 
            'notsameip': '1', 
            'ipv6': '0', 
            'ipv6_binds_v4': '1', 
            'min_peers': '20', 
            'max_initiate': '40', 
            'alloc_type': 'normal', 
            'alloc_rate': '2', 
            'max_files_open': '50', 
            'max_connections': '0', 
            'lock_files': '1', 
            'lock_while_reading': '0', 
            'double_check': '1', 
            'triple_check': '0', 
            'timeouttracker': '15', 
            'timeoutdownload': '30', 
            'timeoutupload': '1', 
            'scrape': '0', 
            'defaultpriority': '2', 
            'failbehavior': '0', 
            'language_file': 'english.lang', 
            'urm': '0', 
            'urmupthreshold': '10', 
            'urmdelay': '60', 
            'stripedlist': '0', 
#            'mode': '1',
            'window_width': '710', 
            'window_height': '400', 
            'detailwindow_width': '610', 
            'detailwindow_height': '500', 
            'prefwindow_width': '530', 
            'prefwindow_height': '400', 
            'prefwindow_split': '130', 
            'column4_rank': '0', # Title
            'column4_width': '150', 
            'column5_rank': '1', # Progress
            'column5_width': '160', 
            'column6_rank': '2', # BT Status
            'column6_width': '100', 
            'column7_rank': '8', # Priority
            'column7_width': '50', 
            'column8_rank': '5', # ETA
            'column8_width': '85', 
            'column9_rank': '6', # Size
            'column9_width': '75', 
            'column10_rank': '3', # DL Speed
            'column10_width': '65', 
            'column11_rank': '4', # UL Speed
            'column11_width': '60', 
            'column12_rank': '7', # %U/D Size
            'column12_width': '150', 
            'column13_rank': '9', # Error Message
            'column13_width': '60', 
            'column14_rank': '-1', # #Connected Seed
            'column14_width': '60', 
            'column15_rank': '-1', # #Connected Peer
            'column15_width': '60', 
            'column16_rank': '-1', # #Seeing Copies
            'column16_width': '60', 
            'column17_rank': '-1', # Peer Avg Progress
            'column17_width': '60', 
            'column18_rank': '-1', # Download Size
            'column18_width': '75', 
            'column19_rank': '-1', # Upload Size
            'column19_width': '75', 
            'column20_rank': '-1', # Total Speed
            'column20_width': '80', 
            'column21_rank': '-1', # Torrent Name
            'column21_width': '150', 
            'column22_rank': '-1', # Destination
            'column22_width': '150', 
            'column23_rank': '-1', # Seeding Time
            'column23_width': '85', 
            'column24_rank': '-1', # Connections
            'column24_width': '60', 
            'column25_rank': '-1', # Seeding Option
            'column25_width': '80', 
            'fastresume': '1', 
            'randomport': '1', 
            'savecolumnwidth': '1', 
#            'forcenewdir': '1', 
            'upnp_nat_access': '0', 
            'buffer_write' : '4', 
            'buffer_read' : '1', 
            'auto_flush' : '0', 
            'associate' : '1', 
            'movecompleted': '0', 
            'spew0_rank': '0', # Optimistic Unchoke
            'spew0_width': '24', 
            'spew1_rank': '1', # IP
            'spew1_width': '132', 
            'spew2_rank': '2', # Local / Remote
            'spew2_width': '24', 
            'spew3_rank': '3', # Upload Rate
            'spew3_width': '72', 
            'spew4_rank': '4', # Interested
            'spew4_width': '24', 
            'spew5_rank': '5', # Choking
            'spew5_width': '24', 
            'spew6_rank': '6', # Download Rate
            'spew6_width': '72', 
            'spew7_rank': '7', # Interesting
            'spew7_width': '24', 
            'spew8_rank': '8', # Choked
            'spew8_width': '24', 
            'spew9_rank': '9', # Snubbed
            'spew9_width': '24', 
            'spew10_rank': '10', # Downloaded
            'spew10_width': '84', 
            'spew11_rank': '11', # Uploaded
            'spew11_width': '84', 
            'spew12_rank': '12', # Peer Progress
            'spew12_width': '72', 
            'spew13_rank': '-1', # Peer Download Speed
            'spew13_width': '72', 
            'fileinfo0_rank': '0', # Filename
            'fileinfo0_width': '300', 
            'fileinfo1_rank': '1', # Size
            'fileinfo1_width': '100', 
            'fileinfo2_rank': '2', # Progress
            'fileinfo2_width': '60', 
            'fileinfo3_rank': '3', # MD5 Hash
            'fileinfo3_width': '200', 
            'fileinfo4_rank': '-1', # CRC32 Hash
            'fileinfo4_width': '200', 
            'fileinfo5_rank': '-1', # SHA1 Hash
            'fileinfo5_width': '200', 
            'fileinfo6_rank': '-1', # ED2K Hash
            'fileinfo6_width': '200', 
            'color_startup': '000000000', 
            'color_disconnected': '100100100', 
            'color_noconnections': '200000000', 
            'color_noincoming': '150150000', 
            'color_nocomplete': '000000150', 
            'color_good': '000150000', 
            'color_stripe': '245245245', 
            'display_interval': '0.8', 
            'listfont': '', 
            'diskfullthreshold': '0', 
#            'showmenuicons': '1',
            'icons_toolbarbottom': [ACTION_MOVEUP, 
                                    ACTION_MOVEDOWN, 
                                    ACTION_MOVETOP, 
                                    ACTION_MOVEBOTTOM, 
                                    -1, 
                                    ACTION_CLEARCOMPLETED, 
                                    -1, 
                                    ACTION_PAUSEALL, 
                                    ACTION_STOPALL, 
                                    ACTION_UNSTOPALL, 
                                    -1], 
            'icons_toolbartop': [ACTION_ADDTORRENT, 
                                 ACTION_ADDTORRENTNONDEFAULT, 
                                 ACTION_ADDTORRENTURL, 
                                 -1, 
                                 ACTION_RESUME, 
                                 ACTION_PAUSE, 
                                 ACTION_STOP, 
                                 ACTION_QUEUE, 
                                 ACTION_REMOVE, 
                                 -1, 
                                 ACTION_SCRAPE, 
                                 ACTION_DETAILS], 
            'menu_listrightclick': [ACTION_RESUME, 
                                    ACTION_STOP, 
                                    ACTION_PAUSE, 
                                    ACTION_QUEUE, 
                                    ACTION_HASHCHECK, 
                                    -1, 
                                    ACTION_REMOVE, 
                                    ACTION_REMOVEFILE, 
                                    ACTION_EXPORTMENU, 
                                    ACTION_CLEARMESSAGE, 
                                    -1, 
                                    ACTION_LOCALUPLOAD, 
                                    ACTION_CHANGEPRIO, 
                                    -1, 
                                    ACTION_OPENFILEDEST, 
                                    ACTION_OPENDEST, 
                                    ACTION_CHANGEDEST, 
                                    -1, 
                                    ACTION_SCRAPE, 
                                    ACTION_DETAILS],
#            'skipcheck': '0'
        }

        configfilepath = os.path.join(self.getConfigPath(), "abc.conf")
        self.config = ConfigReader(configfilepath, "ABC", defaults)