mirror of
https://github.com/2ec0b4/kaamelott-soundboard.git
synced 2025-12-10 16:35:34 +00:00
Révise l'utilisation de require
This commit is contained in:
@@ -162,6 +162,9 @@ header h1 {
|
|||||||
* FOOTER
|
* FOOTER
|
||||||
* -----------------------------------------------------------------------------
|
* -----------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
.likely {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
footer {
|
footer {
|
||||||
height: 40px;
|
height: 40px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@@ -481,12 +484,12 @@ noscript p {
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
#app {
|
#main {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
width: 90%;
|
width: 90%;
|
||||||
}
|
}
|
||||||
#app .uil-ring-css {
|
#main .uil-ring-css {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
-ms-transform: scale(0.4);
|
-ms-transform: scale(0.4);
|
||||||
-webkit-transform: scale(0.4);
|
-webkit-transform: scale(0.4);
|
||||||
@@ -562,7 +565,7 @@ noscript p {
|
|||||||
.ribbon {
|
.ribbon {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
#app {
|
#main {
|
||||||
padding-bottom: 50px;
|
padding-bottom: 50px;
|
||||||
padding-top: 90px;
|
padding-top: 90px;
|
||||||
}
|
}
|
||||||
@@ -576,7 +579,7 @@ noscript p {
|
|||||||
header h1 {
|
header h1 {
|
||||||
font-size: 1.6em;
|
font-size: 1.6em;
|
||||||
}
|
}
|
||||||
#app {
|
#main {
|
||||||
padding-top: 75px;
|
padding-top: 75px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,6 @@
|
|||||||
<meta itemprop="description" content="Quelques-unes des meilleures répliques sonores de Kaamelott. C'était ça ou chante Sloubi.">
|
<meta itemprop="description" content="Quelques-unes des meilleures répliques sonores de Kaamelott. C'était ça ou chante Sloubi.">
|
||||||
<meta itemprop="image" content="http://kaamelott-soundboard.2ec0b4.fr/img/ks.jpg">
|
<meta itemprop="image" content="http://kaamelott-soundboard.2ec0b4.fr/img/ks.jpg">
|
||||||
|
|
||||||
<link rel="stylesheet" href="/js/vendor/likely/likely.css" media="screen">
|
|
||||||
<link rel="stylesheet" href="/css/style.css" media="screen">
|
<link rel="stylesheet" href="/css/style.css" media="screen">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
@@ -56,13 +55,13 @@
|
|||||||
<h1>Kaamelott Soundboard</h1>
|
<h1>Kaamelott Soundboard</h1>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<div id="app">
|
<main id="main" class="site-main" role="main">
|
||||||
<noscript>
|
<noscript>
|
||||||
<p>Ça va mal se mettre si JavaScript n'est pas activé sur votre navigateur</p>
|
<p>Ça va mal se mettre si JavaScript n'est pas activé sur votre navigateur</p>
|
||||||
</noscript>
|
</noscript>
|
||||||
|
|
||||||
<div class="uil-ring-css"><div></div></div>
|
<div class="uil-ring-css"><div></div></div>
|
||||||
</div>
|
</main>
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
<div class="likely likely-light" data-url="http://kaamelott-soundboard.2ec0b4.fr/">
|
<div class="likely likely-light" data-url="http://kaamelott-soundboard.2ec0b4.fr/">
|
||||||
@@ -73,6 +72,6 @@
|
|||||||
</footer>
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script data-main="/js/app/app" src="/js/vendor/require/require.js"></script>
|
<script data-main="/js/app/main" src="/node_modules/requirejs/require.js"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,53 +1,44 @@
|
|||||||
requirejs(['main'], function () {
|
define('app', function(require) {
|
||||||
"use strict";
|
var Marionette = require('marionette'),
|
||||||
require([
|
Radio = require('backbone.radio'),
|
||||||
'backbone',
|
SoundboardController = require('controllers/soundboard'),
|
||||||
'jquery',
|
app;
|
||||||
'marionette',
|
|
||||||
'underscore',
|
|
||||||
'likely',
|
|
||||||
'controllers/soundboard',
|
|
||||||
'views/main'
|
|
||||||
],
|
|
||||||
function(Backbone, $, Marionette, _, Likely,
|
|
||||||
SoundboardController,
|
|
||||||
MainView) {
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var initialize = function initialize() {
|
require('css!../../node_modules/ilyabirman-likely/release/likely.css');
|
||||||
window.App = (window.App) || new Marionette.Application();
|
require('likely');
|
||||||
|
|
||||||
App.on("start", start);
|
app = Marionette.Application.extend({
|
||||||
|
initialize: function intialize() {
|
||||||
App.addRegions({
|
this.addRegions({
|
||||||
'app': '#app'
|
'mainRegion': "#main"
|
||||||
});
|
});
|
||||||
|
|
||||||
App.controllers = {};
|
Radio.channel('app').reply('region:show', this.showRegion.bind(this));
|
||||||
App.controllers.soundboard = new SoundboardController();
|
|
||||||
|
|
||||||
App.router = new Marionette.AppRouter();
|
this.router = new Marionette.AppRouter();
|
||||||
|
|
||||||
App.router.processAppRoutes(App.controllers.soundboard, {
|
this.start();
|
||||||
|
},
|
||||||
|
|
||||||
|
start: function start() {
|
||||||
|
var soundboardController = new SoundboardController();
|
||||||
|
|
||||||
|
this.router.processAppRoutes(soundboardController, {
|
||||||
"": "index"
|
"": "index"
|
||||||
});
|
});
|
||||||
|
|
||||||
App.start();
|
|
||||||
};
|
|
||||||
|
|
||||||
var start = function () {
|
|
||||||
var mainView = new MainView();
|
|
||||||
App.getRegion('app').show(mainView);
|
|
||||||
|
|
||||||
if (Backbone.history) {
|
if (Backbone.history) {
|
||||||
Backbone.history.start();
|
Backbone.history.start();
|
||||||
App.trigger("backbone:history:start");
|
this.trigger("backbone:history:start");
|
||||||
}
|
}
|
||||||
|
|
||||||
likely.initiate();
|
likely.initiate();
|
||||||
};
|
},
|
||||||
|
|
||||||
initialize();
|
showRegion: function showRegion(params) {
|
||||||
});
|
this.mainRegion.show(params.view);
|
||||||
}
|
}
|
||||||
);
|
});
|
||||||
|
|
||||||
|
return app;
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,14 +1,11 @@
|
|||||||
define(
|
define('collections/sounds', function(require) {
|
||||||
'collections/sounds',
|
|
||||||
[
|
|
||||||
'backbone',
|
|
||||||
'underscore',
|
|
||||||
'models/sound'
|
|
||||||
],
|
|
||||||
function (Backbone, _, Sound) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var Sounds = Backbone.Collection.extend({
|
var Backbone = require('backbone'),
|
||||||
|
Sound = require('models/sound'),
|
||||||
|
Sounds;
|
||||||
|
|
||||||
|
Sounds = Backbone.Collection.extend({
|
||||||
model: Sound,
|
model: Sound,
|
||||||
url: 'sounds/sounds.json',
|
url: 'sounds/sounds.json',
|
||||||
comparator: function(a, b) {
|
comparator: function(a, b) {
|
||||||
|
|||||||
@@ -1,21 +1,20 @@
|
|||||||
define(
|
define('controllers/soundboard', function(require) {
|
||||||
'controllers/soundboard',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'radios/sounds',
|
|
||||||
'views/soundboard'
|
|
||||||
],
|
|
||||||
function (Marionette, SoundsRadio, SoundboardView) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var SoundboardController = Marionette.Object.extend({
|
var Marionette = require('marionette'),
|
||||||
|
Radio = require('backbone.radio'),
|
||||||
|
SoundsRadio = require('radios/sounds'),
|
||||||
|
SoundboardView = require('views/soundboard'),
|
||||||
|
SoundboardController;
|
||||||
|
|
||||||
|
SoundboardController = Marionette.Object.extend({
|
||||||
initialize: function() {
|
initialize: function() {
|
||||||
this.soundsRadio = new SoundsRadio();
|
var soundsRadio = new SoundsRadio();
|
||||||
},
|
},
|
||||||
index: function() {
|
index: function() {
|
||||||
var currentView = App.getRegion('app').currentView;
|
var view = new SoundboardView();
|
||||||
|
|
||||||
currentView.showChildView('main', new SoundboardView());
|
Radio.channel('app').request('region:show', { view: view });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -1,25 +1,36 @@
|
|||||||
requirejs.config({
|
require.config({
|
||||||
baseUrl: 'js/app',
|
baseUrl: 'js/app',
|
||||||
urlArgs:'t=160525',
|
urlArgs:'t=160525',
|
||||||
paths: {
|
paths: {
|
||||||
'backbone': '/js/vendor/backbone/backbone-min',
|
'backbone': '../../node_modules/backbone/backbone-min',
|
||||||
'backbone.radio': '/js/vendor/backbone/plugins/backbone.radio/backbone.radio.min',
|
'backbone.radio': '../../node_modules/backbone.radio/build/backbone.radio',
|
||||||
'hbs': '/js/vendor/require/plugins/require-handlebars-plugin/hbs',
|
'css': '../../node_modules/require-css/css',
|
||||||
'jquery': '/js/vendor/jquery/jquery-1.12.2.min',
|
'handlebars': '../../node_modules/handlebars/dist/handlebars.min',
|
||||||
'likely': '/js/vendor/likely/likely',
|
'hbs': '../../node_modules/requirejs-handlebars/hb',
|
||||||
'marionette': '/js/vendor/marionette/backbone.marionette.min',
|
'jquery': '../../node_modules/jquery/dist/jquery.min',
|
||||||
'underscore': '/js/vendor/underscore/underscore-min'
|
'likely': '../../node_modules/ilyabirman-likely/release/likely',
|
||||||
},
|
'marionette': '../../node_modules/backbone.marionette/lib/backbone.marionette.min',
|
||||||
hbs: {
|
'text': '../../node_modules/requirejs-text/text',
|
||||||
"templateExtension": "hbs",
|
'underscore': '../../node_modules/underscore/underscore-min',
|
||||||
"hbs/underscore": "underscore"
|
'app': './app'
|
||||||
},
|
},
|
||||||
shim: {
|
shim: {
|
||||||
'likely' : {
|
'backbone': {
|
||||||
exports: 'likely'
|
deps: ['underscore', 'jquery'],
|
||||||
|
exports: 'Backbone'
|
||||||
|
},
|
||||||
|
'hbs': {
|
||||||
|
'templateExtension': 'hbs',
|
||||||
|
'hbs/underscore': 'underscore'
|
||||||
},
|
},
|
||||||
'marionette' : {
|
'marionette' : {
|
||||||
deps: ['jquery', 'backbone', 'underscore']
|
deps: ['backbone']
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
define(function(require) {
|
||||||
|
var App = require('app');
|
||||||
|
|
||||||
|
new App();
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,12 +1,10 @@
|
|||||||
define(
|
define('models/sound', function(require) {
|
||||||
'models/sound',
|
|
||||||
[
|
|
||||||
'backbone'
|
|
||||||
],
|
|
||||||
function (Backbone) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var Sound = Backbone.Model.extend({
|
var Backbone = require('backbone'),
|
||||||
|
Sound;
|
||||||
|
|
||||||
|
Sound = Backbone.Model.extend({
|
||||||
audio: null,
|
audio: null,
|
||||||
defaults: {
|
defaults: {
|
||||||
title: "",
|
title: "",
|
||||||
|
|||||||
@@ -1,14 +1,12 @@
|
|||||||
define(
|
define('radios/sounds', function(require) {
|
||||||
'radios/sounds',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'backbone.radio',
|
|
||||||
'collections/sounds'
|
|
||||||
],
|
|
||||||
function (Marionette, Radio, SoundsCollection) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var SoundsRadio = Marionette.Object.extend({
|
var Marionette = require('marionette'),
|
||||||
|
Radio = require('backbone.radio'),
|
||||||
|
SoundsCollection = require('collections/sounds'),
|
||||||
|
SoundsRadio;
|
||||||
|
|
||||||
|
SoundsRadio = Marionette.Object.extend({
|
||||||
initialize : function () {
|
initialize : function () {
|
||||||
this.channel = Radio.channel('Sounds');
|
this.channel = Radio.channel('Sounds');
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
<main class="site-main" role="main">
|
|
||||||
|
|
||||||
</main>
|
|
||||||
@@ -1,14 +1,12 @@
|
|||||||
define(
|
define('views/filter', function(require) {
|
||||||
'views/filter',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'backbone.radio',
|
|
||||||
'hbs!templates/filter'
|
|
||||||
],
|
|
||||||
function (Marionette, Radio, SoundsFilterTemplate) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var SoundsFilterView = Marionette.LayoutView.extend({
|
var Marionette = require('marionette'),
|
||||||
|
Radio = require('backbone.radio'),
|
||||||
|
SoundsFilterTemplate = require('hbs!templates/filter.hbs'),
|
||||||
|
SoundsFilterView;
|
||||||
|
|
||||||
|
SoundsFilterView = Marionette.LayoutView.extend({
|
||||||
template: SoundsFilterTemplate,
|
template: SoundsFilterTemplate,
|
||||||
ui: {
|
ui: {
|
||||||
searchForm: 'form',
|
searchForm: 'form',
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
define(
|
|
||||||
'views/main',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'hbs!templates/main'
|
|
||||||
],
|
|
||||||
function (Marionette, MainTemplate) {
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var MainView = Marionette.LayoutView.extend({
|
|
||||||
template: MainTemplate,
|
|
||||||
regions: {
|
|
||||||
'main': 'main'
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
return MainView;
|
|
||||||
});
|
|
||||||
@@ -1,15 +1,13 @@
|
|||||||
define(
|
define('views/sound', function(require) {
|
||||||
'views/sound',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'models/sound',
|
|
||||||
'hbs!templates/sound'
|
|
||||||
],
|
|
||||||
function (Marionette, SoundModel, SoundBlockTemplate) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var SoundBlockView = Marionette.ItemView.extend({
|
var Marionette = require('marionette'),
|
||||||
template: SoundBlockTemplate,
|
SoundModel = require('models/sound'),
|
||||||
|
SoundTemplate = require('hbs!templates/sound.hbs'),
|
||||||
|
SoundView;
|
||||||
|
|
||||||
|
SoundView = Marionette.ItemView.extend({
|
||||||
|
template: SoundTemplate,
|
||||||
model: SoundModel,
|
model: SoundModel,
|
||||||
tagName: 'li',
|
tagName: 'li',
|
||||||
ui: {
|
ui: {
|
||||||
@@ -65,5 +63,5 @@ define(
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
return SoundBlockView;
|
return SoundView;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,25 +1,21 @@
|
|||||||
define(
|
define('views/soundboard', function(require) {
|
||||||
'views/soundboard',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'views/filter',
|
|
||||||
'views/sounds',
|
|
||||||
'hbs!templates/soundboard'
|
|
||||||
],
|
|
||||||
function (Marionette, SoundsFilterView, SoundsView, SoundboardTemplate) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var SoundboardView = Marionette.LayoutView.extend({
|
var Marionette = require('marionette'),
|
||||||
|
SoundsFilterView = require('views/filter'),
|
||||||
|
SoundsView = require('views/sounds'),
|
||||||
|
SoundboardTemplate = require('hbs!templates/soundboard.hbs'),
|
||||||
|
SoundboardView;
|
||||||
|
|
||||||
|
SoundboardView = Marionette.LayoutView.extend({
|
||||||
template: SoundboardTemplate,
|
template: SoundboardTemplate,
|
||||||
regions: {
|
regions: {
|
||||||
'filter': '#filter',
|
'filter': '#filter',
|
||||||
'list': '#list'
|
'list': '#list'
|
||||||
},
|
},
|
||||||
onShow: function() {
|
onShow: function() {
|
||||||
|
|
||||||
this.showChildView('filter', new SoundsFilterView());
|
this.showChildView('filter', new SoundsFilterView());
|
||||||
this.showChildView('list', new SoundsView());
|
this.showChildView('list', new SoundsView());
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,13 @@
|
|||||||
define(
|
define('views/sounds', function(require) {
|
||||||
'views/sounds',
|
|
||||||
[
|
|
||||||
'marionette',
|
|
||||||
'backbone.radio',
|
|
||||||
'underscore',
|
|
||||||
'collections/sounds',
|
|
||||||
'views/sound'
|
|
||||||
],
|
|
||||||
function (Marionette, Radio, _, SoundsCollection, SoundView) {
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var SoundsCollectionView = Marionette.CollectionView.extend({
|
var Marionette = require('marionette'),
|
||||||
|
Radio = require('backbone.radio'),
|
||||||
|
SoundsCollection = require('collections/sounds'),
|
||||||
|
SoundView = require('views/sound'),
|
||||||
|
SoundsCollectionView;
|
||||||
|
|
||||||
|
SoundsCollectionView = Marionette.CollectionView.extend({
|
||||||
childView: SoundView,
|
childView: SoundView,
|
||||||
collection: new SoundsCollection(),
|
collection: new SoundsCollection(),
|
||||||
tagName: 'ul',
|
tagName: 'ul',
|
||||||
|
|||||||
Reference in New Issue
Block a user