mirror of
https://github.com/taobataoma/meanTorrent.git
synced 2026-01-18 21:32:23 +01:00
73 lines
2.5 KiB
JavaScript
73 lines
2.5 KiB
JavaScript
(function (app) {
|
|
'use strict';
|
|
|
|
// Start by defining the main module and adding the module dependencies
|
|
angular
|
|
.module(app.applicationModuleName, app.applicationModuleVendorDependencies);
|
|
|
|
// Setting HTML5 Location Mode
|
|
angular
|
|
.module(app.applicationModuleName)
|
|
.config(bootstrapConfig)
|
|
.config(transConfig)
|
|
.config(markedConfig);
|
|
|
|
bootstrapConfig.$inject = ['$compileProvider', '$locationProvider', '$httpProvider', '$logProvider'];
|
|
|
|
function bootstrapConfig($compileProvider, $locationProvider, $httpProvider, $logProvider) {
|
|
$locationProvider.html5Mode({
|
|
enabled: true,
|
|
requireBase: false
|
|
}).hashPrefix('!');
|
|
|
|
$httpProvider.interceptors.push('authInterceptor');
|
|
|
|
// Disable debug data for production environment
|
|
// @link https://docs.angularjs.org/guide/production
|
|
$compileProvider.debugInfoEnabled(app.applicationEnvironment !== 'production');
|
|
$logProvider.debugEnabled(app.applicationEnvironment !== 'production');
|
|
}
|
|
|
|
transConfig.$inject = ['$translateProvider'];
|
|
function transConfig($translateProvider) {
|
|
$translateProvider.useSanitizeValueStrategy(null);
|
|
$translateProvider.preferredLanguage('en');
|
|
//$translateProvider.fallbackLanguage('cn');
|
|
}
|
|
|
|
markedConfig.$inject = ['markedProvider'];
|
|
function markedConfig(markedProvider) {
|
|
markedProvider.setOptions({gfm: true});
|
|
markedProvider.setRenderer({
|
|
link: function(href, title, text) {
|
|
return '<a ng-click="vm.markLinkClick($event, item);" href="' + href + '"' + (title ? ' title="' + title + '"' : '') + ' target="_blank">' + text + '</a>';
|
|
}
|
|
});
|
|
}
|
|
|
|
// Then define the init function for starting up the application
|
|
angular.element(document).ready(init);
|
|
|
|
function init() {
|
|
// Fixing facebook bug with redirect
|
|
if (window.location.hash && window.location.hash === '#_=_') {
|
|
if (window.history && history.pushState) {
|
|
window.history.pushState('', document.title, window.location.pathname);
|
|
} else {
|
|
// Prevent scrolling by storing the page's current scroll offset
|
|
var scroll = {
|
|
top: document.body.scrollTop,
|
|
left: document.body.scrollLeft
|
|
};
|
|
window.location.hash = '';
|
|
// Restore the scroll offset, should be flicker free
|
|
document.body.scrollTop = scroll.top;
|
|
document.body.scrollLeft = scroll.left;
|
|
}
|
|
}
|
|
|
|
// Then init the app
|
|
angular.bootstrap(document, [app.applicationModuleName]);
|
|
}
|
|
}(ApplicationConfiguration));
|