Example #1
0
File: menu.py Project: nano13/tambi
    def __init__(self, context, menubar):
        bituza = Bituza()

        bituzaMenu = menubar.addMenu('&BiTuZa')

        interlinear = bituzaMenu.addMenu(
            QIcon.fromTheme("x-office-address-book"), 'interlinear')
        bibles = bituza.structure('', [])
        for book in bibles.payload:
            bookMenu = interlinear.addMenu(
                QIcon.fromTheme("x-office-address-book"), book[2])

            for i in range(book[3]):
                chapterAction = QAction(QIcon.fromTheme("text-x-generic"),
                                        str(i + 1), context)
                bookMenu.addAction(chapterAction)

                chapterAction.triggered.connect(
                    functools.partial(
                        context.addNewCliTabWithCommand,
                        'bituza.word "' + book[2] + '" ' + str(i + 1)))
Example #2
0
 def books(self, c, a):
     bituza = Bituza(self.Universe)
     books = bituza.getBookList()
     
     numbers = [50, 40, 27, 36, 34, 24, 21, 4, 31, 24, 22, 25, 29, 36, 10, 13, 10, 42, 150, 31, 12, 8, 66, 52, 5, 48, 12, 14, 3, 9, 1, 4, 7, 3, 3, 3, 2, 14, 4, 28, 16, 24, 21, 28, 16, 16, 13, 6, 6, 4, 4, 5, 3, 6, 4, 3, 1, 13, 5, 5, 3, 5, 1, 1, 1, 22]
     
     output = []
     metaData_list = []
     for i in range (0, len(books)):
         output.append( unicode( books[i] ) + " " + unicode( numbers[i] ) )
         #mime_list.append("command/bible")
         
         metaData = MetaData()
         metaData.Language = "default"
         metaData.ExecuteCommand = "%CONTENT%"
         
         metaData_list.append(metaData)
         
     #books = self.getBookList()
     
     self.ResultObject.Payload.List = output
     self.ResultObject.Description.List = metaData_list
     return self.ResultObject
Example #3
0
 def __init__(self, universe):
     self.Universe = universe
     
     #createResultObject = CreateResultObject()
     #self.ResultObject = createResultObject.getObject()
     
     self.Bituza = Bituza(self.Universe)
     self.booksDictOT = self.Bituza.booksDictOT()
     self.booksDictNT = self.Bituza.booksDictNT()
     
     self.SwordParser = SwordParser()
     
     self.history = History("sword_history", self.Universe.ConfigFiles)
     
     ConfigFile = Conf("./modules/sword/", "sword.conf")
     self.sword_module_name = ConfigFile.readVar("sword", "default_bible")
     self.language = ConfigFile.readVar("sword", "default_language")
     
     dir_path = ConfigFile.readVar("sword", "sword_directory")
     self.modules_path = dir_path + "/modules/texts/ztext"
     self.mods_d_path = dir_path + "/mods.d"
     
     self.ModsD = ModsD(self.mods_d_path)
Example #4
0
class Reader(object):
    def __init__(self, universe):
        self.Universe = universe
        
        #createResultObject = CreateResultObject()
        #self.ResultObject = createResultObject.getObject()
        
        self.Bituza = Bituza(self.Universe)
        self.booksDictOT = self.Bituza.booksDictOT()
        self.booksDictNT = self.Bituza.booksDictNT()
        
        self.SwordParser = SwordParser()
        
        self.history = History("sword_history", self.Universe.ConfigFiles)
        
        ConfigFile = Conf("./modules/sword/", "sword.conf")
        self.sword_module_name = ConfigFile.readVar("sword", "default_bible")
        self.language = ConfigFile.readVar("sword", "default_language")
        
        dir_path = ConfigFile.readVar("sword", "sword_directory")
        self.modules_path = dir_path + "/modules/texts/ztext"
        self.mods_d_path = dir_path + "/mods.d"
        
        self.ModsD = ModsD(self.mods_d_path)
    
    def readBible(self, c, a):
        try:
            book = a[0]
            print "BOOK ", book
        except IndexError:
            self.ResultObject.Error.Message = "Bitte Buchname angeben"
            return self.ResultObject
        else:
            if book.isdigit():
                book_id = int(book)
            else:
                book_id = self.getBookID(book)
            if not book_id:
                self.ResultObject.Error.Message = "Buch nicht gefunden"
                return self.ResultObject
            
        try:
            chapter = a[1]
        except IndexError:
            #self.ResultObject.Error.Message = "Bitte Kapitel angeben"
            #return self.ResultObject
            chapter = 1
        
        try:
            verse = a[2]
            verse = verse.split("-")
        except:
            pass
            "EXAMPLE: 1mose 1"
            #self.history.historyWrite(book + " " + chapter)
            return self.readWholeChapter(book_id, chapter)
        else:
            if len(verse) == 1:
                "EXAMPLE: 1mose 1 2"
                return self.readOneVerse(book_id, chapter, verse[0])
            elif len(verse) == 2:
                "EXAMPLE: 1mose 1 2-4"
                return self.readVerseRange(book_id, chapter, verse)
            
    def readOneVerse(self, book_number, chapter, verse):
        book_names = self.bookNamesDict()
        print "BOOK NUMBER", book_number
        if book_number:
            book_name = book_names[int(book_number)]
        else:
            self.ResultObject.Error.Message = "Buch nicht gefunden"
            return self.ResultObject
        
        module = ZModule(self.sword_module_name, self.modules_path)
        try:
            try:
                result = module.text_for_ref(book_name, chapter, verse)
            except ValueError:
                "EXAMPLE: 1mose 1-4"
                self.ResultObject.Error.Message = "Bitte nur ein Kapitel angeben"
                return self.ResultObject
            except TypeError:
                self.ResultObject.Error.Message = "ausgewaehltes Bibelmodul nicht verfuegbar. Versuchen Sie es evtl. klein zu schreiben."
                return self.ResultObject
            
        except IndexError:
            self.ResultObject.Error.Message = "Kapitel existiert nicht"
            return self.ResultObject
        else:
            self.history.historyWrite(str(book_number) + " " + str(chapter) )
            
            "ensure correct character encoding"
            try:
                #print "sword -> result: ", result
                result = result.decode("utf8")
            except:
                result = result.decode("iso-8859-1")
            
            try:
                bible_text, title_text, note_text = self.SwordParser.feed(result)
            except Exception, e:
                print "ERROR WHILE PARSING: ", e
            
            metaData = MetaData()
            metaData.Language = self.language
            
            #self.ResultObject.Payload.String = bible_text
            #self.ResultObject.Description.MetaData = metaData
            #return self.ResultObject
            return bible_text