main: {
expand: true,
cwd: 'app/',
- src: ['**', '!js/**', '!lib/**', '!**/*.example', '!**/*.css', '!**/*.js', '!**/bower_components/**', '!**/nbproject/**', '!**/font-awesome/**', '!npm-debug.log'],
+ src: ['**', '!**/*/*.html', '!js/**', '!lib/**', '!**/*.example', '!**/*.css', '!**/*.js', '!**/bower_components/**', '!**/nbproject/**', '!**/font-awesome/**', '!npm-debug.log'],
dest: 'dist/'
},
fa: {
}
},
+ replace: {
+ DivinElegy: {
+ src: ['dist/js/divinelegy.min.js'],
+ overwrite: true,
+ replacements: [{
+ from: /value\(\"rockEndpoint\",[^\)]*\)/g,
+ to: 'value("rockEndpoint", "http://divinelegy.com/staging/rock/public_html/")'
+ }]
+ }
+ },
+
cleanempty: {
options: {},
src: ['dist/**']
report: 'min',
mangle: true
}
+ },
+
+ ngtemplates: {
+ DivinElegy: {
+ cwd: 'app',
+ src: ['**/*.html', '!index.html'],
+ dest: '.tmp/templates.js',
+ options: {
+ base: 'dist',
+ module: 'DivinElegy',
+ usemin: 'js/divinelegy.min.js',
+ htmlmin: {
+ collapseBooleanAttributes: true,
+ collapseWhitespace: true,
+ conservativeCollapse: true,
+ removeAttributeQuotes: true,
+ removeComments: true, // Only if you don't use comment directives!
+ removeEmptyAttributes: true,
+ removeRedundantAttributes: true,
+ removeScriptTypeAttributes: true,
+ removeStyleLinkTypeAttributes: true
+ }
+ }
+ }
}
});
grunt.loadNpmTasks('grunt-rev');
grunt.loadNpmTasks('grunt-usemin');
grunt.loadNpmTasks('grunt-cleanempty');
+ grunt.loadNpmTasks('grunt-angular-templates');
+ grunt.loadNpmTasks('grunt-text-replace');
// Tell Grunt what to do when we type "grunt" into the terminal
grunt.registerTask('default', [
- 'clean', 'copy', 'cleanempty', 'useminPrepare', 'concat', 'uglify', 'cssmin', 'rev', 'usemin'
+ 'clean',
+ 'copy',
+ 'cleanempty',
+ 'useminPrepare',
+ 'ngtemplates',
+ 'concat',
+ 'uglify',
+ 'cssmin',
+ 'usemin',
+ 'replace'
]);
};
}).
success(function (data)
{
+ UserService.updateCache();
deferred.resolve(data);
}).
error(function(data, status)
margin-bottom: 20px;
}
-input[type="text"], select {
+input, select {
box-sizing:content-box;
-ms-box-sizing:content-box;
-moz-box-sizing:content-box;
margin-bottom: -40px;
}
-#message-box button{
+.message-box button{
position: absolute;
right: 10px;
top: 5px;
}
-#message-box #message {
+.message-box #message {
display: block;
text-align: center;
}
-#message-box {
+.message-box {
font-weight: bold;
margin-top: 40px;
padding: 10px;
position: relative;
}
-#message-box .ok {
+.message-box .ok {
display: inline-block;
text-align: center;
width: 32px;
}
.de-link,
-#message-box .ok:hover {
+.message-box .ok:hover {
cursor: pointer;
}
-#message-box.hidden {
+.message-box.hidden {
opacity: 0;
}
-#message-box.info {
+.message-box.info {
color: #3d7cb2;
border: 3px solid #3d7cb2;
}
-#message-box.success {
+.message-box.success {
background-color: #dff2bf;
color: #a5c084;
border: 2px solid #a5c084;
}
-#message-box.warning {
+.message-box.warning {
background-color: #feefb3;
color: #c9aa73;
border: 2px solid #c9aa73;
}
-#message-box.error {
+.message-box.error {
background-color: #ffbaba;
color: #d20000;
border: 2px solid #d20000;
}
+.modal-dialog .message-box {
+ margin-top: 0px;
+ margin-bottom: 10px;
+}
+
.simfileListing {
background: rgba(0,0,0,0.25);
border: 2px solid rgba(0,0,0,0.3);
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script>
<script src="bower_components/ngstorage/ngStorage.min.js"></script>
<script src="bower_components/hello/dist/hello.all.js"></script>
-
<script src="components/config/rockEndpoint-value.js"></script>
<script src="components/hello/hello-service.js"></script>
<script src="components/user/user-service.js"></script>
<script src="components/messages/messagebox-controller.js"></script>
<script src="components/messages/messagebox-directive.js"></script>
<script src="components/uiSettings/uisettings-service.js"></script>
-
<script src="pages/index/index.js"></script>
<script src="pages/upload/upload.js"></script>
<script src="pages/account/account.js"></script>
<script src="pages/profile/profile.js"></script>
<script src="pages/simfiles/simfiles.js"></script>
<script src="pages/packs/packs.js"></script>
-
- <!-- good luck cameron -->
<script src="divinelegy.js"></script>
<!-- endbuild -->
</head>
<body>
<div class="container">
<div class="box_full">
- <div id="message-box" ng-controller="MessageBoxController" ng-class="{'info' : messageType == 'info',
+ <div class="message-box" ng-controller="MessageBoxController" ng-class="{'info' : messageType == 'info',
'warning' : messageType == 'warning',
'error' : messageType == 'error',
'success' : messageType == 'success',
'hidden' : hidden}">
- <span id="message" message="message"></span> <button class="btn btn-warning btn-xs" ng-click="hide()">X</button>
+ <span class="message" message="message"></span> <button class="btn btn-warning btn-xs" ng-click="hide()">X</button>
</div>
</div>
<div class="box_side alpha">
<option value="single">Singles</option>\r
<option value="double">Doubles</option>\r
</select>\r
-\r
<select ng-model="$parent.difficultyFilterKeyword">\r
<option value="Any" disabled selected>Difficulty</option>\r
<option value="Any">Any</option>\r
<option value="Hard">Hard</option>\r
<option value="Expert">Expert</option>\r
</select>\r
-\r
<select ng-model="$parent.fgChangesFilterKeyword">\r
<option value="Any" disabled selected>FG Changes</option>\r
<option value="Any">Any</option>\r
<option value="Yes">Yes</option>\r
<option value="No">No</option>\r
</select>\r
-\r
<select ng-model="$parent.bgChangesFilterKeyword">\r
<option value="Any" disabled selected>BG Changes</option>\r
<option value="Any">Any</option>\r
<option value="Yes">Yes</option>\r
<option value="No">No</option>\r
</select>\r
-\r
<select ng-model="$parent.bpmChangesFilterKeyword">\r
<option value="Any" disabled selected>BPM Changes</option>\r
<option value="Any">Any</option>\r
<div class="modal-header">
+ <div class="message-box" ng-if="!hidden" ng-class="{'error' : messageType == 'error',
+ 'success': messageType == 'success'}"
+ >
+ <span class="message">{{status}}</span> <button class="btn btn-warning btn-xs" ng-click="$parent.hidden=true">X</button>
+ </div>
<h1 class="modal-title">Public Profile</h1>
- <h2 ng-if="status">{{status}}</h2>
</div>
<div class="modal-body">
<h2>Display name</h2>
.controller("ProfileController", ['$scope', '$modalInstance', 'UserService', function($scope, $modalInstance, UserService)
{
+ $scope.hidden = true;
+
UserService.getCurrentUser().then(function(user)
{
console.log(user);
$scope.country = user.country;
- $scope.email = user.email;
$scope.displayName = user.displayName;
});
$scope.ok = function()
{
- var test = {displayName:"tits mcgee"};
- UserService.updateCurrentUser(test).
+ var update = {displayName:$scope.displayName, country:$scope.country};
+ UserService.updateCurrentUser(update).
then(function(result)
{
console.log(result);
- }).
- fail(function()
+ if(result.status === 'success')
+ {
+ $scope.hidden = false;
+ $scope.messageType = 'success';
+ $scope.status = 'Saved!';
+ }
+
+ if(result.status === 'error')
+ {
+ $scope.hidden = false;
+ $scope.messageType = 'error';
+ $scope.status = result.messages[0];
+ }
+ },
+ function()
{
console.log('uh oh the spagghetti');
});
<option value="single">Singles</option>\r
<option value="double">Doubles</option>\r
</select>\r
-\r
<select ng-model="difficultyFilterKeyword">\r
<option value="Any" disabled selected>Difficulty</option>\r
<option value="Any">Any</option>\r
<option value="Hard">Hard</option>\r
<option value="Expert">Expert</option>\r
</select>\r
-\r
<select ng-model="fgChangesFilterKeyword">\r
<option value="Any" disabled selected>FG Changes</option>\r
<option value="Any">Any</option>\r
<option value="Yes">Yes</option>\r
<option value="No">No</option>\r
</select>\r
-\r
<select ng-model="bgChangesFilterKeyword">\r
<option value="Any" disabled selected>BG Changes</option>\r
<option value="Any">Any</option>\r
<option value="Yes">Yes</option>\r
<option value="No">No</option>\r
</select>\r
-\r
<select ng-model="bpmChangesFilterKeyword">\r
<option value="Any" disabled selected>BPM Changes</option>\r
<option value="Any">Any</option>\r
"grunt-contrib-copy": "~0.5.0",
"grunt-rev": "~0.1.0",
"grunt-contrib-clean": "~0.5.0",
- "grunt-cleanempty": "~1.0.0"
+ "grunt-cleanempty": "~1.0.0",
+ "grunt-angular-templates": "~0.5.7",
+ "grunt-text-replace": "~0.4.0"
},
"scripts": {
"postinstall": "bower install",