Esempio n. 1
0
    def search(self, query=None):
        if query is None:
            keydialog = control.keyboard('', "Enter Search")
            keydialog.doModal()
            self.query = keydialog.getText() if keydialog.isConfirmed(
            ) else None
        else:
            self.query = query

        if self.query is None or self.query is '': return

        result = client.request(
            "https://www.masterani.me/api/anime/filter?search=%s&order=relevance_desc&page=1&detailed=1"
            % self.query.replace(" ", "%20"))
        try:
            result = json.loads(result)
        except:
            xbmcgui.Dialog().notification(
                "Masterani Redux", "No results for \"%s\"." % self.query)

        print result

        if len(result) is 0:
            return

        items = masterani.extract_data_from_filter_list(result)

        #self.worker()
        self.add_directory(items)
Esempio n. 2
0
    def search(self, query=None):
        if query is None:
            keydialog = control.keyboard('', "Enter Search")
            keydialog.doModal()
            self.query = keydialog.getText() if keydialog.isConfirmed() else None
        else:
            self.query = query

        if self.query is None or self.query is '': return

        result = client.request("https://www.masterani.me/api/anime/filter?search=%s&order=relevance_desc&page=1&detailed=1" % self.query)
        try:
            result = json.loads(result)
            result = result['data']
        except:
            xbmcgui.Dialog().notification("Masterani Redux", "No results for \"%s\"." % self.query)

        print result

        if len(result) is 0:
            return        
        
        items = masterani.extract_data_from_filter_list(result)

        #self.worker()
        self.add_directory(items)
Esempio n. 3
0
    def get_by_select(self, stype=0, sort=0, status=0, genre=[], offset=0):
        self.list = []

        offset_string = ""
        if offset > 1:
            offset_string = "&page=" + str(offset)

        sort_string = ""
        if sort is '0':
            sort_string = "score"
        if sort is '1':
            sort_string = "score_desc"
        if sort is '2':
            sort_string = "title"
        if sort is '3':
            sort_string = "title_desc"

        sort_string = "order=" + sort_string

        try:
            genre = eval(genre)

        except:
            pass

        genre_string = ""
        if type(genre) is int:
            genre_string = "&genres=" + str(genre)

        if type(genre) is list:
            genre_string = "&genres=" + ','.join(str(x) for x in genre)

        try:
            status = eval(status)
        except:
            pass

        try:
            stype = eval(stype)
        except:
            pass

        if stype is None:
            type_string = ""
        else:
            type_string = "&type=" + str(stype)

        if status is None:
            status_string = ""
        else:
            status_string = "&status=" + str(status)

        url = self.filterurl + sort_string + status_string + type_string + genre_string + "&detailed=1" + offset_string
        print url
        result = client.request(url)
        result = json.loads(result)

        self.list = masterani.extract_data_from_filter_list(result)

        if len(self.list) is 0:
            xbmcgui.Dialog().ok("Masterani Redux", "No anime found.",
                                "Try other options.")
            return

        self.last_page = result['last_page']
        self.current_page = result['current_page']
        self.next_page_url = url + "?page=" + str(self.current_page + 1)

        # if offset > self.totalitems: glist = glist[offset: self.totalitems]
        # else: glist = glist[offset: offset + self.itemsperpage]
        #
        #
        # for i in glist: self.list.append({'anime_id': i[0], 'status': i[1]})
        #
        # self.worker()
        self.add_directory(self.list,
                           stype=stype,
                           sgenre=genre,
                           status=status,
                           sort=sort)
Esempio n. 4
0
    def get_by_select(self, stype=0, sort=0, status=0, genre=[], offset=0):
        self.list = []

        offset_string = ""
        if offset > 1:
            offset_string = "&page=" + str(offset)

        sort_string = "score_desc"
        sort = str(sort)
        if sort is '0':
            sort_string = "score"
        if sort is '2':
            sort_string = "title"
        if sort is '3':
            sort_string = "title_desc"

        sort_string = "order="+sort_string

        try:
            genre = urllib.unquote(genre)
            genre = eval(genre)
        except:
            pass

        genre_string = ""
        if type(genre) is int:
            genre_string = "&genres=" + str(genre)

        if type(genre) is list:
            genre_string = "&genres=" + ','.join(str(x) for x in genre)

        try:
            status = eval(status)
        except:
            pass

        try:
            stype = eval(stype)
        except:
            pass

        if stype is None:
            type_string = ""
        else:
            type_string = "&type="+str(stype)

        if status is None:
            status_string = ""
        else:
            status_string = "&status="+str(status)


        url = self.filterurl + sort_string + status_string + type_string + genre_string + "&detailed=1" + offset_string
        print url
        result = client.request(url)
        result = json.loads(result)

        self.list = masterani.extract_data_from_filter_list(result)

        if len(self.list) is 0:
            xbmcgui.Dialog().notification("Masterani Redux", "No anime found. Try other options.")
            return

        self.last_page = result['last_page']
        self.current_page = result['current_page']
        self.next_page_url = url + "?page=" + str(self.current_page + 1)

        # if offset > self.totalitems: glist = glist[offset: self.totalitems]
        # else: glist = glist[offset: offset + self.itemsperpage]
        #
        #
        # for i in glist: self.list.append({'anime_id': i[0], 'status': i[1]})
        #
        # self.worker()
        self.add_directory(self.list, stype=stype, sgenre=genre, status=status, sort=sort)