Example #1
0
    def get_display(self):
        sobject = self.get_current_sobject()

        snapshots = []
        if isinstance(sobject, Layer):
            # for layer renders, we try to get all render sobjects
            renders = Render.get_all_by_sobject(sobject)
            if renders:
                snapshots = Snapshot.get_by_sobjects(renders, is_current=True)
        else: # for object that has direct snapshots like plates
            snapshot = Snapshot.get_current_by_sobject(sobject)
            if snapshot:
                snapshots.append(snapshot)

        if not snapshots:
            return "<i>- no files -</i>"

        div = DivWdg()

        for snapshot in snapshots:
            file_types = snapshot.get_all_file_types()
            table = Table(css='embed')

            for file_type in file_types:
                table.add_row()
                
                table.add_cell( self.get_open_wdg(snapshot, file_type) )
                dir = snapshot.get_client_lib_dir(file_type=file_type)
                
                
                table.add_cell( "%s: <i>%s</i>" % (file_type, dir) )
         

            div.add(table)
        return div
Example #2
0
    def get_display(self):
        sobject = self.get_current_sobject()

        snapshots = []
        if isinstance(sobject, Layer):
            # for layer renders, we try to get all render sobjects
            renders = Render.get_all_by_sobject(sobject)
            if renders:
                snapshots = Snapshot.get_by_sobjects(renders, is_current=True)
        else:  # for object that has direct snapshots like plates
            snapshot = Snapshot.get_current_by_sobject(sobject)
            if snapshot:
                snapshots.append(snapshot)

        if not snapshots:
            return "<i>- no files -</i>"

        div = DivWdg()

        for snapshot in snapshots:
            file_types = snapshot.get_all_file_types()
            table = Table(css='embed')

            for file_type in file_types:
                table.add_row()

                table.add_cell(self.get_open_wdg(snapshot, file_type))
                dir = snapshot.get_client_lib_dir(file_type=file_type)

                table.add_cell("%s: <i>%s</i>" % (file_type, dir))

            div.add(table)
        return div
Example #3
0
    def get_paths(my, file_type='main'):

        search_key = my.kwargs.get("search_key")

        search_keys = my.kwargs.get("search_keys")
        paths = my.kwargs.get("paths")
        if not paths:
            paths = []
        """
        if search_keys:
            sobjects = Search.get_by_search_keys(search_keys)
            snapshots = Snapshot.get_by_sobjects(sobjects, is_latest=True)
            file_objects = File.get_by_snapshots(snapshots, file_type='main')
            paths = [x.get_web_path() for x in file_objects]

            web_file_objects = File.get_by_snapshots(snapshots, file_type='web')
            web_paths = [x.get_web_path() for x in web_file_objects]
            #paths = web_paths

            for sobject, path in zip(sobjects, paths):
                my.sobject_data[path] = sobject
        """
        if search_keys:
            sobjects = Search.get_by_search_keys(search_keys, keep_order=True)

            # return_dict=True defaults to return the first of each snapshot list
            # and so works well with is_latest=True
            if sobjects and sobjects[0].get_base_search_type(
            ) == "sthpw/snapshot":
                sobj_snapshot_dict = {}
                for sobject in sobjects:
                    search_key = sobject.get_search_key()
                    sobj_snapshot_dict[search_key] = sobject
                snapshots = sobjects

            else:
                sobj_snapshot_dict = Snapshot.get_by_sobjects(sobjects,
                                                              is_latest=True,
                                                              return_dict=True)

                snapshots = sobj_snapshot_dict.values()

            file_dict = Snapshot.get_files_dict_by_snapshots(
                snapshots, file_type=file_type)

            for sobject in sobjects:
                path = ''
                snapshot = sobj_snapshot_dict.get(sobject.get_search_key())
                # it is supposed to get one (latest), just a precaution
                if isinstance(snapshot, list):
                    snapshot = snapshot[0]
                if not snapshot:
                    continue

                file_list = file_dict.get(snapshot.get_code())
                if not file_list:
                    continue
                for file_object in file_list:
                    path = file_object.get_web_path()
                    my.sobject_data[path] = sobject
                    paths.append(path)
# set the current path the user clicks on
                if not my.curr_path and sobject.get_search_key(
                ) == search_key and file_type == 'main':
                    my.curr_path = path

        elif paths:
            return paths

        else:
            # TEST
            paths = [
                '/assets/test/store/The%20Boxter_v001.jpg',
                '/assets/test/store/Another%20one_v001.jpg',
                '/assets/test/store/Whatever_v001.jpg'
            ]

        return paths
Example #4
0
    def get_paths(self, file_type='main'):

        # this is the selected one
        search_key = self.kwargs.get("search_key")
      
        search_keys = self.kwargs.get("search_keys")
        paths = self.kwargs.get("paths")

        if not paths:
            paths = []


        if search_keys:
            sobjects = Search.get_by_search_keys(search_keys, keep_order=True)

            # return_dict=True defaults to return the first of each snapshot list 
            # and so works well with is_latest=True
            if sobjects and sobjects[0].get_base_search_type() == "sthpw/snapshot":
                sobj_snapshot_dict = {}
                for sobject in sobjects:
                    tmp_search_key = sobject.get_search_key()
                    sobj_snapshot_dict[tmp_search_key] = sobject
                snapshots = sobjects

            else:
                sobj_snapshot_dict = Snapshot.get_by_sobjects(sobjects, is_latest=True, return_dict=True)

                snapshots = sobj_snapshot_dict.values()

            file_dict = Snapshot.get_files_dict_by_snapshots(snapshots, file_type=file_type)
            for sobject in sobjects:
                path = ''
                snapshot = sobj_snapshot_dict.get(sobject.get_search_key())
                # it is supposed to get one (latest), just a precaution
                if isinstance(snapshot, list):
                    snapshot = snapshot[0]
                if not snapshot:
                    continue

                file_list = file_dict.get(snapshot.get_code())
                if not file_list: 
                    paths.append("")
                    continue


               
                # NOTE: there should only be one file
                tmp_paths = []
                for file_object in file_list:
                    path = file_object.get_web_path()

                    if path.find("#") != -1:
                        expanded_paths = snapshot.get_expanded_web_paths()
                        path = "|".join(expanded_paths)

                    tmp_paths.append(path)  

                path = "|".join(tmp_paths)
                self.sobject_data[path] = sobject
                paths.append(path)

	            # set the current path the user clicks on
                if not self.curr_path and sobject.get_search_key() == search_key and file_type=='main':
                    self.curr_path = path
                        

        elif paths:
            return paths

        else:
            # TEST
            paths = [
                '/assets/test/store/The%20Boxter_v001.jpg',
                '/assets/test/store/Another%20one_v001.jpg',
                '/assets/test/store/Whatever_v001.jpg'
            ]

        """
        for index,path in enumerate(paths):
            path = urllib.pathname2url(path)
            paths[index] = path
        """

        return paths
Example #5
0
    def get_paths(my, file_type='main'):

        # this is the selected one
        search_key = my.kwargs.get("search_key")
      
        search_keys = my.kwargs.get("search_keys")
        paths = my.kwargs.get("paths")

        if not paths:
            paths = []
        """
        if search_keys:
            sobjects = Search.get_by_search_keys(search_keys)
            snapshots = Snapshot.get_by_sobjects(sobjects, is_latest=True)
            file_objects = File.get_by_snapshots(snapshots, file_type='main')
            paths = [x.get_web_path() for x in file_objects]

            web_file_objects = File.get_by_snapshots(snapshots, file_type='web')
            web_paths = [x.get_web_path() for x in web_file_objects]
            #paths = web_paths

            for sobject, path in zip(sobjects, paths):
                my.sobject_data[path] = sobject
        """
        if search_keys:
            sobjects = Search.get_by_search_keys(search_keys, keep_order=True)

            # return_dict=True defaults to return the first of each snapshot list 
            # and so works well with is_latest=True
            if sobjects and sobjects[0].get_base_search_type() == "sthpw/snapshot":
                sobj_snapshot_dict = {}
                for sobject in sobjects:
                    tmp_search_key = sobject.get_search_key()
                    sobj_snapshot_dict[tmp_search_key] = sobject
                snapshots = sobjects

            else:
                sobj_snapshot_dict = Snapshot.get_by_sobjects(sobjects, is_latest=True, return_dict=True)

                snapshots = sobj_snapshot_dict.values()

            file_dict = Snapshot.get_files_dict_by_snapshots(snapshots, file_type=file_type)

            for sobject in sobjects:
                path = ''
                snapshot = sobj_snapshot_dict.get(sobject.get_search_key())
                # it is supposed to get one (latest), just a precaution
                if isinstance(snapshot, list):
                    snapshot = snapshot[0]
                if not snapshot:
                    continue

                file_list = file_dict.get(snapshot.get_code())
                if not file_list: 
                    continue
                
                for file_object in file_list:
                    path = file_object.get_web_path()
                    my.sobject_data[path] = sobject
                    paths.append(path)  
	            # set the current path the user clicks on
                if not my.curr_path and sobject.get_search_key() == search_key and file_type=='main':
                    my.curr_path = path
                        

        elif paths:
            return paths

        else:
            # TEST
            paths = [
                '/assets/test/store/The%20Boxter_v001.jpg',
                '/assets/test/store/Another%20one_v001.jpg',
                '/assets/test/store/Whatever_v001.jpg'
            ]

        return paths
Example #6
0
    def get_paths(self, file_type='main'):

        # this is the selected one
        search_key = self.kwargs.get("search_key")

        search_keys = self.kwargs.get("search_keys")
        paths = self.kwargs.get("paths")

        if not paths:
            paths = []

        if search_keys:
            sobjects = Search.get_by_search_keys(search_keys, keep_order=True)

            # return_dict=True defaults to return the first of each snapshot list
            # and so works well with is_latest=True
            if sobjects and sobjects[0].get_base_search_type(
            ) == "sthpw/snapshot":
                sobj_snapshot_dict = {}
                for sobject in sobjects:
                    tmp_search_key = sobject.get_search_key()
                    sobj_snapshot_dict[tmp_search_key] = sobject
                snapshots = sobjects

            else:
                sobj_snapshot_dict = Snapshot.get_by_sobjects(sobjects,
                                                              is_latest=True,
                                                              return_dict=True)

                snapshots = sobj_snapshot_dict.values()

            file_dict = Snapshot.get_files_dict_by_snapshots(
                snapshots, file_type=file_type)
            for sobject in sobjects:
                path = ''
                snapshot = sobj_snapshot_dict.get(sobject.get_search_key())
                # it is supposed to get one (latest), just a precaution
                if isinstance(snapshot, list):
                    snapshot = snapshot[0]
                if not snapshot:
                    continue

                file_list = file_dict.get(snapshot.get_code())
                if not file_list:
                    paths.append("")
                    continue

                # NOTE: there should only be one file
                tmp_paths = []
                for file_object in file_list:
                    path = file_object.get_web_path()

                    if path.find("#") != -1:
                        expanded_paths = snapshot.get_expanded_web_paths()
                        path = "|".join(expanded_paths)

                    tmp_paths.append(path)

                path = "|".join(tmp_paths)
                self.sobject_data[path] = sobject
                paths.append(path)

                # set the current path the user clicks on
                if not self.curr_path and sobject.get_search_key(
                ) == search_key and file_type == 'main':
                    self.curr_path = path

        elif paths:
            return paths

        else:
            # TEST
            paths = [
                '/assets/test/store/The%20Boxter_v001.jpg',
                '/assets/test/store/Another%20one_v001.jpg',
                '/assets/test/store/Whatever_v001.jpg'
            ]
        """
        for index,path in enumerate(paths):
            path = urllib.pathname2url(path)
            paths[index] = path
        """

        return paths