Initial commit

This commit is contained in:
Fergal Moran
2013-08-29 12:08:44 +01:00
parent 081928ab37
commit 294a55889c
396 changed files with 148488 additions and 0 deletions

View File

@@ -0,0 +1,220 @@
{% extends 'base.html' %}
{% load i18n %}
{% load account %}
{% load url from future %}
{% block head_title %}{% trans "Login" %}{% endblock %}
{% block breadcrumb_title %}{% trans "Login" %}{% endblock %}
{% block content %}
<div class="login-container login-layout">
<div class="row-fluid">
<div class="position-relative">
<div id="login-box" class="login-box visible widget-box no-border">
<div class="widget-body">
<div class="widget-main">
<h4 class="header blue lighter bigger">
<i class="icon-coffee green"></i>
Please Enter Your Information
</h4>
<div class="space-6"></div>
<form class="login" method="POST" action="{% url 'account_login' %}">
{% csrf_token %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
<fieldset>
<label>
<span class="block input-icon input-icon-right">
<input type="text" class="span12"
placeholder="Username"
id="id_login"
name="login"/>
<i class="icon-user"></i>
</span>
</label>
<label>
<span class="block input-icon input-icon-right">
<input id="id_password" class="span12" name="password" placeholder="Password" type="password">
<i class="icon-lock"></i>
</span>
</label>
<div class="space"></div>
<div class="clearfix">
<label class="inline">
<input type="checkbox" class="ace"/>
<span class="lbl"> Remember Me</span>
</label>
<button type="submit"
class="width-35 pull-right btn btn-small btn-primary">
<i class="icon-key"></i>
Login
</button>
</div>
<div class="space-4"></div>
</fieldset>
</form>
<div class="social-or-login center">
<span class="bigger-110">Or Login Using</span>
</div>
<div class="social-login center">
<a class="btn btn-primary" href="/accounts/facebook/login/?process=login">
<i class="icon-facebook"></i>
</a>
<a class="btn btn-info" href="/accounts/twitter/login/?process=login">
<i class="icon-twitter"></i>
</a>
<a class="btn btn-danger" href="/accounts/google/login/?process=login">
<i class="icon-google-plus"></i>
</a>
</div>
</div>
<!--/widget-main-->
<div class="toolbar clearfix">
<div>
<a href="#" onclick="show_box('forgot-box'); return false;" class="forgot-password-link">
<i class="icon-arrow-left"></i>
I forgot my password
</a>
</div>
<div>
<a href="#" onclick="show_box('signup-box'); return false;" class="user-signup-link">
I want to register
<i class="icon-arrow-right"></i>
</a>
</div>
</div>
</div>
<!--/widget-body-->
</div>
<!--/login-box-->
<div id="forgot-box" class="forgot-box widget-box no-border">
<div class="widget-body">
<div class="widget-main">
<h4 class="header red lighter bigger">
<i class="icon-key"></i>
Retrieve Password
</h4>
<div class="space-6"></div>
<p>
Enter your email and to receive instructions
</p>
<form>
<fieldset>
<label>
<span class="block input-icon input-icon-right">
<input type="email" class="span12" placeholder="Email"/>
<i class="icon-envelope"></i>
</span>
</label>
<div class="clearfix">
<button onclick="return false;"
class="width-35 pull-right btn btn-small btn-danger">
<i class="icon-lightbulb"></i>
Send Me!
</button>
</div>
</fieldset>
</form>
</div>
<!--/widget-main-->
<div class="toolbar center">
<a href="#" onclick="show_box('login-box'); return false;" class="back-to-login-link">
Back to login
<i class="icon-arrow-right"></i>
</a>
</div>
</div>
<!--/widget-body-->
</div>
<!--/forgot-box-->
<div id="signup-box" class="signup-box widget-box no-border">
<div class="widget-body">
<div class="widget-main">
<h4 class="header green lighter bigger">
<i class="icon-group blue"></i>
New User Registration
</h4>
<div class="space-6"></div>
<p> Enter your details to begin: </p>
<form>
<fieldset>
<label>
<span class="block input-icon input-icon-right">
<input type="email" class="span12" placeholder="Email"/>
<i class="icon-envelope"></i>
</span>
</label>
<label>
<span class="block input-icon input-icon-right">
<input type="text" class="span12"
placeholder="Username"/>
<i class="icon-user"></i>
</span>
</label>
<label>
<span class="block input-icon input-icon-right">
<input type="password" class="span12"
placeholder="Password"/>
<i class="icon-lock"></i>
</span>
</label>
<label>
<span class="block input-icon input-icon-right">
<input type="password" class="span12"
placeholder="Repeat password"/>
<i class="icon-retweet"></i>
</span>
</label>
<label>
<input type="checkbox" class="ace"/>
<span class="lbl">
I accept the
<a href="#">User Agreement</a>
</span>
</label>
<div class="space-24"></div>
<div class="clearfix">
<button type="reset" class="width-30 pull-left btn btn-small">
<i class="icon-refresh"></i>
Reset
</button>
<button onclick="return false;"
class="width-65 pull-right btn btn-small btn-success">
Register
<i class="icon-arrow-right icon-on-right"></i>
</button>
</div>
</fieldset>
</form>
</div>
<div class="toolbar center">
<a href="#" onclick="show_box('login-box'); return false;" class="back-to-login-link">
<i class="icon-arrow-left"></i>
Back to login
</a>
</div>
</div>
<!--/widget-body-->
</div>
<!--/signup-box-->
</div>
<!--/position-relative-->
</div>
</div>
{% endblock %}
{% block footer_scripts %}
<script type="text/javascript">
function show_box(id) {
jQuery('.widget-box.visible').removeClass('visible');
jQuery('#' + id).addClass('visible');
}
</script>
{% endblock %}

71
templates/base.html Executable file
View File

@@ -0,0 +1,71 @@
<!DOCTYPE html>
<html lang="en">
<head>
{% load static %}
<meta charset="utf-8"/>
<title>{% block head_title %}RobotoPro{% endblock %}</title>
<link href="{% static "css/bootstrap.min.css" %}" rel="stylesheet"/>
<link href="{% static "css/bootstrap-responsive.min.css" %}" rel="stylesheet"/>
<link href="{% static "css/font-awesome.min.css" %}" rel="stylesheet"/>
<!--[if IE 7]>
<link rel="stylesheet" href="{% static "css/font-awesome-ie7.min.css" %}"/>
<![endif]-->
<link rel="stylesheet" href="{% static "css/datepicker.css" %}"/>
<link rel="stylesheet" href="{% static "css/ace-fonts.css" %}"/>
<link rel="stylesheet" href="{% static "css/ace.min.css" %}"/>
<link rel="stylesheet" href="{% static "css/ace-responsive.min.css" %}"/>
<link rel="stylesheet" href="{% static "css/ace-skins.min.css" %}"/>
<!--[if lte IE 8]>
<link rel="stylesheet" href="{% static "css/ace-ie.min.css" %}" />
<![endif]-->
{% block header_styles %}
{% endblock %}
<script src="{% static "js/uncompressed/ace-extra.js" %}"></script>
{% block header_scripts %}
{% endblock %}
</head>
<body class="skin-2">
{% include 'navbar.html' %}
<div class="main-container container-fluid">
<a class="menu-toggler" id="menu-toggler" href="#">
<span class="menu-text"></span>
</a>
{% include 'sidebar.html' %}
<div class="main-content">
<div class="page-content">
<div class="page-header position-relative">
<h1>
{% block heading %}Dashboard{% endblock %}
<small>
<i class="icon-double-angle-right"></i>
{% block sub_heading %}overview &amp; stats{% endblock %}
</small>
</h1>
</div>
<!--/.page-header-->
<div class="row-fluid">
<div class="span12">
<div class="space-6"></div>
<div class="row-fluid">
{% block content %}
{% endblock %}
</div>
</div>
</div>
</div>
{% include 'settings_container.html' %}
</div>
</div>
<a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-small btn-inverse">
<i class="icon-double-angle-up icon-only bigger-110"></i>
</a>
{% include 'footer_scripts.html' %}
{% block footer_scripts %}
{% endblock %}
</body>
</html>

30
templates/breadcrumbs.html Executable file
View File

@@ -0,0 +1,30 @@
<div class="breadcrumbs" id="breadcrumbs">
<script type="text/javascript">
try {
ace.settings.check('breadcrumbs', 'fixed')
} catch (e) {
}
</script>
<ul class="breadcrumb">
<li>
<i class="icon-home home-icon"></i>
<a href="#">Home</a>
<span class="divider">
<i class="icon-angle-right arrow-icon"></i>
</span>
</li>
<li class="active">{% block breadcrumb_title %}{% endblock %}</li>
</ul>
<!--.breadcrumb-->
<div class="nav-search" id="nav-search">
<form class="form-search">
<span class="input-icon">
<input type="text" placeholder="Search ..." class="input-small nav-search-input" id="nav-search-input"
autocomplete="off"/>
<i class="icon-search nav-search-icon"></i>
</span>
</form>
</div>
<!--#nav-search-->
</div>

15
templates/debug.html Executable file
View File

@@ -0,0 +1,15 @@
<!DOCTYPE html>
<html>
<head>
<title>Test page</title>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet">
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
</head>
<body>
{% block content %}{% endblock %}
{% block form_content %}{% endblock %}
{% block footer_scripts %} {% endblock %}
</body>
</html>

42
templates/footer_scripts.html Executable file
View File

@@ -0,0 +1,42 @@
{% load static %}
<!--[if !IE]>-->
<script type="text/javascript">
window.jQuery || document.write("<script src='{% static "js/uncompressed/jquery-2.0.3.js" %}'>"+"<"+"/script>");
</script>
<!--<![endif]-->
<!--[if IE]>
<script type="text/javascript">
window.jQuery || document.write("<script src='{% static "js/uncompressed/jquery-1.10.2.js" %}'>"+"<"+"/script>");
</script>
<![endif]-->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js" />
<![endif]-->
<!--[if gte IE 8]>
<script src="{% static "js/uncompressed/cors/jquery.xdr-transport.js" %}"/>
<![endif]-->
<script type="text/javascript">
if("ontouchend" in document) document.write("<script src='{% static "js/uncompressed/jquery.mobile.custom.js" %}'>"+"<"+"/script>");
</script>
<script src="{% static "js/uncompressed/bootstrap.js" %}"></script>
<!--[if lte IE 8]>
<script src="{% static "js/uncompressed/excanvas.js" %}"></script>
<![endif]-->
<script src="{% static "js/uncompressed/jquery-ui-1.10.3.custom.js" %}"></script>
<script src="{% static "js/uncompressed/jquery.ui.touch-punch.js" %}"></script>
<script src="{% static "js/vendor/jquery.ui.widget.js" %}"></script>
<script src="{% static "js/uncompressed/jquery.slimscroll.js" %}"></script>
<script src="{% static "js/uncompressed/jquery.easy-pie-chart.js" %}"></script>
<script src="{% static "js/uncompressed/jquery.sparkline.js" %}"></script>
<script src="{% static "js/uncompressed/flot/jquery.flot.js" %}"></script>
<script src="{% static "js/uncompressed/flot/jquery.flot.pie.js" %}"></script>
<script src="{% static "js/uncompressed/flot/jquery.flot.resize.js" %}"></script>
<script src="{% static "js/uncompressed/ace-elements.js" %}"></script>
<script src="{% static "js/uncompressed/ace.js" %}"></script>

4
templates/index.html Executable file
View File

@@ -0,0 +1,4 @@
{% extends 'base.html' %}
{% block content %}
{{ content }}
{% endblock %}

32
templates/navbar.html Executable file
View File

@@ -0,0 +1,32 @@
{% load static %}
<div class="navbar" id="navbar">
<script type="text/javascript">
try {
ace.settings.check('navbar', 'fixed')
} catch (e) {
}
</script>
<div class="navbar-inner">
<div class="container-fluid">
<a href="#" class="brand">
<small>
<i class="icon-leaf"></i>
Roboto Promoto
</small>
</a><!--/.brand-->
<ul class="nav ace-nav pull-right" id="navbar-user-profile">
{% if user.is_authenticated %}
{% include 'navbar_user_profile.html' %}
{% else %}
<a class="btn" href="{% url 'account_login' %}">
<i class="icon-user"></i>
<span class="badge badge-grey">Login</span>
</a>
{% endif %}
</ul>
<!--/.ace-nav-->
</div>
<!--/.container-fluid-->
</div>
<!--/.navbar-inner-->
</div>

View File

@@ -0,0 +1,218 @@
{% load static %}
<li class="grey">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="icon-tasks"></i>
<span class="badge badge-grey">4</span>
</a>
<ul class="pull-right dropdown-navbar dropdown-menu dropdown-caret dropdown-closer">
<li class="nav-header">
<i class="icon-ok"></i>
4 Tasks to complete
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Software Update</span>
<span class="pull-right">65%</span>
</div>
<div class="progress progress-mini ">
<div style="width:65%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Hardware Upgrade</span>
<span class="pull-right">35%</span>
</div>
<div class="progress progress-mini progress-danger">
<div style="width:35%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Unit Testing</span>
<span class="pull-right">15%</span>
</div>
<div class="progress progress-mini progress-warning">
<div style="width:15%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Bug Fixes</span>
<span class="pull-right">90%</span>
</div>
<div class="progress progress-mini progress-success progress-striped active">
<div style="width:90%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
See tasks with details
<i class="icon-arrow-right"></i>
</a>
</li>
</ul>
</li>
<li class="purple">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="icon-bell-alt icon-animated-bell"></i>
<span class="badge badge-important">8</span>
</a>
<ul class="pull-right dropdown-navbar navbar-pink dropdown-menu dropdown-caret dropdown-closer">
<li class="nav-header">
<i class="icon-warning-sign"></i>
8 Notifications
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">
<i class="btn btn-mini no-hover btn-pink icon-comment"></i>
New Comments
</span>
<span class="pull-right badge badge-info">+12</span>
</div>
</a>
</li>
<li>
<a href="#">
<i class="btn btn-mini btn-primary icon-user"></i>
Bob just signed up as an editor ...
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">
<i class="btn btn-mini no-hover btn-success icon-shopping-cart"></i>
New Orders
</span>
<span class="pull-right badge badge-success">+8</span>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">
<i class="btn btn-mini no-hover btn-info icon-twitter"></i>
Followers
</span>
<span class="pull-right badge badge-info">+11</span>
</div>
</a>
</li>
<li>
<a href="#">
See all notifications
<i class="icon-arrow-right"></i>
</a>
</li>
</ul>
</li>
<li class="green">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="icon-envelope icon-animated-vertical"></i>
<span class="badge badge-success">5</span>
</a>
<ul class="pull-right dropdown-navbar dropdown-menu dropdown-caret dropdown-closer">
<li class="nav-header">
<i class="icon-envelope-alt"></i>
5 Messages
</li>
<li>
<a href="#">
<img src="{% static "img/debug/avatars/avatar.png" %}/" class="msg-photo" alt="Alex's Avatar"/>
<span class="msg-body">
<span class="msg-title">
<span class="blue">Alex:</span>
Ciao sociis natoque penatibus et auctor ...
</span>
<span class="msg-time">
<i class="icon-time"></i>
<span>a moment ago</span>
</span>
</span>
</a>
</li>
<li>
<a href="#">
<img src="{% static "img/debug/avatars/avatar3.png" %}" class="msg-photo" alt="Susan's Avatar"/>
<span class="msg-body">
<span class="msg-title">
<span class="blue">Susan:</span>
Vestibulum id ligula porta felis euismod ...
</span>
<span class="msg-time">
<i class="icon-time"></i>
<span>20 minutes ago</span>
</span>
</span>
</a>
</li>
<li>
<a href="#">
<img src="{% static "img/debug/avatars/avatar4.png" %}" class="msg-photo" alt="Bob's Avatar"/>
<span class="msg-body">
<span class="msg-title">
<span class="blue">Bob:</span>
Nullam quis risus eget urna mollis ornare ...
</span>
<span class="msg-time">
<i class="icon-time"></i>
<span>3:15 pm</span>
</span>
</span>
</a>
</li>
<li>
<a href="#">
See all messages
<i class="icon-arrow-right"></i>
</a>
</li>
</ul>
</li>
<li class="light-blue">
<a data-toggle="dropdown" href="#" class="dropdown-toggle">
<img class="nav-user-photo" src="{% static "img/debug/avatars/user.jpg" %}" alt="Jason's Photo"/>
<span class="user-info">
<small>Welcome,</small>{{ user.first_name }}
</span>
<i class="icon-caret-down"></i>
</a>
<ul class="user-menu pull-right dropdown-menu dropdown-yellow dropdown-caret dropdown-closer">
<li>
<a href="#">
<i class="icon-cog"></i>
Settings
</a>
</li>
<li>
<a href="#">
<i class="icon-user"></i>
Profile
</a>
</li>
<li class="divider"></li>
<li>
<a href="{% url 'account_logout' %}">
<i class="icon-off"></i>
Logout
</a>
</li>
</ul>
</li>

View File

@@ -0,0 +1,159 @@
{% load static %}
<form id="fileupload" action="{{ upload_handler_url }}" method="POST" enctype="multipart/form-data" >
{% csrf_token %}
<noscript>
<input type="hidden" name="redirect" value="{{ request.path }}">
</noscript>
<div class="fileupload-buttonbar">
<div class="span7">
<span class="btn btn-success fileinput-button">
<i class="icon-plus icon-white"></i>
<span>Add files...</span>
<input type="file" name="files[]"
multiple
{% if accepted_mime_types %}
accept = '{{ accepted_mime_types|join:"," }}'
{% endif %}>
</span>
<button type="submit" class="btn btn-primary start">
<i class="icon-upload icon-white"></i>
<span>Start upload</span>
</button>
<button type="reset" class="btn btn-warning cancel">
<i class="icon-ban-circle icon-white"></i>
<span>Cancel upload</span>
</button>
<button type="button" class="btn btn-danger delete">
<i class="icon-trash icon-white"></i>
<span>Delete</span>
</button>
<input type="checkbox" class="toggle">
</div>
<div class="span5 fileupload-progress fade">
<div
class="progress progress-success progress-striped active"
role="progressbar" aria-valuemin="0" aria-valuemax="100">
<div class="bar" style="width:0%;"></div>
</div>
<div class="progress-extended">&nbsp;</div>
</div>
</div>
<div class="fileupload-loading"></div>
<br>
<table role="presentation" class="table table-striped">
<tbody class="files" data-toggle="modal-gallery"
data-target="#modal-gallery"></tbody>
</table>
</form>
<div id="modal-gallery" class="modal modal-gallery hide fade"
data-filter=":odd" tabindex="-1">
<div class="modal-header">
<a class="close" data-dismiss="modal">&times;</a>
<h3 class="modal-title"></h3>
</div>
<div class="modal-body"><div class="modal-image"></div></div>
<div class="modal-footer">
<a class="btn modal-download" target="_blank">
<i class="icon-download"></i>
<span>Download</span>
</a>
<a class="btn btn-success modal-play modal-slideshow"
data-slideshow="5000">
<i class="icon-play icon-white"></i>
<span>Slideshow</span>
</a>
<a class="btn btn-info modal-prev">
<i class="icon-arrow-left icon-white"></i>
<span>Previous</span>
</a>
<a class="btn btn-primary modal-next">
<span>Next</span>
<i class="icon-arrow-right icon-white"></i>
</a>
</div>
</div>
<script id="template-upload" type="text/x-tmpl">
{{ JQ_OPEN }} for (var i=0, file; file=o.files[i]; i++) { {{ JQ_CLOSE }}
<tr class="template-upload fade">
<td class="preview"><span class="fade"></span></td>
<td class="name"><span>{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}</span></td>
<td class="size"><span>{{ JQ_OPEN }}=o.formatFileSize(file.size){{ JQ_CLOSE }}</span></td>
{{ JQ_OPEN }} if (file.error) { {{ JQ_CLOSE }}
<td class="error" colspan="2">
<span class="label label-important">Error</span>
{{ JQ_OPEN }}=file.error{{ JQ_CLOSE }}
</td>
{{ JQ_OPEN }} } else if (o.files.valid && !i) { {{ JQ_CLOSE }}
<td>
<div
class="progress progress-success progress-striped active"
role="progressbar" aria-valuemin="0" aria-valuemax="100"
aria-valuenow="0">
<div class="bar" style="width:0%;"></div>
</div>
</td>
<td>{{ JQ_OPEN }} if (!o.options.autoUpload) { {{ JQ_CLOSE }}
<button class="btn btn-primary start">
<i class="icon-upload icon-white"></i>
<span>Start</span>
</button>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}</td>
{{ JQ_OPEN }} } else { {{ JQ_CLOSE }}
<td colspan="2"></td>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}
<td>{{ JQ_OPEN }} if (!i) { {{ JQ_CLOSE }}
<button class="btn btn-warning cancel">
<i class="icon-ban-circle icon-white"></i>
<span>Cancel</span>
</button>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}</td>
</tr>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}
</script>
<script id="template-download" type="text/x-tmpl">
{{ JQ_OPEN }} for (var i=0, file; file=o.files[i]; i++) { {{ JQ_CLOSE }}
<tr class="template-download fade">
{{ JQ_OPEN }} if (file.error) { {{ JQ_CLOSE }}
<td></td>
<td class="name"><span>{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}</span></td>
<td class="size"><span>{{ JQ_OPEN }}=o.formatFileSize(file.size){{ JQ_CLOSE }}</span></td>
<td class="error" colspan="2"><span class="label label-important">Error</span>
{{ JQ_OPEN }}=file.error{{ JQ_CLOSE }}</td>
{{ JQ_OPEN }} } else { {{ JQ_CLOSE }}
<td class="preview">
{{ JQ_OPEN }} if (file.thumbnail_url) { {{ JQ_CLOSE }}
<a href="{{ JQ_OPEN }}=file.url{{ JQ_CLOSE }}"
title="{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}"
data-gallery="gallery" download="{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}">
<img src="{{ JQ_OPEN }}=file.thumbnail_url{{ JQ_CLOSE }}">
</a>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}</td>
<td class="name">
<a href="{{ JQ_OPEN }}=file.url{{ JQ_CLOSE }}"
title="{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}"
data-gallery="{{ JQ_OPEN }}=file.thumbnail_url&&'gallery'{{ JQ_CLOSE }}"
download="{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}">{{ JQ_OPEN }}=file.name{{ JQ_CLOSE }}
</a>
</td>
<td class="size"><span>{{ JQ_OPEN }}=o.formatFileSize(file.size){{ JQ_CLOSE }}</span></td>
<td colspan="2"></td>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}
<td>
<button class="btn btn-danger delete" data-type="{{ JQ_OPEN }}=file.delete_type{{ JQ_CLOSE }}"
data-data='{ "csrfmiddlewaretoken" : "{{ csrf_token }}" }'
data-url="{{ JQ_OPEN }}=file.delete_url{{ JQ_CLOSE }}"
{{ JQ_OPEN }} if (file.delete_with_credentials) { {{ JQ_CLOSE }}
data-xhr-fields='{"withCredentials":true}'
{{ JQ_OPEN }} } {{ JQ_CLOSE }}>
<i class="icon-trash icon-white"></i>
<span>Delete</span>
</button>
<input type="checkbox" name="delete" value="1" class="toggle">
</td>
</tr>
{{ JQ_OPEN }} } {{ JQ_CLOSE }}
</script>

View File

@@ -0,0 +1,40 @@
{% extends 'promotions/new.html' %}
{% block form_content %}
<div class="control-group {% if form.description.errors %}error{% endif %}" id="group-description">
<label class="control-label" for="{{ form.description.auto_id }}">{{ form.description.label }}</label>
<div class="controls">
{{ form.description }}
</div>
</div>
<div class="control-group input-append {% if form.start_date.errors %}error{% endif %}" id="group-start_date">
<label class="control-label" for="{{ form.start_date.auto_id }}">{{ form.start_date.label }}</label>
<div class="controls">
{{ form.start_date }}
<span class="add-on">
<i class="icon-calendar"></i>
</span>
</div>
</div>
<div class="control-group input-append {% if form.end_date.errors %}error{% endif %}" id="group-end_date">
<label class="control-label" for="{{ form.end_date.auto_id }}">{{ form.end_date.label }}</label>
<div class="controls">
{{ form.end_date }}
<span class="add-on">
<i class="icon-calendar"></i>
</span>
</div>
</div>
<div class="control-group {% if form.active.errors %}error{% endif %}">
<label class="control-label" for="{{ form.active.auto_id }}">{{ form.active.label }}</label>
<div class="controls">
<label>
{{ form.active }}
<span class="lbl"></span>
</label>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,3 @@
{% load jfutags %}
<h3 class="lighter block green">Add some files (mp3's, images) to your promotion</h3>
{% jfu 'promotions/_upload_form.html' 'audio_upload' %}

View File

@@ -0,0 +1,23 @@
{% extends 'promotions/new.html' %}
{% load static %}
{% block form_content %}
<div class="wysiwyg-editor" id="_proxy_{{ form.body_text.auto_id }}"></div>
{{ form.body_text }}
{% endblock %}
{% block footer_scripts %}
{{ block.super }}
<script type="text/javascript" src="{% static "js/uncompressed/jquery.hotkeys.js" %}"></script>
<script type="text/javascript" src="{% static "js/uncompressed/bootstrap-wysiwyg.js" %}"></script>
<script type="text/javascript">
$(function () {
'use strict';
$('#_proxy_{{ form.body_text.auto_id }}').ace_wysiwyg({
speech_button: false
}).prev().addClass('wysiwyg-style2');
});
$("#promotion-form").on("submit", function () {
$("#{{ form.body_text.auto_id }}").val($("#_proxy_{{ form.body_text.auto_id }}").html());
});
</script>
{% endblock %}

104
templates/promotions/list.html Executable file
View File

@@ -0,0 +1,104 @@
{% extends 'base.html' %}
{% load static %}
{% block heading %}Promotions{% endblock %}
{% block sub_heading %}list of promotions{% endblock %}
{% block content %}
<table id="promotions-table" class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>Description</th>
<th><i class="icon-time bigger-110 hidden-phone"></i> Start Date</th>
<th><i class="icon-time bigger-110 hidden-phone"></i> End Date</th>
<th class="hidden-480">Status</th>
<th></th>
</tr>
</thead>
<tbody>
{% for item in object_list %}
<tr>
<td>
<a href="{% url 'promotion-edit' item.id %}">{{ item.description }}</a>
</td>
<td>{{ item.start_date }}</td>
<td>{{ item.end_date }}</td>
<td>
{% if item.active %}
<span class="label label-warning">Active</span>
{% else %}
<span class="label label-inverse arrowed-in">Inactive</span>
{% endif %}
</td>
<td>
<div class="hidden-phone visible-desktop action-buttons">
<a class="blue" href="#">
<i class="icon-zoom-in bigger-130"></i>
</a>
<a class="green" href="#">
<i class="icon-pencil bigger-130"></i>
</a>
<a class="red" href="#">
<i class="icon-trash bigger-130"></i>
</a>
</div>
<div class="hidden-desktop visible-phone">
<div class="inline position-relative">
<button class="btn btn-minier btn-yellow dropdown-toggle" data-toggle="dropdown">
<i class="icon-caret-down icon-only bigger-120"></i>
</button>
<ul class="dropdown-menu dropdown-icon-only dropdown-yellow pull-right dropdown-caret dropdown-close">
<li>
<a href="#" class="tooltip-info" data-rel="tooltip" title="View">
<span class="blue">
<i class="icon-zoom-in bigger-120"></i>
</span>
</a>
</li>
<li>
<a href="#" class="tooltip-success" data-rel="tooltip" title="Edit">
<span class="green">
<i class="icon-edit bigger-120"></i>
</span>
</a>
</li>
<li>
<a href="#" class="tooltip-error" data-rel="tooltip" title="Delete">
<span class="red">
<i class="icon-trash bigger-120"></i>
</span>
</a>
</li>
</ul>
</div>
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock %}
{% block footer_scripts %}
<script src="{% static "js/jquery.dataTables.min.js" %}"></script>
<script src="{% static "js/jquery.dataTables.bootstrap.js" %}"></script>
<script type="text/javascript">
$(function () {
$('#promotions-table').dataTable({
"aoColumns": [
null,
null,
null,
null,
{ "bSortable": false }
] });
});
</script>
{% endblock %}

72
templates/promotions/new.html Executable file
View File

@@ -0,0 +1,72 @@
{% extends 'base.html' %}
{% load static %}
{% load i18n %}
{% block heading %}Promotions{% endblock %}
{% block sub_heading %}create new promotion{% endblock %}
{% block header_styles %}
<link rel="stylesheet" type="text/css" href="{% static "demo/blueimp-gallery.min.css" %}"/>
<link rel="stylesheet" type="text/css" href="{% static "css/jquery.fileupload-ui.css" %}"/>
<noscript>
<link rel="stylesheet" href="{% static "css/jquery.fileupload-ui-noscript.css" %}">
</noscript>
{{ wizard.form.media }}
{% endblock %}
{% block content %}
<p>Step {{ wizard.steps.step1 }} of {{ wizard.steps.count }}</p>
<div id="promotion-wizard" class="row-fluid hide" data-target="#step-container">
<ul class="wizard-steps">
<li data-target="#step-details" class="active">
<span class="step">1</span>
<span class="title">Promotion details</span>
</li>
<li data-target="#step-body">
<span class="step">2</span>
<span class="title">Promotion body</span>
</li>
<li data-target="#step-files">
<span class="step">3</span>
<span class="title">Promotion contents</span>
</li>
</ul>
</div>
<div class="step-content row-fluid position-relative" id="step-container">
<div class="step-pane active" id="step-details">
<h3 class="lighter block green">Enter the following information</h3>
<form id="promotion-form" action="" method="post" class="form-horizontal">
{% csrf_token %}
{{ wizard.management_form }}
{% block form_content %}
{% endblock %}
<hr>
<div class="wizard-actions">
{% if wizard.steps.prev %}
<button class="btn btn-prev">
<i class="icon-arrow-left"></i>
Prev
</button>
{% endif %}
<button class="btn btn-success btn-next" data-last="Finish ">
Next
<i class="icon-arrow-right icon-on-right"></i>
</button>
</div>
</form>
</div>
</div>
{% endblock %}
{% block footer_scripts %}
{% include "scripts/wizard.html" %}
<script type="text/javascript">
$(function () {
$(".btn-next").click(function () {
$('#promotion-form').submit();
});
});
</script>
{% include "scripts/forms.html" %}
{% endblock %}

View File

@@ -0,0 +1,9 @@
{% load static %}
<script src="{% static "js/fileupload/tmpl.min.js" %}"></script>
<script src="{% static "js/fileupload/load-image.min.js" %}"></script>
<script src="{% static "js/fileupload/canvas-to-blob.min.js" %}"></script>
<script src="{% static "js/fileupload/blueimp-gallery.min.js" %}"></script>
<script src="{% static "js/fileupload/jquery.iframe-transport.js" %}"></script>
<script src="{% static "js/fileupload/jquery.fileupload.js" %}"></script>
<script src="{% static "js/fileupload/jquery.fileupload-fp.js" %}"></script>
<script src="{% static "js/fileupload/jquery.fileupload-ui.js" %}"></script>

12
templates/scripts/forms.html Executable file
View File

@@ -0,0 +1,12 @@
{% load static %}
<script src="{% static "js/uncompressed/jquery.form.js" %}"></script>
<script src="{% static "js/uncompressed/date-time/bootstrap-datepicker.js" %}"></script>
<script src="{% static "js/uncompressed/date-time/moment.js" %}"></script>
<script type="text/javascript">
$(function () {
$('.date-picker').datepicker().next().on(ace.click_event, function () {
$(this).prev().focus();
});
});
</script>

43
templates/scripts/wizard.html Executable file
View File

@@ -0,0 +1,43 @@
{% load static %}
<script src="{% static "js/uncompressed/fuelux/fuelux.wizard.js" %}"></script>
<script type="text/javascript">
$(function () {
var wizard = $('#promotion-wizard').ace_wizard();
wizard.on('change', function (e, info) {
if (info.step == 1) {
var detailsForm = $('#form_wizard_details');
detailsForm.ajaxSubmit({
success: function (e, val, errors) {
$('#id_pk').val(e.pk);
wizard.wizard('selectedItem', {step: 2});
},
error: function (response, status, err) {
$.each(response.responseJSON, function (item, error) {
$('#group-' + item).addClass('error');
$('#help-inline-' + item).text(error);
});
}
});
e.preventDefault();
} else if (info.step == 2) {
var bodyForm = $('#form_wizard_body');
bodyForm.ajaxSubmit({
success: function (e, val, errors) {
$('#id_pk').val(e.pk);
wizard.wizard('selectedItem', {step: 3});
},
error: function (e, val, errors) {
$.each(e.responseJSON, function (item, error) {
$('#group-' + item).addClass('error');
$('#help-inline-' + item).text(error);
});
}
});
e.preventDefault();
}
});
wizard.on('finished', function () {
alert('Success!');
});
});
</script>

View File

@@ -0,0 +1,39 @@
<div class="ace-settings-container" id="ace-settings-container">
<div class="btn btn-app btn-mini btn-warning ace-settings-btn" id="ace-settings-btn">
<i class="icon-cog bigger-150"></i>
</div>
<div class="ace-settings-box" id="ace-settings-box">
<div>
<div class="pull-left">
<select id="skin-colorpicker" class="hide">
<option data-skin="default" value="#438EB9">#438EB9</option>
<option data-skin="skin-1" value="#222A2D">#222A2D</option>
<option data-skin="skin-2" value="#C6487E">#C6487E</option>
<option data-skin="skin-3" value="#D0D0D0">#D0D0D0</option>
</select>
</div>
<span>&nbsp; Choose Skin</span>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-navbar"/>
<label class="lbl" for="ace-settings-navbar"> Fixed Navbar</label>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-sidebar"/>
<label class="lbl" for="ace-settings-sidebar"> Fixed Sidebar</label>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-breadcrumbs"/>
<label class="lbl" for="ace-settings-breadcrumbs"> Fixed Breadcrumbs</label>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-rtl"/>
<label class="lbl" for="ace-settings-rtl"> Right To Left (rtl)</label>
</div>
</div>
</div><!--/#ace-settings-container-->

84
templates/sidebar.html Executable file
View File

@@ -0,0 +1,84 @@
<div class="sidebar" id="sidebar">
<script type="text/javascript">
try {
ace.settings.check('sidebar', 'fixed')
} catch (e) {
}
</script>
<div class="sidebar-shortcuts" id="sidebar-shortcuts">
<div class="sidebar-shortcuts-large" id="sidebar-shortcuts-large">
<button class="btn btn-small btn-success">
<i class="icon-signal"></i>
</button>
<button class="btn btn-small btn-info">
<i class="icon-pencil"></i>
</button>
<button class="btn btn-small btn-warning">
<i class="icon-group"></i>
</button>
<button class="btn btn-small btn-danger">
<i class="icon-cogs"></i>
</button>
</div>
<div class="sidebar-shortcuts-mini" id="sidebar-shortcuts-mini">
<span class="btn btn-success"></span>
<span class="btn btn-info"></span>
<span class="btn btn-warning"></span>
<span class="btn btn-danger"></span>
</div>
</div>
<!--#sidebar-shortcuts-->
<ul class="nav nav-list">
<li class="active">
<a href="index.html">
<i class="icon-dashboard"></i>
<span class="menu-text"> Dashboard </span>
</a>
</li>
<li class="active open">
<a href="#" class="dropdown-toggle">
<i class="icon-list"></i>
<span class="menu-text"> Promotions</span>
<b class="arrow icon-angle-down"></b>
</a>
<ul class="submenu">
<li class="active">
<a href="{% url 'promotion-list' %}">
<i class="icon-double-angle-right"></i>
List
</a>
</li>
<li class="active">
<a href="{% url 'promotion-add' %}">
<i class="icon-double-angle-right"></i>
New
</a>
</li>
</ul>
</li>
</ul>
<!--/.nav-list-->
<div class="sidebar-collapse" id="sidebar-collapse">
<i class="icon-double-angle-left" data-icon1="icon-double-angle-left" data-icon2="icon-double-angle-right"></i>
</div>
<script type="text/javascript">
try {
ace.settings.check('sidebar', 'collapsed')
} catch (e) {
}
</script>
</div>

801
templates/working.html Executable file
View File

@@ -0,0 +1,801 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>RobotoPro</title>
<link href="/static/css/bootstrap.min.css" rel="stylesheet"/>
<link href="/static/css/bootstrap-responsive.min.css" rel="stylesheet"/>
<link href="/static/css/font-awesome.min.css" rel="stylesheet"/>
<!--[if IE 7]>
<link rel="stylesheet" href="/static/css/font-awesome-ie7.min.css"/>
<![endif]-->
<link rel="stylesheet" href="/static/css/datepicker.css"/>
<link rel="stylesheet" href="/static/css/ace-fonts.css"/>
<link rel="stylesheet" href="/static/css/ace.min.css"/>
<link rel="stylesheet" href="/static/css/ace-responsive.min.css"/>
<link rel="stylesheet" href="/static/css/ace-skins.min.css"/>
<!--[if lte IE 8]>
<link rel="stylesheet" href="/static/css/ace-ie.min.css" />
<![endif]-->
<link rel="stylesheet" type="text/css" href="/static/demo/blueimp-gallery.min.css"/>
<link rel="stylesheet" type="text/css" href="/static/css/jquery.fileupload-ui.css"/>
<noscript>
<link rel="stylesheet" href="/static/css/jquery.fileupload-ui-noscript.css">
</noscript>
<script src="/static/js/uncompressed/ace-extra.js"></script>
</head>
<body class="skin-2">
<div class="navbar" id="navbar">
<script type="text/javascript">
try {
ace.settings.check('navbar', 'fixed')
} catch (e) {
}
</script>
<div class="navbar-inner">
<div class="container-fluid">
<a href="#" class="brand">
<small>
<i class="icon-leaf"></i>
Roboto Promoto
</small>
</a><!--/.brand-->
<ul class="nav ace-nav pull-right" id="navbar-user-profile">
<li class="grey">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="icon-tasks"></i>
<span class="badge badge-grey">4</span>
</a>
<ul class="pull-right dropdown-navbar dropdown-menu dropdown-caret dropdown-closer">
<li class="nav-header">
<i class="icon-ok"></i>
4 Tasks to complete
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Software Update</span>
<span class="pull-right">65%</span>
</div>
<div class="progress progress-mini ">
<div style="width:65%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Hardware Upgrade</span>
<span class="pull-right">35%</span>
</div>
<div class="progress progress-mini progress-danger">
<div style="width:35%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Unit Testing</span>
<span class="pull-right">15%</span>
</div>
<div class="progress progress-mini progress-warning">
<div style="width:15%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">Bug Fixes</span>
<span class="pull-right">90%</span>
</div>
<div class="progress progress-mini progress-success progress-striped active">
<div style="width:90%" class="bar"></div>
</div>
</a>
</li>
<li>
<a href="#">
See tasks with details
<i class="icon-arrow-right"></i>
</a>
</li>
</ul>
</li>
<li class="purple">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="icon-bell-alt icon-animated-bell"></i>
<span class="badge badge-important">8</span>
</a>
<ul class="pull-right dropdown-navbar navbar-pink dropdown-menu dropdown-caret dropdown-closer">
<li class="nav-header">
<i class="icon-warning-sign"></i>
8 Notifications
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">
<i class="btn btn-mini no-hover btn-pink icon-comment"></i>
New Comments
</span>
<span class="pull-right badge badge-info">+12</span>
</div>
</a>
</li>
<li>
<a href="#">
<i class="btn btn-mini btn-primary icon-user"></i>
Bob just signed up as an editor ...
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">
<i class="btn btn-mini no-hover btn-success icon-shopping-cart"></i>
New Orders
</span>
<span class="pull-right badge badge-success">+8</span>
</div>
</a>
</li>
<li>
<a href="#">
<div class="clearfix">
<span class="pull-left">
<i class="btn btn-mini no-hover btn-info icon-twitter"></i>
Followers
</span>
<span class="pull-right badge badge-info">+11</span>
</div>
</a>
</li>
<li>
<a href="#">
See all notifications
<i class="icon-arrow-right"></i>
</a>
</li>
</ul>
</li>
<li class="green">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="icon-envelope icon-animated-vertical"></i>
<span class="badge badge-success">5</span>
</a>
<ul class="pull-right dropdown-navbar dropdown-menu dropdown-caret dropdown-closer">
<li class="nav-header">
<i class="icon-envelope-alt"></i>
5 Messages
</li>
<li>
<a href="#">
<img src="/static/img/debug/avatars/avatar.png/" class="msg-photo" alt="Alex's Avatar"/>
<span class="msg-body">
<span class="msg-title">
<span class="blue">Alex:</span>
Ciao sociis natoque penatibus et auctor ...
</span>
<span class="msg-time">
<i class="icon-time"></i>
<span>a moment ago</span>
</span>
</span>
</a>
</li>
<li>
<a href="#">
<img src="/static/img/debug/avatars/avatar3.png" class="msg-photo" alt="Susan's Avatar"/>
<span class="msg-body">
<span class="msg-title">
<span class="blue">Susan:</span>
Vestibulum id ligula porta felis euismod ...
</span>
<span class="msg-time">
<i class="icon-time"></i>
<span>20 minutes ago</span>
</span>
</span>
</a>
</li>
<li>
<a href="#">
<img src="/static/img/debug/avatars/avatar4.png" class="msg-photo" alt="Bob's Avatar"/>
<span class="msg-body">
<span class="msg-title">
<span class="blue">Bob:</span>
Nullam quis risus eget urna mollis ornare ...
</span>
<span class="msg-time">
<i class="icon-time"></i>
<span>3:15 pm</span>
</span>
</span>
</a>
</li>
<li>
<a href="#">
See all messages
<i class="icon-arrow-right"></i>
</a>
</li>
</ul>
</li>
<li class="light-blue">
<a data-toggle="dropdown" href="#" class="dropdown-toggle">
<img class="nav-user-photo" src="/static/img/debug/avatars/user.jpg" alt="Jason's Photo"/>
<span class="user-info">
<small>Welcome,</small>
</span>
<i class="icon-caret-down"></i>
</a>
<ul class="user-menu pull-right dropdown-menu dropdown-yellow dropdown-caret dropdown-closer">
<li>
<a href="#">
<i class="icon-cog"></i>
Settings
</a>
</li>
<li>
<a href="#">
<i class="icon-user"></i>
Profile
</a>
</li>
<li class="divider"></li>
<li>
<a href="/accounts/logout/">
<i class="icon-off"></i>
Logout
</a>
</li>
</ul>
</li>
</ul>
<!--/.ace-nav-->
</div>
<!--/.container-fluid-->
</div>
<!--/.navbar-inner-->
</div>
<div class="main-container container-fluid">
<a class="menu-toggler" id="menu-toggler" href="#">
<span class="menu-text"></span>
</a>
<div class="sidebar" id="sidebar">
<script type="text/javascript">
try {
ace.settings.check('sidebar', 'fixed')
} catch (e) {
}
</script>
<div class="sidebar-shortcuts" id="sidebar-shortcuts">
<div class="sidebar-shortcuts-large" id="sidebar-shortcuts-large">
<button class="btn btn-small btn-success">
<i class="icon-signal"></i>
</button>
<button class="btn btn-small btn-info">
<i class="icon-pencil"></i>
</button>
<button class="btn btn-small btn-warning">
<i class="icon-group"></i>
</button>
<button class="btn btn-small btn-danger">
<i class="icon-cogs"></i>
</button>
</div>
<div class="sidebar-shortcuts-mini" id="sidebar-shortcuts-mini">
<span class="btn btn-success"></span>
<span class="btn btn-info"></span>
<span class="btn btn-warning"></span>
<span class="btn btn-danger"></span>
</div>
</div>
<!--#sidebar-shortcuts-->
<ul class="nav nav-list">
<li class="active">
<a href="index.html">
<i class="icon-dashboard"></i>
<span class="menu-text"> Dashboard </span>
</a>
</li>
<li class="active open">
<a href="#" class="dropdown-toggle">
<i class="icon-list"></i>
<span class="menu-text"> Promotions</span>
<b class="arrow icon-angle-down"></b>
</a>
<ul class="submenu">
<li class="active">
<a href="/promo/">
<i class="icon-double-angle-right"></i>
List
</a>
</li>
<li class="active">
<a href="/promo/add/">
<i class="icon-double-angle-right"></i>
New
</a>
</li>
</ul>
</li>
</ul>
<!--/.nav-list-->
<div class="sidebar-collapse" id="sidebar-collapse">
<i class="icon-double-angle-left" data-icon1="icon-double-angle-left" data-icon2="icon-double-angle-right"></i>
</div>
<script type="text/javascript">
try {
ace.settings.check('sidebar', 'collapsed')
} catch (e) {
}
</script>
</div>
<div class="main-content">
<div class="page-content">
<div class="page-header position-relative">
<h1>
Promotions
<small>
<i class="icon-double-angle-right"></i>
create new promotion
</small>
</h1>
</div>
<!--/.page-header-->
<div class="row-fluid">
<div class="span12">
<div class="space-6"></div>
<div class="row-fluid">
<div class="span12">
<div id="promotion-wizard" class="row-fluid hide" data-target="#step-container">
<ul class="wizard-steps">
<li data-target="#step-details" class="active">
<span class="step">1</span>
<span class="title">Promotion details</span>
</li>
<li data-target="#step-body">
<span class="step">2</span>
<span class="title">Promotion body</span>
</li>
<li data-target="#step-files">
<span class="step">3</span>
<span class="title">Add some files</span>
</li>
</ul>
</div>
<div class="step-content row-fluid position-relative" id="step-container">
<div class="step-pane active" id="step-details">
<h3 class="lighter block green">Enter the following information</h3>
<form id="form_wizard_details" action="" class="form-horizontal" method="post">
<input type='hidden' name='csrfmiddlewaretoken' value='VekTdYHKgrCBrMKWgyBDqzjKrlH2kGSa'/>
<div class="control-group" id="group-description">
<label class="control-label" for="id_description">Description</label>
<div class="controls">
<input class="span8" id="id_description" maxlength="250" name="description" type="text"
value="Yo dude"/>
</div>
</div>
<div class="control-group input-append" id="group-start_date">
<label class="control-label" for="id_start_date">Start date</label>
<div class="controls">
<input class="date-picker" id="id_start_date" name="start_date" type="text" value="2013-01-08"/>
<span class="add-on">
<i class="icon-calendar"></i>
</span>
</div>
</div>
<div class="control-group input-append" id="group-end_date">
<label class="control-label" for="id_end_date">End date</label>
<div class="controls">
<input class="date-picker" id="id_end_date" name="end_date" type="text" value="2013-07-08"/>
<span class="add-on">
<i class="icon-calendar"></i>
</span>
</div>
</div>
<div class="control-group">
<label class="control-label" for="id_active">Active</label>
<div class="controls">
<label>
<input class="ace ace-switch ace-switch-5" id="id_active" name="active" type="checkbox"/>
<span class="lbl"></span>
</label>
</div>
</div>
</form>
</div>
<div class="step-pane" id="step-body">
<form id="form_wizard_body" action="" class="form-horizontal" method="post">
<input type='hidden' name='csrfmiddlewaretoken' value='VekTdYHKgrCBrMKWgyBDqzjKrlH2kGSa'/>
<div class="wysiwyg-editor" id="id_body_text" name="body_text" type="text"/>
</form>
</div>
<div class="step-pane" id="step-files">
<h3 class="lighter block green">Add some files (mp3's, images) to your promotion</h3>
<form id="fileupload" action="/audio/upload/" method="POST" enctype="multipart/form-data">
<input type='hidden' name='csrfmiddlewaretoken' value='VekTdYHKgrCBrMKWgyBDqzjKrlH2kGSa'/>
<noscript>
<input type="hidden" name="redirect" value="/promo/1/">
</noscript>
<div class="fileupload-buttonbar">
<div class="span7">
<span class="btn btn-success fileinput-button">
<i class="icon-plus icon-white"></i>
<span>Add files...</span>
<input type="file" name="files[]"
multiple
>
</span>
<button type="submit" class="btn btn-primary start">
<i class="icon-upload icon-white"></i>
<span>Start upload</span>
</button>
<button type="reset" class="btn btn-warning cancel">
<i class="icon-ban-circle icon-white"></i>
<span>Cancel upload</span>
</button>
<button type="button" class="btn btn-danger delete">
<i class="icon-trash icon-white"></i>
<span>Delete</span>
</button>
<input type="checkbox" class="toggle">
</div>
<div class="span5 fileupload-progress fade">
<div
class="progress progress-success progress-striped active"
role="progressbar" aria-valuemin="0" aria-valuemax="100">
<div class="bar" style="width:0%;"></div>
</div>
<div class="progress-extended">&nbsp;</div>
</div>
</div>
<div class="fileupload-loading"></div>
<br>
<table role="presentation" class="table table-striped">
<tbody class="files" data-toggle="modal-gallery"
data-target="#modal-gallery"></tbody>
</table>
</form>
<div id="modal-gallery" class="modal modal-gallery hide fade"
data-filter=":odd" tabindex="-1">
<div class="modal-header">
<a class="close" data-dismiss="modal">&times;</a>
<h3 class="modal-title"></h3>
</div>
<div class="modal-body">
<div class="modal-image"></div>
</div>
<div class="modal-footer">
<a class="btn modal-download" target="_blank">
<i class="icon-download"></i>
<span>Download</span>
</a>
<a class="btn btn-success modal-play modal-slideshow"
data-slideshow="5000">
<i class="icon-play icon-white"></i>
<span>Slideshow</span>
</a>
<a class="btn btn-info modal-prev">
<i class="icon-arrow-left icon-white"></i>
<span>Previous</span>
</a>
<a class="btn btn-primary modal-next">
<span>Next</span>
<i class="icon-arrow-right icon-white"></i>
</a>
</div>
</div>
<script id="template-upload" type="text/x-tmpl">
{% for (var i=0, file; file=o.files[i]; i++) { %}
<tr class="template-upload fade">
<td class="preview"><span class="fade"></span></td>
<td class="name"><span>{% =file.name %}</span></td>
<td class="size"><span>{% =o.formatFileSize(file.size) %}</span></td>
{% if (file.error) { %}
<td class="error" colspan="2">
<span class="label label-important">Error</span>
{% =file.error %}
</td>
{% } else if (o.files.valid && !i) { %}
<td>
<div
class="progress progress-success progress-striped active"
role="progressbar" aria-valuemin="0" aria-valuemax="100"
aria-valuenow="0">
<div class="bar" style="width:0%;"></div>
</div>
</td>
<td>{% if (!o.options.autoUpload) { %}
<button class="btn btn-primary start">
<i class="icon-upload icon-white"></i>
<span>Start</span>
</button>
{% } %}</td>
{% } else { %}
<td colspan="2"></td>
{% } %}
<td>{% if (!i) { %}
<button class="btn btn-warning cancel">
<i class="icon-ban-circle icon-white"></i>
<span>Cancel</span>
</button>
{% } %}</td>
</tr>
{% } %}
</script>
<script id="template-download" type="text/x-tmpl">
{% for (var i=0, file; file=o.files[i]; i++) { %}
<tr class="template-download fade">
{% if (file.error) { %}
<td></td>
<td class="name"><span>{% =file.name %}</span></td>
<td class="size"><span>{% =o.formatFileSize(file.size) %}</span></td>
<td class="error" colspan="2"><span class="label label-important">Error</span>
{% =file.error %}</td>
{% } else { %}
<td class="preview">
{% if (file.thumbnail_url) { %}
<a href="{% =file.url %}"
title="{% =file.name %}"
data-gallery="gallery" download="{% =file.name %}">
<img src="{% =file.thumbnail_url %}">
</a>
{% } %}</td>
<td class="name">
<a href="{% =file.url %}"
title="{% =file.name %}"
data-gallery="{% =file.thumbnail_url&&'gallery' %}"
download="{% =file.name %}">{% =file.name %}
</a>
</td>
<td class="size"><span>{% =o.formatFileSize(file.size) %}</span></td>
<td colspan="2"></td>
{% } %}
<td>
<button class="btn btn-danger delete" data-type="{% =file.delete_type %}"
data-data='{ "csrfmiddlewaretoken" : "VekTdYHKgrCBrMKWgyBDqzjKrlH2kGSa" }'
data-url="{% =file.delete_url %}"
{% if (file.delete_with_credentials) { %}
data-xhr-fields='{"withCredentials":true}'
{% } %}>
<i class="icon-trash icon-white"></i>
<span>Delete</span>
</button>
<input type="checkbox" name="delete" value="1" class="toggle">
</td>
</tr>
{% } %}
</script>
</div>
</div>
<div class="row-fluid wizard-actions">
<button class="btn btn-prev">
<i class="icon-arrow-left"></i>
Prev
</button>
<button class="btn btn-success btn-next" data-last="Finish ">
Next
<i class="icon-arrow-right icon-on-right"></i>
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ace-settings-container" id="ace-settings-container">
<div class="btn btn-app btn-mini btn-warning ace-settings-btn" id="ace-settings-btn">
<i class="icon-cog bigger-150"></i>
</div>
<div class="ace-settings-box" id="ace-settings-box">
<div>
<div class="pull-left">
<select id="skin-colorpicker" class="hide">
<option data-skin="default" value="#438EB9">#438EB9</option>
<option data-skin="skin-1" value="#222A2D">#222A2D</option>
<option data-skin="skin-2" value="#C6487E">#C6487E</option>
<option data-skin="skin-3" value="#D0D0D0">#D0D0D0</option>
</select>
</div>
<span>&nbsp; Choose Skin</span>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-navbar"/>
<label class="lbl" for="ace-settings-navbar"> Fixed Navbar</label>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-sidebar"/>
<label class="lbl" for="ace-settings-sidebar"> Fixed Sidebar</label>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-breadcrumbs"/>
<label class="lbl" for="ace-settings-breadcrumbs"> Fixed Breadcrumbs</label>
</div>
<div>
<input type="checkbox" class="ace ace-checkbox-2" id="ace-settings-rtl"/>
<label class="lbl" for="ace-settings-rtl"> Right To Left (rtl)</label>
</div>
</div>
</div>
<!--/#ace-settings-container-->
</div>
</div>
<a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-small btn-inverse">
<i class="icon-double-angle-up icon-only bigger-110"></i>
</a>
<!--[if !IE]>-->
<script type="text/javascript">
window.jQuery || document.write("<script src='/static/js/uncompressed/jquery-2.0.3.js'>" + "<" + "/script>");
</script>
<!--<![endif]-->
<!--[if IE]>
<script type="text/javascript">
window.jQuery || document.write("<script src='/static/js/uncompressed/jquery-1.10.2.js'>"+"<"+"/script>");
</script>
<![endif]-->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js" />
<![endif]-->
<!--[if gte IE 8]>
<script src="/static/js/uncompressed/cors/jquery.xdr-transport.js"/>
<![endif]-->
<script type="text/javascript">
if ("ontouchend" in document) document.write("<script src='/static/js/uncompressed/jquery.mobile.custom.js'>" + "<" + "/script>");
</script>
<script src="/static/js/uncompressed/bootstrap.js"></script>
<!--[if lte IE 8]>
<script src="/static/js/uncompressed/excanvas.js"></script>
<![endif]-->
<script src="/static/js/uncompressed/jquery-ui-1.10.3.custom.js"></script>
<script src="/static/js/uncompressed/jquery.ui.touch-punch.js"></script>
<script src="/static/js/vendor/jquery.ui.widget.js"></script>
<script src="/static/js/uncompressed/jquery.slimscroll.js"></script>
<script src="/static/js/uncompressed/jquery.easy-pie-chart.js"></script>
<script src="/static/js/uncompressed/jquery.sparkline.js"></script>
<script src="/static/js/uncompressed/flot/jquery.flot.js"></script>
<script src="/static/js/uncompressed/flot/jquery.flot.pie.js"></script>
<script src="/static/js/uncompressed/flot/jquery.flot.resize.js"></script>
<script src="/static/js/uncompressed/ace-elements.js"></script>
<script src="/static/js/uncompressed/ace.js"></script>
<script src="/static/js/uncompressed/fuelux/fuelux.wizard.js"></script>
<script type="text/javascript">
$(function () {
var wizard = $('#promotion-wizard').ace_wizard();
wizard.on('change', function (e, info) {
if (info.step == 1) {
var detailsForm = $('#form_wizard_details');
detailsForm.ajaxSubmit({
success: function (e, val, errors) {
$('#id_pk').val(e.pk);
wizard.wizard('selectedItem', {step: 2});
},
error: function (e, val, errors) {
$.each(e.responseJSON, function (item, error) {
$('#group-' + item).addClass('error');
$('#help-inline-' + item).text(error);
});
}
});
e.preventDefault();
} else if (info.step == 2) {
var bodyForm = $('#form_wizard_body');
bodyForm.ajaxSubmit({
success: function (e, val, errors) {
$('#id_pk').val(e.pk);
wizard.wizard('selectedItem', {step: 3});
},
error: function (e, val, errors) {
$.each(e.responseJSON, function (item, error) {
$('#group-' + item).addClass('error');
$('#help-inline-' + item).text(error);
});
}
});
e.preventDefault();
}
});
wizard.on('finished', function () {
alert('Success!');
});
});
</script>
<script src="/static/js/fileupload/tmpl.min.js"></script>
<script src="/static/js/fileupload/load-image.min.js"></script>
<script src="/static/js/fileupload/canvas-to-blob.min.js"></script>
<script src="/static/js/fileupload/blueimp-gallery.min.js"></script>
<script src="/static/js/fileupload/jquery.iframe-transport.js"></script>
<script src="/static/js/fileupload/jquery.fileupload.js"></script>
<script src="/static/js/fileupload/jquery.fileupload-fp.js"></script>
<script src="/static/js/fileupload/jquery.fileupload-ui.js"></script>
<script src="/static/js/uncompressed/jquery.form.js"></script>
<script src="/static/js/uncompressed/date-time/bootstrap-datepicker.js"></script>
<script src="/static/js/uncompressed/date-time/moment.js"></script>
<script type="text/javascript" src="/static/js/uncompressed/jquery.hotkeys.js"></script>
<script type="text/javascript" src="/static/js/uncompressed/bootstrap-wysiwyg.js"></script>
<script type="text/javascript">
$(function () {
'use strict';
$('#id_body_text').ace_wysiwyg({
speech_button: false
}).prev().addClass('wysiwyg-style2');
});
</script>
</body>
</html>