Beispiel #1
0
def brand_add():
    """
        Add a new brand
    """
    from openstudio.os_forms import OsForms
    response.title = T('Shop')
    response.subtitle = T('Catalog')
    response.view = 'general/tabs_menu.html'

    return_url = shop_brand_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.shop_brands,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)
    menu = catalog_get_menu('brands')

    content = DIV(
        H4(T('Add brand')),
        form
    )

    return dict(content=content,
                save=result['submit'],
                back=back,
                menu=menu)
Beispiel #2
0
def product_edit():
    """
        Edit a product
    """
    from openstudio.os_forms import OsForms
    response.title = T('Shop')
    response.subtitle = T('Catalog')
    response.view = 'general/tabs_menu.html'

    return_url = shop_products_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.shop_products,
        return_url,
        request.vars['spID'],
        onaccept=product_onaccept
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = DIV(
        H4(T('Edit product')),
        form
    )

    menu = catalog_get_menu('products')

    return dict(content=content,
                save=result['submit'],
                back=back,
                menu=menu)
Beispiel #3
0
def payment_attendance_list_rate_edit():
    """
        Edit a supplier
        request.vars['tpalID'] is expected to be teachers payment attendance list Id
    """
    from openstudio.os_forms import OsForms

    response.title = T('Teachers Payment Attendance List')
    response.subtitle = T('Edit')
    response.view = 'general/only_content.html'
    tpalrID = request.vars['tpalrID']
    tpalID = request.vars['tpalID']

    return_url = URL('payment_attendance_list_rates', vars = dict(tpalID=tpalID))

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.teachers_payment_attendance_lists_rates,
        return_url,
        tpalrID
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = DIV(
        H4(T('Edit List Rate')),
        form
    )

    return dict(content=content,
                save=result['submit'],
                back=back)
Beispiel #4
0
def product_edit():
    """
        Edit a product
    """
    from openstudio.os_forms import OsForms

    spID = request.vars['spID']
    sp = db.shop_products(spID)

    response.title = T('Shop')
    response.subtitle = T(
        'Edit product - {product_name}'.format(product_name=sp.Name))
    response.view = 'general/tabs_menu.html'

    return_url = shop_products_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(db.shop_products,
                                           URL(vars={'spID': spID}),
                                           spID,
                                           onaccept=product_onaccept)

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = DIV(H4(T('Edit product')), form)

    menu = product_edit_get_menu(request.function, spID)

    return dict(content=content, save=result['submit'], back=back, menu=menu)
Beispiel #5
0
def product_variant_edit():
    """
        Edit a product variant
    """
    from openstudio.os_forms import OsForms
    from openstudio.os_shop_product import ShopProduct

    spID = request.vars['spID']
    spvID = request.vars['spvID']

    product = ShopProduct(spID)

    response.title = T('Shop')
    response.subtitle = T(
        'Edit product - {product_name}'.format(product_name=product.row.Name))
    response.view = 'general/tabs_menu.html'

    return_url = product_variants_get_return_url(spID)

    if product.has_products_set():
        db.shop_products_variants.Name.writable = False

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.shop_products_variants,
        return_url,
        spvID,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    menu = product_edit_get_menu('product_variants', spID)

    return dict(content=form, save=result['submit'], back=back, menu=menu)
Beispiel #6
0
def product_variant_add():
    """
        Add a product variant
    """
    from openstudio.os_shop_product import ShopProduct
    from openstudio.os_forms import OsForms

    spID = request.vars['spID']
    product_variant_add_check_products_set(spID)

    product = ShopProduct(spID)

    response.title = T('Shop')
    response.subtitle = T(
        'Edit product - {product_name}'.format(product_name=product.row.Name))
    response.view = 'general/tabs_menu.html'

    return_url = product_variants_get_return_url(spID)

    db.shop_products_variants.shop_products_id.default = spID
    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.shop_products_variants,
        return_url,
    )

    form = result['form']
    content = DIV(H4(T("Add variant")), BR(), form)

    back = os_gui.get_button('back', return_url)

    menu = product_edit_get_menu('product_variants', spID)

    return dict(content=content, save=result['submit'], back=back, menu=menu)
Beispiel #7
0
def payment_fixed_rate_class():
    """
        Add default fixed rate for this teacher
    """
    from openstudio.os_customer import Customer
    from openstudio.os_teacher import Teacher
    from openstudio.os_forms import OsForms

    teID = request.vars['teID']
    clsID = request.vars['clsID']
    response.view = 'general/only_content.html'

    customer = Customer(teID)
    response.title = customer.get_name()
    response.subtitle = T("Set class rate")

    record = db.classes(clsID)
    location = db.school_locations[record.school_locations_id].Name
    classtype = db.school_classtypes[record.school_classtypes_id].Name
    class_name = NRtoDay(record.Week_day) + ' ' + \
                 record.Starttime.strftime(TIME_FORMAT) + ' - ' + \
                 classtype + ', ' + location

    os_forms = OsForms()
    return_url = payment_fixed_rate_default_return_url(teID)

    db.teachers_payment_fixed_rate_class.auth_teacher_id.default = teID
    db.teachers_payment_fixed_rate_class.classes_id.default = clsID

    teacher = Teacher(teID)
    payment = db.teachers_payment_fixed_rate_class(
        classes_id = clsID,
        auth_teacher_id = teID
    )
    if payment:
        title = H4(T('Edit class rate for'), ' ', class_name)
        result = os_forms.get_crud_form_update(
            db.teachers_payment_fixed_rate_class,
            return_url,
            payment.id
        )
    else:
        title = H4(T('Add class rate for'), ' ', class_name)
        result = os_forms.get_crud_form_create(
            db.teachers_payment_fixed_rate_class,
            return_url,
        )

    form = result['form']

    content = DIV(
        title,
        form
    )

    back = os_gui.get_button('back', return_url)

    return dict(content=content,
                back=back,
                save=result['submit'])
Beispiel #8
0
def product_add():
    """
        Add a new product
    """
    from openstudio.os_forms import OsForms
    response.title = T('Shop')
    response.subtitle = T('Catalog')
    response.view = 'general/tabs_menu.html'

    return_url = shop_products_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.shop_products,
        '/shop_manage/product_edit?spID=[id]',
        onaccept=product_onaccept,
        message_record_created=T(
            "Added product, you can now add variants and categories"))

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = DIV(H4(T('Add product')), form)

    menu = catalog_get_menu('products')

    return dict(content=content, save=result['submit'], back=back, menu=menu)
Beispiel #9
0
def payment_attendance_list_add():
    """
    page to add a new attendance list
    :return:
    """
    from openstudio.os_forms import OsForms
    response.title = T("Payment Attendance List")
    response.subtitle = T('New Payment Attendance List')
    response.view = 'general/only_content.html'
    return_url = payment_attendance_list_add_edit_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.teachers_payment_attendance_lists,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)


    content = DIV(
        H4(T('Add Attendance List')),
        form
    )

    return dict(content=content,
                save=result['submit'],
                back=back)
Beispiel #10
0
def payment_travel_edit():
    """
        Add travel allowance for a teacher
    """
    from openstudio.os_customer import Customer
    from openstudio.os_forms import OsForms

    teID = request.vars['teID']
    tpfrtID = request.vars['tpfrtID']

    customer = Customer(teID)
    response.title = customer.get_name()
    response.subtitle = T("Edit travel allowance")
    response.view = 'general/only_content.html'

    return_url = payment_travel_return_url(teID)

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.teachers_payment_travel,
        return_url,
        tpfrtID
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    return dict(content=form,
                save=result['submit'],
                back=back)
Beispiel #11
0
def payment_attendance_list_edit():
    """
        Edit an attendance list
        request.vars['tpalID'] is expected to be db.teachers_payment_attendance_lists.id
    """
    from openstudio.os_forms import OsForms

    response.title = T("Payment Attendance List")
    response.subtitle = T('Edit Name')
    response.view = 'general/only_content.html'
    tpalID = request.vars['tpalID']

    return_url = payment_attendance_list_add_edit_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.teachers_payment_attendance_lists,
        return_url,
        tpalID
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = DIV(
        H4(T('Edit name of attendance list')),
        form
    )

    return dict(content=content,
                save=result['submit'],
                back=back)
Beispiel #12
0
def notifications_email_add():
    """
    Subscribe email address to notification
    """
    from openstudio.os_forms import OsForms
    response.title = T('Settings')
    response.subtitle = T('Mail')
    response.view = 'general/tabs_menu.html'

    snID = request.vars['snID']

    return_url = URL('notifications')

    db.sys_notifications_email.sys_notifications_id.default = snID
    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.sys_notifications_email,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)
    menu = mail_get_menu(request.function)

    row = db.sys_notifications(snID)

    content = DIV(H4(T('Add Email to '), row.Notification), form)

    return dict(content=content, save=result['submit'], back=back, menu=menu)
Beispiel #13
0
def brand_edit():
    """
        Edit a brand
        request.vars['sbID'] is expected to be db.shop_brands.id
    """
    from openstudio.os_forms import OsForms

    response.title = T('Shop')
    response.subtitle = T('Catalog')
    response.view = 'general/tabs_menu.html'
    sbID = request.vars['sbID']

    return_url = shop_brand_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.shop_brands,
        return_url,
        sbID
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)
    menu = catalog_get_menu('brands')

    content = DIV(
        H4(T('Edit brand')),
        form
    )

    return dict(content=content,
                save=result['submit'],
                back=back,
                menu=menu)
def reminder_add():
    """
    add a reminder
    :return:
    """
    from openstudio.os_forms import OsForms
    response.title = T('Classes')
    response.subtitle = T('Sub teachers')
    response.view = 'general/tabs_menu.html'

    db.sys_email_reminders.Reminder.default = 'teachers_sub_request_open'

    return_url = reminders_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.sys_email_reminders,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)
    menu = get_menu('reminders')

    content = DIV(
        H4(T('Add reminder')),
        form
    )

    return dict(content=content,
                save=result['submit'],
                back=back,
                menu=menu)
Beispiel #15
0
def payment_fixed_rate_default():
    """
        Add default fixed rate for this teacher
    """
    from openstudio.os_customer import Customer
    from openstudio.os_teacher import Teacher
    from openstudio.os_forms import OsForms

    teID = request.vars['teID']
    response.view = 'general/only_content.html'

    customer = Customer(teID)
    response.title = customer.get_name()
    response.subtitle = T("Teacher profile")

    os_forms = OsForms()
    return_url = payment_fixed_rate_default_return_url(teID)

    db.teachers_payment_fixed_rate_default.auth_teacher_id.default = teID

    teacher = Teacher(teID)
    default_payments = teacher.get_payment_fixed_rate_default()
    if default_payments:
        title = H4(T('Edit default rate'))
        result = os_forms.get_crud_form_update(
            db.teachers_payment_fixed_rate_default,
            return_url,
            default_payments.first().id
        )
    else:
        title = H4(T('Add default rate'))
        result = os_forms.get_crud_form_create(
            db.teachers_payment_fixed_rate_default,
            return_url,
        )

    form = result['form']

    content = DIV(
        title,
        form
    )

    back = os_gui.get_button('back', return_url)

    return dict(content=content,
                #menu=menu,
                back=back,
                save=result['submit'])
Beispiel #16
0
def edit_template():
    """
        Page to edit an email_template
    """
    from openstudio.os_forms import OsForms

    response.title = T('Settings')
    response.subtitle = T('Mail')
    response.view = 'settings/email_templates.html'

    template = request.vars['template']

    row = db.sys_email_templates(Name=template)
    template_content = row.TemplateContent
    form = SQLFORM.factory(Field("email_template",
                                 'text',
                                 default=template_content,
                                 label=T("Template content")),
                           submit_button=T("Save"),
                           separator=' ',
                           formstyle='bootstrap3_stacked')

    form_element = form.element('#no_table_email_template')
    form_element['_class'] += ' tmced'

    os_forms = OsForms()
    result = os_forms.set_form_id_and_get_submit_button(form, 'MainForm')
    form = result['form']
    submit = result['submit']
    if form.accepts(request.vars, session):
        # check smtp_signature
        email_template = request.vars['email_template']
        query = (db.sys_email_templates.Name == template)
        db(query).update(TemplateContent=email_template)

        # User feedback
        session.flash = T('Saved')

        # reload so the user sees how the values are stored in the db now
        redirect(URL(vars={'template': template}))

    back = os_gui.get_button('back', URL('templates'))
    # submenu = email_templates_get_menu(template)
    content = DIV(H4(T("Edit template: {name}".format(name=row.Title))), form)

    return dict(content=content,
                back=back,
                menu=mail_get_menu('templates'),
                save=submit)
Beispiel #17
0
def template():
    """
        Page to edit an email_template
    """
    from openstudio.os_forms import OsForms

    response.title = T('Email Settings')
    response.subtitle = T('Templates')
    response.view = 'settings/email_templates.html'

    template = request.vars['template']

    template_content = get_sys_property(template)

    form = SQLFORM.factory(Field("email_template",
                                 'text',
                                 default=template_content,
                                 label=T("Edit template")),
                           submit_button=T("Save"),
                           separator=' ',
                           formstyle='bootstrap3_stacked')

    form_element = form.element('#no_table_email_template')
    form_element['_class'] += ' tmced'

    os_forms = OsForms()
    result = os_forms.set_form_id_and_get_submit_button(form, 'MainForm')
    form = result['form']
    submit = result['submit']

    if form.accepts(request.vars, session):
        # check smtp_signature
        email_template = request.vars['email_template']
        set_sys_property(template, email_template)

        # User feedback
        session.flash = T('Saved')

        # reload so the user sees how the values are stored in the db now
        redirect(URL(vars={'template': template}))

    submenu = email_templates_get_menu(template)
    content = DIV(submenu, BR(), form)

    return dict(content=content, menu=mail_get_menu('templates'), save=submit)
Beispiel #18
0
def list_rates_get_form_add(tpalID):
    """
        Returns add form for invoice items
    """
    from openstudio.os_forms import OsForms

    db.teachers_payment_attendance_lists_rates.teachers_payment_attendance_lists_id.default = tpalID

    number_of_rates = payment_attendance_list_count_rates(tpalID)
    db.teachers_payment_attendance_lists_rates.AttendanceCount.default = number_of_rates + 1

    return_url = URL(vars={'tpalID': tpalID})

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.teachers_payment_attendance_lists_rates,
        return_url,
    )

    return result['form']
Beispiel #19
0
def add():
    """
        Add a new expense
    """
    from openstudio.os_forms import OsForms
    response.title = T('Finance')
    response.subtitle = T('Add expense')
    response.view = 'general/only_content.html'

    return_url = add_edit_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.accounting_expenses,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    return dict(content=form, save=result['submit'], back=back)
Beispiel #20
0
def additional_item_edit():
    """
    Set opening balance
    """
    from openstudio.os_forms import OsForms

    acaiID = request.vars['acaiID']

    date = session.finance_cashbook_date

    item = db.accounting_cashbooks_additional_items(acaiID)

    booking_type = item.BookingType
    if booking_type == 'credit':
        subtitle_type = T("Income")
    elif booking_type == 'debit':
        subtitle_type = T("Expense")

    response.title = T('Cash book')
    response.subtitle = SPAN(T("Daily summary"), ': ',
                             date.strftime(DATE_FORMAT), ' - ',
                             T("Edit %s item") % subtitle_type)
    response.view = 'general/only_content.html'

    return_url = index_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.accounting_cashbooks_additional_items,
        return_url,
        acaiID,
        message_record_updated=T("Saved"),
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = form

    return dict(content=content, save=result['submit'], back=back)
Beispiel #21
0
def edit():
    """
    Edit expense
    request.vars['aeID'] is expected to be db.accounting_expenses.id
    """
    from openstudio.os_forms import OsForms

    response.title = T('Finance')
    response.subtitle = T('Edit expense')
    response.view = 'general/only_content.html'
    aeID = request.vars['aeID']

    return_url = add_edit_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(db.accounting_expenses, return_url,
                                           aeID)

    form = result['form']
    back = os_gui.get_button('back', return_url)

    return dict(content=form, save=result['submit'], back=back)
Beispiel #22
0
def cash_count_edit():
    """
    Set opening balance
    """
    from openstudio.os_forms import OsForms

    ccID = request.vars['ccID']

    date = session.finance_cashbook_date
    cc = db.accounting_cashbooks_cash_count(ccID)
    if cc.CountType == 'opening':
        count_type = T("opening")
    elif cc.CountType == 'closing':
        count_type = T("closing")

    response.title = T('Cash book')
    response.subtitle = SPAN(T("Daily summary"), ': ',
                             date.strftime(DATE_FORMAT), ' - ',
                             T("Edit %s count") % count_type)
    response.view = 'general/only_content.html'

    return_url = index_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(
        db.accounting_cashbooks_cash_count,
        return_url,
        ccID,
        message_record_updated=T("Saved"),
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = form

    return dict(content=content, save=result['submit'], back=back)
Beispiel #23
0
def mailing_list_add():
    """
        Add a new mailing_list
    """
    from openstudio.os_forms import OsForms
    response.title = T('Settings')
    response.subtitle = T('Mail')
    response.view = 'general/tabs_menu.html'

    return_url = mailing_list_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.mailing_lists,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)
    menu = mail_get_menu('mailing_lists')

    content = DIV(H4(T('Add mailing list')), form)

    return dict(content=content, save=result['submit'], back=back, menu=menu)
Beispiel #24
0
def mailing_list_edit():
    """
        Edit a mailing_list
        request.vars['mlID'] is expected to be db.mailing_lists.id
    """
    from openstudio.os_forms import OsForms

    response.title = T('Settings')
    response.subtitle = T('Mail')
    response.view = 'general/tabs_menu.html'
    mlID = request.vars['mlID']

    return_url = mailing_list_get_return_url()

    os_forms = OsForms()
    result = os_forms.get_crud_form_update(db.mailing_lists, return_url, mlID)

    form = result['form']
    back = os_gui.get_button('back', return_url)
    menu = mail_get_menu('mailing_lists')

    content = DIV(H4(T('Edit mailing list')), form)

    return dict(content=content, save=result['submit'], back=back, menu=menu)
Beispiel #25
0
def product_variant_add():
    """
        Add a product variant
    """
    from openstudio.os_forms import OsForms

    spID = request.vars['spID']
    product_variant_add_check_products_set(spID)

    response.title = T('Shop')
    response.subtitle = T('Catalog')
    response.view = 'general/tabs_menu.html'

    return_url = product_variants_get_return_url(spID)

    db.shop_products_variants.shop_products_id.default = spID
    os_forms = OsForms()
    result = os_forms.get_crud_form_create(
        db.shop_products_variants,
        return_url,
    )

    form = result['form']
    back = os_gui.get_button('back', return_url)

    content = DIV(
        H4(T('Add product variant')),
        form
    )

    menu = catalog_get_menu('products')

    return dict(content=content,
                save=result['submit'],
                back=back,
                menu=menu)