def page_edit(request, menu_id=0): if not request.user.is_active: return HttpResponseRedirect(request.META.get('HTTP_REFERER')) menu_id = int(menu_id) lang = request.GET.get('lang') page = get_or_none(Page, menu_id=menu_id) contents = request.POST.get('contents') if contents: if lang == 'en': page.contents_en = contents elif lang == 'ja': page.contents_jp = contents else: page.contents = contents page.user = request.user page.date_created = timezone.now() page.save() if lang == 'en': return HttpResponseRedirect('/menu/%d?lang=en' % menu_id) elif lang == 'ja': return HttpResponseRedirect('/menu/%d?lang=ja' % menu_id) return HttpResponseRedirect('/menu/%d' % menu_id) if lang == 'en': page.contents = page.contents_en elif lang == 'ja': page.contents = page.contents_jp context = { 'user': request.user, 'lang': lang, 'page': page, 'menus': get_menu(), 'meta': { 'title': "%s 수정" % set_menu_title(page.menu, lang), 'con': '%s페이지 수정입니다.' % set_menu_title(page.menu, lang), 'image': '/static/img/lab.png' }, 'appname': page.menu.appname } return render(request, 'page_edit.html', context)
def page(request, menu_id=0): lang = request.GET.get('lang') page = get_or_none(Page, menu__id=menu_id) if lang == 'en': page.contents = page.contents_en elif lang == 'ja': page.contents = page.contents_jp context = { 'user': request.user, 'lang': lang, 'page': page, 'menus': get_menu(), 'meta': { 'title': set_menu_title(page.menu, lang), 'con': '%s페이지입니다.' % set_menu_title(page.menu, lang), 'image': '/static/img/lab.png' }, 'appname': page.menu.appname } return render(request, 'page.html', context)
def board_6(request, menu=None): lang = request.GET.get('lang') page = request.GET.get('page', 1) if menu: list = Board.objects.filter(menu=menu).order_by("-date_updated") list = Paginator(list, 15) context = { 'menu': menu, 'list': list.page(page), 'user': request.user, 'lang': lang, 'menus': get_menu(), 'meta': { 'title': "%s" % set_menu_title(menu, lang), 'con': '%s 게시판 입니다.' % set_menu_title(menu, lang), 'image': '/static/img/lab.png' }, 'appname': 'board_%d' % (menu.mode) } return render(request, 'board_%d.html' % (menu.mode), context) return HttpResponseRedirect('/')
def board_write(request, menu_id=None): if not request.user.is_superuser: return HttpResponseRedirect(request.META.get('HTTP_REFERER')) menu = get_or_none(Menu, id=menu_id) lang = request.GET.get('lang') if request.POST.get("input_title"): input_title = request.POST.get("input_title") input_con = request.POST.get("input_con") input_headline = int(request.POST.get("input_headline", 0)) board = Board.objects.create(menu=menu, user=request.user, title=input_title, con=input_con, is_headline=input_headline) if board: for img_file in request.FILES.getlist('input_file'): board_img = BoardFile.objects.create(board=board, src="", is_visible=True) board_img.src.save(img_file.name, ContentFile(img_file.read())) return HttpResponseRedirect("/board/detail/%d" % (board.id)) if menu: context = { 'menu': menu, 'user': request.user, 'lang': lang, 'menus': get_menu(), 'meta': { 'title': "%s 글쓰기" % set_menu_title(menu, lang), 'con': '%s 게시판 글쓰기 입니다.' % set_menu_title(menu, lang), 'image': '/static/img/lab.png' }, 'appname': 'board_write' } return render(request, 'board_write.html', context) return HttpResponseRedirect('/')
def main(request): lang = request.GET.get('lang') menu_icons = [ 'xi-chart-pyramid', 'xi-lecture', 'xi-chart-star', 'xi-family', 'xi-book-spread', 'xi-tablet-pen', 'xi-code', 'xi-tagged-book' ] boards = BoardFile.objects.values('board').distinct() board_archive = Board.objects.filter( id__in=boards).order_by("-date_updated") activities = Board.objects.filter( menu__parent__id=33).order_by("-date_updated") main_img = Board.objects.filter(menu__parent__id=33).order_by("?") if main_img: try: main_img = main_img[0].get_files().order_by("?")[0].src.url except Exception: main_img = None latests = [] board_recent = Board.objects.all().order_by("-date_updated")[:5] page_recent = Page.objects.all().order_by("-date_created")[:5] for ele in board_recent: latests.append({ "unit": set_menu_title(ele.menu, lang), "title": translate_language(ele.title, lang), "url": "/board/detail/%d" % ele.id, "date": ele.date_updated }) for ele in page_recent: if ele.menu.parent: latests.append({ "unit": set_menu_title(ele.menu.parent, lang), "title": set_menu_title(ele.menu, lang), "url": "/menu/%d" % ele.menu.id, "date": ele.date_created }) else: latests.append({ "unit": set_menu_title(ele.menu, lang), "title": set_menu_title(ele.menu, lang), "url": "/menu/%d" % ele.menu.id, "date": ele.date_created }) latests = sorted(latests, key=itemgetter('date'), reverse=True) context = { 'user': request.user, 'lang': lang, 'menu_icons': menu_icons, 'menus': get_menu(), 'main_img': main_img, 'board_archive': board_archive, 'latests': latests[:5], 'activities': activities[:4], 'meta': { 'title': '정보·컴퓨팅교육 연구실', 'con': '정보 및 정보학, 교육과정, 교수학습방법, 교육평가, 교원양성 및 연수, 도구 및 환경', 'image': '/static/img/lab.png' }, 'appname': 'main' } return render(request, 'main.html', context)