def get_offer_list(folder_id = None): if folder_id is None: folders_query=Folder.list() else: folders_query = [] f = Folder.get_by_id(int(folder_id)) if f: folders_query.append(f) courses_query=Course.list_for_enroll() folders= set([]) courses = [] result = [] for course in courses_query: folders.add(course.folder_key) courses.append(course) logging.info(folders) logging.info(courses) for folder in folders_query: fk = str(folder.key()) logging.info('fk:%s'%fk) if fk in folders: logging.info('in') sub_list = [c for c in courses if fk==c.folder_key] result.append({'folder':folder, 'courses':sub_list }) pass return result
def delete(request, folder_id): folder = Folder.get_by_id(int(folder_id)) if folder is None: raise Http404 folder.delete() rebuild_folders() return redirect('../..')
def edit(request, folder_id): folder = Folder.get_by_id(int(folder_id)) if folder is None: raise Http404 if request.method == 'POST': form = FolderForm(request.POST, instance=folder) if form.is_valid(): logging.info('edit folder before %s'% folder) form.save(commit=False) logging.info('edit folder after %s'% folder) folder.save() cdbsync.plan_cdb_put(folder) rebuild_folders() return redirect('../..') else: form = FolderForm(instance=folder) return render_to_response('admin/folders_edit.html', RequestContext(request, {'form':form}))