aboutsummaryrefslogtreecommitdiff
path: root/resources/assets/javascripts/bootstrap/clipboard.js
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+github@gmail.com>2021-07-22 16:07:19 +0200
committerJan-Hendrik Willms <tleilax+github@gmail.com>2021-07-22 16:19:12 +0200
commita3da1483a9e689846179159355badfec8073dbec (patch)
tree770dcca6bdf5f6f2a11b0e7fcbbeda6919a3fc52 /resources/assets/javascripts/bootstrap/clipboard.js
current code from svn, revision 62608
Diffstat (limited to 'resources/assets/javascripts/bootstrap/clipboard.js')
-rw-r--r--resources/assets/javascripts/bootstrap/clipboard.js95
1 files changed, 95 insertions, 0 deletions
diff --git a/resources/assets/javascripts/bootstrap/clipboard.js b/resources/assets/javascripts/bootstrap/clipboard.js
new file mode 100644
index 0000000..0b6c271
--- /dev/null
+++ b/resources/assets/javascripts/bootstrap/clipboard.js
@@ -0,0 +1,95 @@
+STUDIP.domReady(function() {
+ jQuery('.clipboard-draggable-item').draggable(
+ {
+ cursorAt: {left: 28, top: 15},
+ appendTo: 'body',
+ helper: function () {
+ var dragged_item = jQuery('<div class="dragged-clipboard-item"></div>');
+ jQuery(dragged_item).data('id', jQuery(this).data('id'));
+ jQuery(dragged_item).data('range_type', jQuery(this).data('range_type'));
+ jQuery(dragged_item).text(jQuery(this).data('name'));
+ return dragged_item;
+ },
+ revert: true,
+ revertDuration: 0
+ }
+ );
+
+ jQuery('.clipboard-area').droppable(
+ {
+ drop: STUDIP.Clipboard.handleItemDrop
+ }
+ );
+
+ jQuery('.clipboard-selector').change(
+ STUDIP.Clipboard.switchClipboard
+ );
+
+ jQuery(document).on(
+ 'change',
+ '.clipboard-selector',
+ STUDIP.Clipboard.switchClipboard
+ );
+
+ jQuery(document).on(
+ 'dragend',
+ '.clipboard-draggable-item',
+ function(event) {
+ jQuery(event.target).css(
+ {
+ 'top': '0px',
+ 'left': '0px'
+ }
+ );
+ }
+ );
+
+ jQuery(document).on(
+ 'dragover',
+ '.clipboard-area',
+ function(event) {
+ event.preventDefault();
+ event.stopPropagation();
+ }
+ );
+
+ jQuery(document).on(
+ 'dragenter',
+ '.clipboard-area',
+ function(event) {
+ //TODO:rrv2: use CSS classes!
+ event.target.style.backgroundColor = '#0F0';
+ }
+ );
+
+ jQuery(document).on(
+ 'dragleave',
+ '.clipboard-area',
+ function(event) {
+ //TODO:rrv2: use CSS classes!
+ event.target.style.backgroundColor = '#FFF';
+ }
+ );
+
+ jQuery(document).on(
+ 'click',
+ '.clipboard-remove-button',
+ STUDIP.Clipboard.confirmRemoveClick
+ );
+
+ jQuery(document).on(
+ 'click',
+ '.clipboard-item-remove-button',
+ STUDIP.Clipboard.confirmRemoveItemClick
+ );
+
+ jQuery('.clipboard-widget .new-clipboard-form').submit(
+ STUDIP.Clipboard.handleAddForm
+ );
+
+ jQuery(document).on(
+ 'click',
+ '.clipboard-add-item-button',
+ STUDIP.Clipboard.handleAddItemButtonClick
+ );
+});