예제 #1
0
파일: views.py 프로젝트: bobun35/ba
def copy_playlist(request):
    """
    vue utilisee pour charger de nouvelles bande-annonces
    """
    if request.method == "POST":
        form = CopyBaForm(request.POST)
        if form.is_valid():
            usb_ba_path = form.cleaned_data["usb_ba_path"]
            try:
                ### copie des bande annonces
                my_ba_list = MyBaList()
                usb_ba_list = my_ba_list.select_playlist(my_ba_list.listdir_fullpath_ba(usb_ba_path), "prog")
                local_ba_list = my_ba_list.ba_list_prog

                # compare the local_ba_list already there and the usb_ba_list to copy only the new ba
                local_ba_basename = [os.path.basename(x) for x in local_ba_list]
                for each_ba in usb_ba_list:
                    if not os.path.basename(each_ba) in local_ba_basename:
                        shutil.copy(each_ba, env_variables.ba_directory)

                # list again all ba
                my_ba_list = MyBaList().ba_list_all
                whole_ba_list = sorted([os.path.basename(x) for x in my_ba_list])

                ### copie des slides
                my_slide_list = MySlideList()
                usb_slide_list = my_slide_list.select_playlist(
                    my_slide_list.listdir_fullpath_slide(usb_ba_path), "prog"
                )
                local_slide_list = my_slide_list.slide_list_prog

                # compare the local_slide_list already there and the usb_slide_list to copy only the new ba
                local_slide_basename = [os.path.basename(x) for x in local_slide_list]
                for each_slide in usb_slide_list:
                    if not os.path.basename(each_slide) in local_slide_basename:
                        shutil.copy(each_slide, env_variables.ba_directory)

                # list again all slides
                my_slide_list = MySlideList().slide_list_all
                whole_slide_list = sorted([os.path.basename(x) for x in my_slide_list])

                return render(
                    request,
                    "bande_annonce/advanced_playlist.html",
                    {"whole_ba_list": whole_ba_list, "whole_slide_list": whole_slide_list},
                )

            except:
                message = "ECHEC lors de la copie des bande annonces ou des slides"
                return render(request, "bande_annonce/to_print.html", {"to_print": message})
    else:
        form = CopyBaForm()
        return render(request, "bande_annonce/copy_playlist.html", {"form": form})
예제 #2
0
def clean():
    my_ba_list = MyBaList()
    my_slide_list = MySlideList()

    try:
        my_ba_list.delete(my_ba_list.ba_list_in_past)
    except:
        logging.error("erreurs en essayant de deleter les bande-annonces locales")
        print("erreurs en essayant de deleter les bande-annonces locales")

    try:
        my_slide_list.delete(my_slide_list.slide_list_in_past)
    except:
        logging.error("erreurs en essayant de deleter les slides locaux")
        print("erreurs en essayant de deleter les slideds locaux")