Пример #1
0
    def get_filter_wdg(self, search, search_type, search_id, div_id):
        
        ajax = AjaxLoader()
        ajax.set_option("search_type", search_type)
        ajax.set_option("search_id", search_id)
        bin_name = "bin_%s_%s" % (search_type, search_id)
        artist_name = "artist_%s_%s" % (search_type, search_id)
        status_name = "status_%s_%s" % (search_type, search_id)
        retired_name = "%s_%s_show_retired" % (search_type, search_id)
        ajax.add_element_name(bin_name )
        ajax.add_element_name(artist_name )
        ajax.add_element_name(status_name )
        ajax.add_element_name(retired_name )
        # add a shot id
        #ajax.add_element_name("shot_id")
        ajax.set_display_id(div_id)

        cls = self.__class__
        class_path = '%s.%s' %(cls.__module__, cls.__name__)
        ajax.set_load_class( class_path )
        refresh_script = ajax.get_refresh_script(show_progress=False)


       
       # select.set_persist_on_submit()

     
        filter_wdg = DivWdg()
        filter_wdg.add_style("margin-bottom: 5px")
        filter_wdg.add_style("text-align: right")
        from asset_filter_wdg import UserFilterWdg
        bin_filter = BinFilterSelectWdg(bin_name, label='Bin: ')
        bin_filter.add_empty_option('-- Any Bin --')
        #bin_filter.get_navigator().set_submit_onchange(False)
        bin_filter.set_event('onchange', refresh_script)
        bin_filter.set_persist_on_submit()
        bin_id = bin_filter.get_value()
        if not bin_id or bin_id == SelectWdg.NONE_MODE:
           #search.add_filter('id','-1')
           search.add_where("\"id\" in (select \"submission_id\" from "\
            " submission_in_bin"\
            " where \"bin_id\" in (select \"id\" from bin where \"type\" = 'dailies') )" )
        elif bin_id:
           search.add_where("\"id\" in (select \"submission_id\" from "\
            " submission_in_bin"\
            " where \"bin_id\" = %s)" %bin_id)
        
        filter_wdg.add(bin_filter)
        hint = HintWdg("To see any bins, you need to create them (Type 'dailies') in the Bins tab.")
        filter_wdg.add(hint)

        
        user_filter = UserFilterWdg(artist_name, label='Artist: ')
        user_filter.get_navigator().set_submit_onchange(False)
        user_filter.get_navigator().set_persist_on_submit()
        user_filter.get_navigator().add_event('onchange', refresh_script)

        user_filter.set_search_column('artist')
        filter_wdg.add(user_filter)

        config_base = 'table' 
       

        user_filter.alter_search(search)

        status_filter = SelectWdg(status_name, label='Status: ')
        status_filter.add_empty_option("-- Any Status--")
        status_filter.set_option('setting', 'dailies_submission_status')
        status_filter.add_event('onchange', refresh_script)
        status_filter.set_persist_on_submit()
        
        filter_wdg.add(status_filter)

        status_value = status_filter.get_value()
        if status_value:
            search.add_filter('status', status_value)

        prefix = "%s_%s" % (search_type, search_id)
        retired_filter = RetiredFilterWdg(prefix=prefix, refresh=False)
        retired_filter.add_event('onclick', refresh_script)
        filter_wdg.add(retired_filter)


        retired_value = WebContainer.get_web().get_form_value(retired_name)
        if retired_value == 'true':
            search.set_show_retired(True)
        button = IconButtonWdg("Refresh", IconWdg.REFRESH, long=False)
        button.add_event("onclick", refresh_script)
        filter_wdg.add(button)


        
        return filter_wdg
Пример #2
0
    def get_filter_wdg(my, search, search_type, search_id, div_id):

        ajax = AjaxLoader()
        ajax.set_option("search_type", search_type)
        ajax.set_option("search_id", search_id)
        bin_name = "bin_%s_%s" % (search_type, search_id)
        artist_name = "artist_%s_%s" % (search_type, search_id)
        status_name = "status_%s_%s" % (search_type, search_id)
        retired_name = "%s_%s_show_retired" % (search_type, search_id)
        ajax.add_element_name(bin_name)
        ajax.add_element_name(artist_name)
        ajax.add_element_name(status_name)
        ajax.add_element_name(retired_name)
        # add a shot id
        #ajax.add_element_name("shot_id")
        ajax.set_display_id(div_id)

        cls = my.__class__
        class_path = '%s.%s' % (cls.__module__, cls.__name__)
        ajax.set_load_class(class_path)
        refresh_script = ajax.get_refresh_script(show_progress=False)

        # select.set_persist_on_submit()

        filter_wdg = DivWdg()
        filter_wdg.add_style("margin-bottom: 5px")
        filter_wdg.add_style("text-align: right")
        from asset_filter_wdg import UserFilterWdg
        bin_filter = BinFilterSelectWdg(bin_name, label='Bin: ')
        bin_filter.add_empty_option('-- Any Bin --')
        #bin_filter.get_navigator().set_submit_onchange(False)
        bin_filter.set_event('onchange', refresh_script)
        bin_filter.set_persist_on_submit()
        bin_id = bin_filter.get_value()
        if not bin_id or bin_id == SelectWdg.NONE_MODE:
            #search.add_filter('id','-1')
            search.add_where("\"id\" in (select \"submission_id\" from "\
             " submission_in_bin"\
             " where \"bin_id\" in (select \"id\" from bin where \"type\" = 'dailies') )" )
        elif bin_id:
            search.add_where("\"id\" in (select \"submission_id\" from "\
             " submission_in_bin"\
             " where \"bin_id\" = %s)" %bin_id)

        filter_wdg.add(bin_filter)
        hint = HintWdg(
            "To see any bins, you need to create them (Type 'dailies') in the Bins tab."
        )
        filter_wdg.add(hint)

        user_filter = UserFilterWdg(artist_name, label='Artist: ')
        user_filter.get_navigator().set_submit_onchange(False)
        user_filter.get_navigator().set_persist_on_submit()
        user_filter.get_navigator().add_event('onchange', refresh_script)

        user_filter.set_search_column('artist')
        filter_wdg.add(user_filter)

        config_base = 'table'

        user_filter.alter_search(search)

        status_filter = SelectWdg(status_name, label='Status: ')
        status_filter.add_empty_option("-- Any Status--")
        status_filter.set_option('setting', 'dailies_submission_status')
        status_filter.add_event('onchange', refresh_script)
        status_filter.set_persist_on_submit()

        filter_wdg.add(status_filter)

        status_value = status_filter.get_value()
        if status_value:
            search.add_filter('status', status_value)

        prefix = "%s_%s" % (search_type, search_id)
        retired_filter = RetiredFilterWdg(prefix=prefix, refresh=False)
        retired_filter.add_event('onclick', refresh_script)
        filter_wdg.add(retired_filter)

        retired_value = WebContainer.get_web().get_form_value(retired_name)
        if retired_value == 'true':
            search.set_show_retired(True)
        button = IconButtonWdg("Refresh", IconWdg.REFRESH, long=False)
        button.add_event("onclick", refresh_script)
        filter_wdg.add(button)

        return filter_wdg