forked from leftypol/leftypol
Merge branch 'master' of https://github.com/savetheinternet/Tinyboard
Conflicts: templates/themes/sitemap/info.php
This commit is contained in:
commit
9f323ae65f
11 changed files with 425 additions and 99 deletions
|
@ -1,6 +1,9 @@
|
|||
/*
|
||||
* quote-selection.js
|
||||
*
|
||||
* This is a little buggy.
|
||||
* Allows you to quote a post by just selecting some text, then beginning to type.
|
||||
*
|
||||
* Released under the MIT license
|
||||
* Copyright (c) 2012 Michael Save <savetheinternet@tinyboard.org>
|
||||
*
|
||||
|
@ -31,12 +34,15 @@ $(document).ready(function(){
|
|||
|
||||
var altKey = false;
|
||||
var ctrlKey = false;
|
||||
var metaKey = false;
|
||||
|
||||
$(document).keyup(function(e) {
|
||||
if (e.altKey)
|
||||
if (e.keyCode == 18)
|
||||
altKey = false;
|
||||
else if (e.ctrlKey)
|
||||
else if (e.keyCode == 17)
|
||||
ctrlKey = false;
|
||||
else if (e.keyCode == 91)
|
||||
metaKey = false;
|
||||
});
|
||||
|
||||
$(document).keydown(function(e) {
|
||||
|
@ -44,9 +50,11 @@ $(document).ready(function(){
|
|||
altKey = true;
|
||||
else if (e.ctrlKey)
|
||||
ctrlKey = true;
|
||||
else if (e.metaKey)
|
||||
metaKey = true;
|
||||
|
||||
if (altKey || ctrlKey) {
|
||||
console.log('CTRL/ALT used. Ignoring');
|
||||
if (altKey || ctrlKey || metaKey) {
|
||||
// console.log('CTRL/ALT/Something used. Ignoring');
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -56,20 +64,20 @@ $(document).ready(function(){
|
|||
var selection = window.getSelection();
|
||||
var $post = $(selection.anchorNode).parents('.post');
|
||||
if ($post.length == 0) {
|
||||
console.log('Start of selection was not post div', $(selection.anchorNode).parent());
|
||||
// console.log('Start of selection was not post div', $(selection.anchorNode).parent());
|
||||
return;
|
||||
}
|
||||
|
||||
var postID = $post.find('.post_no:eq(1)').text();
|
||||
|
||||
if (postID != $(selection.focusNode).parents('.post').find('.post_no:eq(1)').text()) {
|
||||
console.log('Selection left post div', $(selection.focusNode).parent());
|
||||
// console.log('Selection left post div', $(selection.focusNode).parent());
|
||||
return;
|
||||
}
|
||||
|
||||
;
|
||||
var selectedText = selection.toString();
|
||||
console.log('Selected text: ' + selectedText.replace(/\n/g, '\\n').replace(/\r/g, '\\r'));
|
||||
// console.log('Selected text: ' + selectedText.replace(/\n/g, '\\n').replace(/\r/g, '\\r'));
|
||||
|
||||
if ($('body').hasClass('debug'))
|
||||
alert(selectedText);
|
||||
|
@ -86,7 +94,7 @@ $(document).ready(function(){
|
|||
/* to solve some bugs on weird browsers, we need to replace \r\n with \n and then undo that after */
|
||||
var quote = (last_quote != postID ? '>>' + postID + '\r\n' : '') + $.trim(selectedText).replace(/\r\n/g, '\n').replace(/^/mg, '>').replace(/\n/g, '\r\n') + '\r\n';
|
||||
|
||||
console.log('Deselecting text');
|
||||
// console.log('Deselecting text');
|
||||
selection.removeAllRanges();
|
||||
|
||||
if (document.selection) {
|
||||
|
|
34
js/youtube.js
Normal file
34
js/youtube.js
Normal file
|
@ -0,0 +1,34 @@
|
|||
/*
|
||||
* youtube
|
||||
* https://github.com/savetheinternet/Tinyboard/blob/master/js/youtube.js
|
||||
*
|
||||
* Don't load the YouTube player unless the video image is clicked.
|
||||
* This increases performance issues when many videos are embedded on the same page.
|
||||
* Currently only compatiable with YouTube.
|
||||
*
|
||||
* Proof of concept.
|
||||
*
|
||||
* Released under the MIT license
|
||||
* Copyright (c) 2013 Michael Save <savetheinternet@tinyboard.org>
|
||||
*
|
||||
* Usage:
|
||||
* $config['embedding'] = array();
|
||||
* $config['embedding'][] = array(
|
||||
* '/^https?:\/\/(\w+\.)?youtube\.com\/watch\?v=([a-zA-Z0-9\-_]{10,11})(&.+)?$/i',
|
||||
* '<div class="video-container" data-video="$2"><a href="$0" target="_blank" class="file"><img style="width:360px;height:270px;" src="http://img.youtube.com/vi/$2/0.jpg"/></a></div>'
|
||||
);
|
||||
* $config['additional_javascript'][] = 'js/jquery.min.js';
|
||||
* $config['additional_javascript'][] = 'js/youtube.js';
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
onready(function(){
|
||||
$('div.video-container a').attr('href', 'javascript:void(0)');
|
||||
$('div.video-container').click(function() {
|
||||
var videoID = $(this).data('video');
|
||||
|
||||
$(this).html('<iframe style="float:left;margin: 10px 20px" type="text/html" width="360" height="270" src="http://www.youtube.com/embed/' + videoID + '?autoplay=1" frameborder="0"/>');
|
||||
});
|
||||
});
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue