more fixes for relative paths

v1.18.x
Baris Soner Usakli 12 years ago
parent d3c5afd94c
commit de55a35684

@ -152,10 +152,14 @@ fs.readFile(path.join(__dirname, 'config.json'), function(err, data) {
if (!secret) secret = utils.generateUUID(); if (!secret) secret = utils.generateUUID();
if (!bcrypt_rounds) bcrypt_rounds = 10; if (!bcrypt_rounds) bcrypt_rounds = 10;
var urlObject = url.parse(base_url); var urlObject = url.parse(base_url),
var relative_path = urlObject.pathname; relative_path = urlObject.pathname,
var host = urlObject.host; host = urlObject.host,
var protocol = urlObject.protocol; protocol = urlObject.protocol;
if(relative_path.length === 1) {
relative_path = '';
}
var fs = require('fs'), var fs = require('fs'),
path = require('path'), path = require('path'),

@ -6,12 +6,14 @@ var socket,
// todo: cleanup,etc // todo: cleanup,etc
(function() { (function() {
RELATIVE_PATH = $('#relative_path').val();
function loadConfig(callback) {
$.ajax({ $.ajax({
url: '/forum/config.json?v=' + new Date().getTime(), url: RELATIVE_PATH + '/config.json?v=' + new Date().getTime(),
success: function(data) { success: function(data) {
API_URL = data.api_url; API_URL = data.api_url;
RELATIVE_PATH = data.relative_path;
config = data; config = data;
socket = io.connect(config.socket.address + (config.socket.port ? ':' + config.socket.port : '')); socket = io.connect(config.socket.address + (config.socket.port ? ':' + config.socket.port : ''));
@ -68,6 +70,23 @@ var socket,
}); });
}); });
socket.on('api:user.get_online_users', function(users) {
jQuery('.username-field').each(function() {
if (this.processed === true) return;
var el = jQuery(this),
uid = el.parents('li').attr('data-uid');
if (uid && jQuery.inArray(uid, users) !== -1) {
el.prepend('<i class="icon-circle"></i>&nbsp;');
} else {
el.prepend('<i class="icon-circle-blank"></i>&nbsp;');
}
el.processed = true;
});
});
function showDisconnectModal() { function showDisconnectModal() {
$('#disconnect-modal').modal({ $('#disconnect-modal').modal({
backdrop:'static', backdrop:'static',
@ -79,9 +98,12 @@ var socket,
window.location.reload(); window.location.reload();
}); });
} }
callback();
}, },
async: false async: false
}); });
}
// takes a string like 1000 and returns 1,000 // takes a string like 1000 and returns 1,000
app.addCommas = function(text) { app.addCommas = function(text) {
@ -209,24 +231,16 @@ var socket,
}, 100); }, 100);
} }
socket.on('api:user.get_online_users', function(users) {
jQuery('.username-field').each(function() {
if (this.processed === true) return;
var el = jQuery(this),
uid = el.parents('li').attr('data-uid');
if (uid && jQuery.inArray(uid, users) !== -1) {
el.prepend('<i class="icon-circle"></i>&nbsp;');
} else {
el.prepend('<i class="icon-circle-blank"></i>&nbsp;');
}
el.processed = true;
});
});
jQuery('document').ready(function() { jQuery('document').ready(function() {
loadConfig(function () {});
app.enter_room('global'); app.enter_room('global');

@ -179,7 +179,11 @@
function parse_template() { function parse_template() {
if (!templates[tpl_url] || !template_data) return; if (!templates[tpl_url] || !template_data) return;
template_data['relative_path'] = RELATIVE_PATH || global.config.relative_path;
if(typeof global !== "undefined")
template_data['relative_path'] = global.config.relative_path;
else
template_data['relative_path'] = RELATIVE_PATH;
document.getElementById('content').innerHTML = templates[tpl_url].parse(template_data); document.getElementById('content').innerHTML = templates[tpl_url].parse(template_data);

@ -8,6 +8,9 @@
<meta name="description" content="" /> <meta name="description" content="" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-capable" content="yes" />
<input id="relative_path" type="hidden" template-variable="relative_path" value="{relative_path}" />
<link href="{cssSrc}" rel="stylesheet" media="screen"> <link href="{cssSrc}" rel="stylesheet" media="screen">
<link href="{relative_path}/vendor/bootstrap/css/bootstrap-responsive.min.css" rel="stylesheet" media="screen"> <link href="{relative_path}/vendor/bootstrap/css/bootstrap-responsive.min.css" rel="stylesheet" media="screen">
<link rel="stylesheet" href="{relative_path}/vendor/fontawesome/css/font-awesome.min.css"> <link rel="stylesheet" href="{relative_path}/vendor/fontawesome/css/font-awesome.min.css">
@ -30,6 +33,8 @@
<script type="text/javascript" src="{relative_path}/src/utils.js"></script> <script type="text/javascript" src="{relative_path}/src/utils.js"></script>
<link rel="stylesheet" type="text/css" href="{relative_path}/css/nodebb.css" /> <link rel="stylesheet" type="text/css" href="{relative_path}/css/nodebb.css" />
</head> </head>
<body> <body>
@ -74,5 +79,6 @@
<input id="csrf_token" type="hidden" template-variable="csrf" value="{csrf}" /> <input id="csrf_token" type="hidden" template-variable="csrf" value="{csrf}" />
<div class="container" id="content"> <div class="container" id="content">

Loading…
Cancel
Save