예제 #1
0
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)
예제 #2
0
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)
예제 #3
0
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('/')
예제 #4
0
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('/')
예제 #5
0
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)