Update browserify dependencies and move controllers into views folder.
Update templates to support new React views.
This commit is contained in:
parent
3177c6430f
commit
7daa79e4d5
|
@ -3,10 +3,10 @@
|
||||||
"version": "0.5.0",
|
"version": "0.5.0",
|
||||||
"description": "Modern web app construction kit.",
|
"description": "Modern web app construction kit.",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"browserify": "10.1.0",
|
"browserify": "10.1.3",
|
||||||
"coffee-script": "1.9.2",
|
"coffee-script": "1.9.2",
|
||||||
"less": "1.7.5",
|
"less": "2.5.0",
|
||||||
"react": "0.13.2",
|
"react": "0.13.3",
|
||||||
"coffee-reactify": "3.0.0",
|
"coffee-reactify": "3.0.0",
|
||||||
"font-awesome": "4.3.0",
|
"font-awesome": "4.3.0",
|
||||||
"angular": "1.3.1",
|
"angular": "1.3.1",
|
||||||
|
@ -27,11 +27,12 @@
|
||||||
"karma-phantomjs-launcher": "0.1.4",
|
"karma-phantomjs-launcher": "0.1.4",
|
||||||
"karma-mocha": "0.1.9",
|
"karma-mocha": "0.1.9",
|
||||||
"karma-coffee-preprocessor": "0.2.1",
|
"karma-coffee-preprocessor": "0.2.1",
|
||||||
|
"karma-chrome-launcher": "0.1.8",
|
||||||
"karma-coverage": "0.2.6",
|
"karma-coverage": "0.2.6",
|
||||||
"mocha": "2.0.1",
|
"mocha": "2.0.1",
|
||||||
"protractor": "2.0.0",
|
"protractor": "2.0.0",
|
||||||
"protractor-coffee-preprocessor": "0.0.1",
|
"protractor-coffee-preprocessor": "0.0.1",
|
||||||
"react-tools": "~0.13.2"
|
"react-tools": "~0.13.3"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|
|
@ -67,7 +67,9 @@ def register_asset_bundles_with_app(web_app):
|
||||||
|
|
||||||
bundled_js = assets.Bundle(
|
bundled_js = assets.Bundle(
|
||||||
# 'scripts/rookeries/*.coffee',
|
# 'scripts/rookeries/*.coffee',
|
||||||
'scripts/rookeries/*.cjsx',
|
# 'scripts/rookeries/*.cjsx',
|
||||||
|
'scripts/rookeries/views/react_component_spike.cjsx',
|
||||||
|
'scripts/rookeries/views/modal-login.cjsx',
|
||||||
# 'scripts/rookeries/**/*.coffee',
|
# 'scripts/rookeries/**/*.coffee',
|
||||||
# 'scripts/rookeries/**/*.cjsx',
|
# 'scripts/rookeries/**/*.cjsx',
|
||||||
# node_modules_path + '/angular/angular.js',
|
# node_modules_path + '/angular/angular.js',
|
||||||
|
@ -76,7 +78,7 @@ def register_asset_bundles_with_app(web_app):
|
||||||
# node_modules_path + '/marked/lib/marked.js',
|
# node_modules_path + '/marked/lib/marked.js',
|
||||||
# node_modules_path + '/angular-md/dist/angular-md.js',
|
# node_modules_path + '/angular-md/dist/angular-md.js',
|
||||||
# node_modules_path + '/highlight.js/lib/highlight.js',
|
# node_modules_path + '/highlight.js/lib/highlight.js',
|
||||||
node_modules_path + '/react/dist/react.js',
|
# node_modules_path + '/react/dist/react.js',
|
||||||
# node_modules_path + '/react-bootstrap/dist/react-bootstrap.js',
|
# node_modules_path + '/react-bootstrap/dist/react-bootstrap.js',
|
||||||
filters='browserify',
|
filters='browserify',
|
||||||
output='scripts/rookeries-bundle.js',
|
output='scripts/rookeries-bundle.js',
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
###*
|
|
||||||
* Rookeries frontend - Login controller.
|
|
||||||
*
|
|
||||||
* @copyright (c) Copyright 2013-2015 Dorian Pula
|
|
||||||
* @license AGPL v3
|
|
||||||
* @author Dorian Pula [dorian.pula@amber-penguin-software.ca]
|
|
||||||
###
|
|
||||||
|
|
||||||
rookeries_app = require('../app.coffee')
|
|
||||||
|
|
||||||
rookeries_app.controller 'UserLoginController', [
|
|
||||||
'$scope', '$modal', '$log'
|
|
||||||
($scope, $modal, $log) ->
|
|
||||||
|
|
||||||
$scope.items = ['item1', 'item2', 'item3']
|
|
||||||
$scope.open = () ->
|
|
||||||
modalInstance = $modal.open(
|
|
||||||
templateUrl: 'static/partials/user-login.html',
|
|
||||||
controller: 'ModalInstanceCtrl',
|
|
||||||
resolve:
|
|
||||||
items: () ->
|
|
||||||
return $scope.items
|
|
||||||
)
|
|
||||||
|
|
||||||
modalInstance.result.then(
|
|
||||||
(selectedItem) -> $scope.selected = selectedItem,
|
|
||||||
() -> $log.info('Modal dismissed at: ' + new Date())
|
|
||||||
)
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
rookeries_app.controller 'ModalInstanceCtrl', [
|
|
||||||
'$scope', '$modalInstance', 'items'
|
|
||||||
($scope, $modalInstance, items) ->
|
|
||||||
|
|
||||||
$scope.items = items
|
|
||||||
$scope.selected =
|
|
||||||
item: $scope.items[0]
|
|
||||||
|
|
||||||
$scope.ok = () ->
|
|
||||||
$modalInstance.close($scope.selected.item)
|
|
||||||
|
|
||||||
$scope.cancel = () ->
|
|
||||||
$modalInstance.dismiss('cancel')
|
|
||||||
]
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
#
|
||||||
|
# Rookeries frontend - Modal Login view.
|
||||||
|
# @copyright (c) Copyright 2013-2015 Dorian Pula
|
||||||
|
# @license AGPL v3
|
||||||
|
# @author Dorian Pula [dorian.pula@amber-penguin-software.ca]
|
||||||
|
#
|
||||||
|
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
React = require('react')
|
||||||
|
Button = require('react-bootstrap').Button
|
||||||
|
Panel = require('react-bootstrap').Panel
|
||||||
|
Modal = require('react-bootstrap').Modal
|
||||||
|
ModalTrigger = require('react-bootstrap').ModalTrigger
|
||||||
|
|
||||||
|
UserLoginModal = React.createClass(
|
||||||
|
render: () ->
|
||||||
|
return(
|
||||||
|
|
||||||
|
<Modal {...this.props} bsStyle='primary' title='Login' animation={false}>
|
||||||
|
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="error_message">Nothing to see here</div>
|
||||||
|
<div class="row">
|
||||||
|
<label class="control-label col-lg-2" for="username">Username</label>
|
||||||
|
<div class="col-lg-8">
|
||||||
|
<input class="form-control" type="text" id="username" placeholder="Username" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<label class="control-label col-lg-2" for="password">Password</label>
|
||||||
|
<div class="col-lg-8">
|
||||||
|
<input class="form-control" type="password" id="password" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="modal-footer">
|
||||||
|
<Button bsStyle="warning">Cancel</Button>
|
||||||
|
<Button>Login</Button>
|
||||||
|
</div>
|
||||||
|
</Modal>
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
# TODO: Clean this guy up.
|
||||||
|
|
||||||
|
overlayTriggerInstance = (
|
||||||
|
<ModalTrigger modal={<UserLoginModal />}>
|
||||||
|
<Button bsStyle='primary' bsSize='large'>Launch demo modal</Button>
|
||||||
|
</ModalTrigger>
|
||||||
|
)
|
||||||
|
|
||||||
|
React.render(overlayTriggerInstance, document.getElementById('user-login-trigger'))
|
|
@ -1,7 +1,9 @@
|
||||||
|
'use strict'
|
||||||
|
|
||||||
React = require('react')
|
React = require('react')
|
||||||
|
ProgressBar = require('react-bootstrap').ProgressBar
|
||||||
|
|
||||||
Hello = React.createClass(
|
Hello = React.createClass(
|
||||||
displayName: 'Hello',
|
|
||||||
render: () ->
|
render: () ->
|
||||||
return <h1>Hacking away...</h1>
|
return <h1>Hacking away...</h1>
|
||||||
)
|
)
|
||||||
|
@ -9,3 +11,9 @@ Hello = React.createClass(
|
||||||
React.render(
|
React.render(
|
||||||
React.createElement(Hello), document.getElementById('cortanna')
|
React.createElement(Hello), document.getElementById('cortanna')
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Comments break stuff??
|
||||||
|
|
||||||
|
React.render(
|
||||||
|
<ProgressBar now={45} />, document.getElementById('progress')
|
||||||
|
)
|
|
@ -3,7 +3,7 @@
|
||||||
<head>
|
<head>
|
||||||
{% block page_headers %}{% include "page_header.html" %}{% endblock %}
|
{% block page_headers %}{% include "page_header.html" %}{% endblock %}
|
||||||
</head>
|
</head>
|
||||||
<body ng-controller="SwitchThemeCtrl as theme_switcher" ng-class="theme_switcher.name">
|
<body class="daytime">
|
||||||
{% include "header.html" %}
|
{% include "header.html" %}
|
||||||
|
|
||||||
{# Main body and navigation sidebar. #}
|
{# Main body and navigation sidebar. #}
|
||||||
|
|
|
@ -7,3 +7,4 @@
|
||||||
|
|
||||||
{# TODO Clear out once experient successful #}
|
{# TODO Clear out once experient successful #}
|
||||||
<div id="cortanna"></div>
|
<div id="cortanna"></div>
|
||||||
|
<div id="progress"></div>
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
<img class="header_logo" src="/static/images/mr-penguin-amber.svg" alt="rookeri.es logo" />
|
<img class="header_logo" src="/static/images/mr-penguin-amber.svg" alt="rookeri.es logo" />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
<h1 class="header_title">rookeri.es</h1>
|
<h1 class="header_title">Rookeries</h1>
|
||||||
<h2 class="header_tagline">Simple Site Scaffolding</h2>
|
<h2 class="header_tagline">Simple Site Scaffolding</h2>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{# Page header #}
|
{# Page header #}
|
||||||
{# TODO Make logo and favicon configurable. #}
|
{# TODO Make logo and favicon configurable. #}
|
||||||
<title>rookeri.es</title>
|
<title>Rookeries</title>
|
||||||
<link rel="icon" type="image/icon" href="static/mr-penguin-amber-favicon.ico" />
|
<link rel="icon" type="image/icon" href="static/mr-penguin-amber-favicon.ico" />
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
|
Loading…
Reference in New Issue