mirror of
https://github.com/TitanEmbeds/Titan.git
synced 2024-11-15 02:21:21 +01:00
Change channels and handling mentions in msgs
This commit is contained in:
parent
f2f389ae7d
commit
78986c6803
@ -154,16 +154,17 @@ def get_online_embed_users(guild_id):
|
|||||||
@rate_limiter.limit("2500/hour")
|
@rate_limiter.limit("2500/hour")
|
||||||
@rate_limiter.limit("12/minute", key_func = channel_ratelimit_key)
|
@rate_limiter.limit("12/minute", key_func = channel_ratelimit_key)
|
||||||
def fetch():
|
def fetch():
|
||||||
|
guild_id = request.args.get("guild_id")
|
||||||
channel_id = request.args.get('channel_id')
|
channel_id = request.args.get('channel_id')
|
||||||
after_snowflake = request.args.get('after', None, type=int)
|
after_snowflake = request.args.get('after', None, type=int)
|
||||||
if user_unauthenticated():
|
if user_unauthenticated():
|
||||||
key = session['user_keys'][channel_id]
|
key = session['user_keys'][channel_id]
|
||||||
else:
|
else:
|
||||||
key = None
|
key = None
|
||||||
status = update_user_status(channel_id, session['username'], key)
|
status = update_user_status(guild_id, session['username'], key)
|
||||||
if status['banned'] or status['revoked']:
|
if status['banned'] or status['revoked']:
|
||||||
messages = {}
|
messages = {}
|
||||||
status_code = 401
|
status_code = 403
|
||||||
else:
|
else:
|
||||||
messages = discord_api.get_channel_messages(channel_id, after_snowflake)
|
messages = discord_api.get_channel_messages(channel_id, after_snowflake)
|
||||||
status_code = messages['code']
|
status_code = messages['code']
|
||||||
@ -176,13 +177,14 @@ def fetch():
|
|||||||
@rate_limiter.limit("1200/hour")
|
@rate_limiter.limit("1200/hour")
|
||||||
@rate_limiter.limit("6/minute", key_func = channel_ratelimit_key)
|
@rate_limiter.limit("6/minute", key_func = channel_ratelimit_key)
|
||||||
def post():
|
def post():
|
||||||
|
guild_id = request.args.get("guild_id")
|
||||||
channel_id = request.form.get('channel_id')
|
channel_id = request.form.get('channel_id')
|
||||||
content = request.form.get('content')
|
content = request.form.get('content')
|
||||||
if user_unauthenticated():
|
if user_unauthenticated():
|
||||||
key = session['user_keys'][channel_id]
|
key = session['user_keys'][channel_id]
|
||||||
else:
|
else:
|
||||||
key = None
|
key = None
|
||||||
status = update_user_status(channel_id, session['username'], key)
|
status = update_user_status(guild_id, session['username'], key)
|
||||||
if status['banned'] or status['revoked']:
|
if status['banned'] or status['revoked']:
|
||||||
message = {}
|
message = {}
|
||||||
status_code = 401
|
status_code = 401
|
||||||
|
@ -4,7 +4,9 @@
|
|||||||
/* global guild_id */
|
/* global guild_id */
|
||||||
|
|
||||||
var logintimer; // timer to keep track of user inactivity after hitting login
|
var logintimer; // timer to keep track of user inactivity after hitting login
|
||||||
var last_message_id;
|
var fetchtimeout; // fetch routine timer
|
||||||
|
var last_message_id; // last message tracked
|
||||||
|
var selected_channel = guild_id; // user selected channel, defaults to #general channel
|
||||||
|
|
||||||
function element_in_view(element, fullyInView) {
|
function element_in_view(element, fullyInView) {
|
||||||
var pageTop = $(window).scrollTop();
|
var pageTop = $(window).scrollTop();
|
||||||
@ -59,7 +61,7 @@ function fetch(channel_id, after=null) {
|
|||||||
method: "GET",
|
method: "GET",
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
url: "/api/fetch",
|
url: "/api/fetch",
|
||||||
data: {"channel_id": channel_id, "after": after}
|
data: {"guild_id": guild_id,"channel_id": channel_id, "after": after}
|
||||||
});
|
});
|
||||||
return funct.promise();
|
return funct.promise();
|
||||||
}
|
}
|
||||||
@ -133,6 +135,7 @@ function fill_channels(channels) {
|
|||||||
var rendered = Mustache.render(template, {"channelid": chan.id, "channelname": chan.name});
|
var rendered = Mustache.render(template, {"channelid": chan.id, "channelname": chan.name});
|
||||||
$("#channels-list").append(rendered);
|
$("#channels-list").append(rendered);
|
||||||
}
|
}
|
||||||
|
$("#channel-"+selected_channel).parent().addClass("active");
|
||||||
}
|
}
|
||||||
|
|
||||||
function fill_discord_members(discordmembers) {
|
function fill_discord_members(discordmembers) {
|
||||||
@ -189,6 +192,24 @@ function _wait_for_discord_login(index) {
|
|||||||
}, 5000);
|
}, 5000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function select_channel(channel_id) {
|
||||||
|
selected_channel = channel_id;
|
||||||
|
last_message_id = null;
|
||||||
|
$("#channels-list > li.active").removeClass("active");
|
||||||
|
$("#channel-"+selected_channel).parent().addClass("active");
|
||||||
|
clearTimeout(fetchtimeout);
|
||||||
|
run_fetch_routine();
|
||||||
|
}
|
||||||
|
|
||||||
|
function replace_message_mentions(message) {
|
||||||
|
var mentions = message.mentions;
|
||||||
|
for (var i = 0; i < mentions.length; i++) {
|
||||||
|
var mention = mentions[i];
|
||||||
|
message.content = message.content.replace(new RegExp("<@" + mention.id + ">", 'g'), "@" + mention.username + "#" + mention.discriminator);
|
||||||
|
}
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
function fill_discord_messages(messages, jumpscroll) {
|
function fill_discord_messages(messages, jumpscroll) {
|
||||||
if (messages.length == 0) {
|
if (messages.length == 0) {
|
||||||
return last_message_id;
|
return last_message_id;
|
||||||
@ -198,7 +219,7 @@ function fill_discord_messages(messages, jumpscroll) {
|
|||||||
Mustache.parse(template);
|
Mustache.parse(template);
|
||||||
for (var i = messages.length-1; i >= 0; i--) {
|
for (var i = messages.length-1; i >= 0; i--) {
|
||||||
var message = messages[i];
|
var message = messages[i];
|
||||||
var rendered = Mustache.render(template, {"id": message.id, "full_timestamp": message.timestamp, "time": message.timestamp, "username": message.author.username, "discriminator": message.author.discriminator, "content": message.content});
|
var rendered = Mustache.render(template, {"id": message.id, "full_timestamp": message.timestamp, "time": message.timestamp, "username": message.author.username, "discriminator": message.author.discriminator, "content": replace_message_mentions(message).content});
|
||||||
$("#chatcontent").append(rendered);
|
$("#chatcontent").append(rendered);
|
||||||
last = message.id;
|
last = message.id;
|
||||||
}
|
}
|
||||||
@ -207,7 +228,7 @@ function fill_discord_messages(messages, jumpscroll) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function run_fetch_routine() {
|
function run_fetch_routine() {
|
||||||
var channel_id = guild_id; //TODO: implement channel selector
|
var channel_id = selected_channel;
|
||||||
var fet;
|
var fet;
|
||||||
var jumpscroll;
|
var jumpscroll;
|
||||||
if (last_message_id == null) {
|
if (last_message_id == null) {
|
||||||
@ -220,6 +241,7 @@ function run_fetch_routine() {
|
|||||||
}
|
}
|
||||||
fet.done(function(data) {
|
fet.done(function(data) {
|
||||||
var status = data.status;
|
var status = data.status;
|
||||||
|
console.log(data);
|
||||||
update_embed_userchip(status.authenticated, status.avatar, status.username, status.user_id);
|
update_embed_userchip(status.authenticated, status.avatar, status.username, status.user_id);
|
||||||
last_message_id = fill_discord_messages(data.messages, jumpscroll);
|
last_message_id = fill_discord_messages(data.messages, jumpscroll);
|
||||||
if (status.manage_embed) {
|
if (status.manage_embed) {
|
||||||
@ -233,7 +255,7 @@ function run_fetch_routine() {
|
|||||||
fill_discord_members(guildobj.discordmembers);
|
fill_discord_members(guildobj.discordmembers);
|
||||||
fill_authenticated_users(guildobj.embedmembers.authenticated);
|
fill_authenticated_users(guildobj.embedmembers.authenticated);
|
||||||
fill_unauthenticated_users(guildobj.embedmembers.unauthenticated);
|
fill_unauthenticated_users(guildobj.embedmembers.unauthenticated);
|
||||||
setTimeout(run_fetch_routine, 10000);
|
fetchtimeout = setTimeout(run_fetch_routine, 10000);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
fet.fail(function(data) {
|
fet.fail(function(data) {
|
||||||
@ -246,7 +268,7 @@ function run_fetch_routine() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
fet.catch(function(data) {
|
fet.catch(function(data) {
|
||||||
setTimeout(run_fetch_routine, 10000);
|
fetchtimeout = setTimeout(run_fetch_routine, 10000);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,17 +25,7 @@
|
|||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
<main>
|
<main>
|
||||||
<div id="chatcontent" class="chatcontent">
|
<div id="chatcontent" class="chatcontent"></div>
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> Hello everyone!</p>
|
|
||||||
<p><span title="March 31, 2017 3:30PM" class="chattimestamp">3:30PM</span> <span class="chatusername">EndenDragon#69420</span> adfsadfsdfas</p>
|
|
||||||
</div>
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<ul id="guild-nav" class="side-nav">
|
<ul id="guild-nav" class="side-nav">
|
||||||
@ -109,7 +99,7 @@
|
|||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
<script id="mustache_channellistings" type="text/template">
|
<script id="mustache_channellistings" type="text/template">
|
||||||
<li><a class="waves-effect truncate" id="channel-{{channelid}}"><span class="channel-hash">#</span> {{channelname}}</a></li>
|
<li><a class="waves-effect truncate" id="channel-{{channelid}}" onclick='select_channel("{{channelid}}");'><span class="channel-hash">#</span> {{channelname}}</a></li>
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script id="mustache_authedusers" type="text/template">
|
<script id="mustache_authedusers" type="text/template">
|
||||||
|
Loading…
Reference in New Issue
Block a user