"""Attendee Registration Urls
"""
from django.conf import settings
from django.conf.urls.defaults import patterns, url
from django.utils.translation import ugettext_lazy as _
from django.views.generic.list_detail import object_list
from django.views.generic.simple import redirect_to
from views import *
from models import INVID_MATCH, Registration

urlpatterns = patterns('',

    # new registration views
    url(r'^new/invoice/$',  register,          name='reg-register'),

    url(r'^new/checkout/(?P<invid>' + INVID_MATCH + ')/$',
                            checkout,          name='reg-checkout'),

    url(r'^new/pay-by-check/(?P<invid>' + INVID_MATCH + ')/$',
                            check_checkout,    name='reg-check-checkout'),

    # view registration/invoices
    url(r'^view/$',         invoices,          name='reg-invoice-listing'),

    url(r'^view/invoice/(?P<invid>' + INVID_MATCH + ')/$',
                            invoice,           name='reg-invoice'),

    url(r'^view/R(?P<regid>\d+)/$',
                            view_reg,          name='reg-view'),

    url(r'^view/R(?P<regid>\d+)/(?P<conid>[a-fA-F0-9]{2,12})/connect/$',
                            connect,           name='reg-connect'),

    # attendee modify registration
    url(r'^view/R(?P<regid>\d+)/edit/$',
                            edit,              name='reg-edit'),

    url(r'^view/change-request/(?P<invid>' + INVID_MATCH + ')/$',
                            change_request,    name='reg-inv-change-request'),
    url(r'^view/change-request/R(?P<regid>\d+)/$',
                            change_request,    name='reg-change-request'),

    # url(r'^on-site-reg/search', on_site_search, name='reg-on-site-search' ),
    url(r'^on-site/reg/', on_site_reg, name='reg-on-site-reg' ),

    url(r'^on-site/search/', on_site_search,   name='reg-on-site-search2'),

    url(r'^on-site/listing/',
                             on_site_listing,  name='reg-on-site-listing'),

    url(r'^on-site/new-user/',
                             on_site_new_user_reg,
                                               name='reg-on-site-new-user'),

    # hidden/redirect processing views
    url(r'^thank-you/$',    thankyou_redirect, name='reg-thankyou-redirect'),

    url(r'^paypal-ack/$',   paypal_ack,        name='reg-paypal-ack'),

    url(r'^check-preprocess/(?P<invid>' + INVID_MATCH + ')/$',
                            check_preprocess,  name='reg-check-preprocess'),

    url(r'^redirect/$',     reg_redirect,      name='reg-redirect'),

    # organizer views
    #url(r'^report/stats/$', report_stats,      name='reg-rep-stats'),

    url(r'^report/listing/$',
                            report_listing,    name='reg-rep-listing'),

    url(r'^report/shirts/$',
                            report_tshirts,    name='reg-rep-tshirts'),

    url(r'^report/food/$',  report_food,       name='reg-rep-food'),

    # treasurer regman vies
    url(r'^admin/issues/$', admin_issues,      name='reg-admin-issues'),

    url(r'^admin/missing/$',
                            report_missing_registrations,
                                               name='reg-report-missing'),

    url(r'^admin/issues/mark_requests/$',
                           admin_issues_mark_requests_handled,
                                        name='reg-admin-issues-mark-handled'),

    url(r'^admin/tutorials/$',
                            admin_tutorials,   name='reg-admin-tutorials'),

    url(r'^admin/finance/$',
                            admin_finances,    name='reg-admin-finance'),

    url(r'^admin/attendees.csv/?$',
                            admin_attendees_csv,
                                               name='reg-admin-attendees-csv'),

    url(r'^admin/all-badges.csv/?$',
                            admin_export_badges_csv,
                                        kwargs={'filename': 'all-badges.csv'},
                                               name='reg-admin-all-badges-csv'),

    url(r'^admin/tutorial-day-badges.csv/?$',
                            admin_export_badges_csv,
                                        kwargs={'filename': 'tutorial-day-badges.csv',
                                                'thursday_only': True},
                                               name='reg-admin-tutorial-day-badges-csv'),

    url(r'^admin/non-tutorial-day-badges.csv/?$',
                            admin_export_badges_csv,
                                        kwargs={'filename': 'non-tutorial-day-badges.csv',
                                                'friday_only': True},
                                               name='reg-admin-non-tutorial-day-badges-csv'),

    url(r'^admin/status/(?P<invid>' + INVID_MATCH + ')/(?P<status>CO|WR|IV)/$',
                            admin_status,      name='reg-admin-status'),

    url(r'^admin/paid/(?P<invid>' + INVID_MATCH + ')/$',
                            admin_paid,        name='reg-admin-paid'),

    url(r'^admin/refunded/(?P<invid>' + INVID_MATCH + ')/$',
                            admin_refunded,    name='reg-admin-refunded'),

    url(r'^admin/invalidated/(?P<invid>' + INVID_MATCH + ')/$',
                            admin_invalidate,  name='reg-admin-invalidate'),

    url(r'^admin/regen/(?P<invid>' + INVID_MATCH + ')/$',
                            admin_regen,       name='reg-admin-regen-invoice'),

    url(r'^admin/update_flags/$',
                            admin_update_flags, name='reg-admin-update-flags'),

)

#if settings.DEBUG:
urlpatterns += patterns('',
        url(r'^fake-paypal-ack/$',
                            fake_paypal_ack,
                                        name='reg-fake-paypal-ack'),
    )
