113:c572c71bfe3b
Anton Shestakov <av6@dwimlabs.net>, Mon, 25 Jul 2016 16:42:36 +0800
tests: generate both content-type header and json data in json_payload()

next change 116:1bdd61636a4c
previous change 88:108422c6a44d

templates/index.html

Permissions: -rw-r--r--

Other formats: Feeds:
<!DOCTYPE html>
<html>
<head>
<title>Fruit Bar Progress Tracker</title>
<link type="image/x-icon" href="{{ url_for('static', filename='favicon.ico') }}" rel="shortcut icon">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" integrity="sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r" crossorigin="anonymous">
<link type="text/css" href="{{ url_for('static', filename='css/custom.css') }}" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js" integrity="sha384-rY/jv8mMhqDabXSo+UCggqKtdmBfd3qC2/KvyTDNQ6PcUJXaxK1tMepoQda4g5vB" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js" integrity="sha384-FZY+KSLVXVyc1qAlqH9oCx1JEOlQh6iXfw3o2n3Iy32qGjXmUPWT9I0Z9e9wxYe3" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone-min.js" integrity="sha384-NNt9ocJfZhIg2c5PbM5G2a3tTaeXhEfqCHWHNB7htzaWKn8MwFkzVyGdzLA8QMX7" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/backbone-localstorage.js/1.1.16/backbone.localStorage-min.js" integrity="sha384-Zpwf6luZ5SbIxvI1RMyckS2a3b2JtJLXvGDZ5S9UsnusTN8pIvgPf+xH39Ur8+Iv" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
{% assets filters='jsmin', output='bundles/fruitbar.%(version)s.js',
'js/backbone.shard.js',
'js/framework/models.js',
'js/framework/collections.js',
'js/framework/views/base.js',
'js/framework/views/inline.js',
'js/framework/views/workspaces.js',
'js/framework/views/projects.js',
'js/framework/views/tasks.js',
'js/framework/router.js',
'js/ui.js'
%}
<script type="text/javascript" src="{{ ASSET_URL }}"></script>
{% endassets %}
<script>
_.extend(_.templateSettings, {
variable: 'data'
});
</script>
</head>
<body style="opacity: 0;">
<div class="container">
<div class="row">
<div class="col-sm-2 col-xs-6 ui-sidebar text-right">
<button class="btn btn-xs btn-success btn-new-project">New project</button>
</div>
<div class="col-sm-2 col-sm-push-8 col-xs-6 ui-sidebar">
<ul class="nav nav-pills workspace-tabs">
<script id="workspace-tab-template" type="text/template">
<li data-workspace="<%- data.name %>">
<a href="#<%- data.name %>">#<%- data.name %></a>
</li>
</script>
</ul>
</div>
<div class="col-sm-8 col-sm-pull-2 col-xs-12">
<h3>
<span class="text-muted">Workspace</span> <span class="workspace-title"></span> <small>(<span class="project-counter"></span>)</small>
</h3>
<hr>
</div>
</div>
<section class="projects">
<script id="project-template" type="text/template">
<div class="project">
<div class="row">
<div class="col-sm-2 text-right ondemand">
<button class="btn btn-xs btn-danger btn-delete-project">Delete</button>
<button class="btn btn-xs btn-success btn-new-task">New task</button>
</div>
<div class="col-sm-4 col-xs-6">
<h4>
<span class="inline-editable"
data-input-type="input"
data-model="project"
data-model-attribute="name"><%- data.name %></span>
</h4>
</div>
<div class="col-sm-4 col-xs-6">
<div class="progress">
<div class="progress-bar progress-bar-striped" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0"></div>
</div>
</div>
</div>
<div class="tasks"></div>
</div>
</script>
<script id="task-template" type="text/template">
<div class="task">
<div class="row">
<div class="col-sm-2 text-right ondemand">
<button class="btn btn-xs btn-danger btn-delete-task">Delete</button>
</div>
<div class="col-sm-4">
<input type="checkbox" <% if (data.done) print('checked') %>>
<span class="inline-editable"
data-input-type="input"
data-model="task"
data-model-attribute="name"><%- data.name %></span>
</div>
<div class="col-sm-4">
<div class="task-note">
<span class="inline-editable"
data-input-type="textarea"
data-model="task"
data-model-attribute="note"></span>
</div>
</div>
</div>
</div>
</script>
</section>
</div>
</body>
</html>