mirror of
				https://github.com/telekom-security/tpotce.git
				synced 2025-07-02 01:27:27 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			115 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			115 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2016
 | |
|  *
 | |
|  * This file is licensed under the Affero General Public License version 3
 | |
|  * or later.
 | |
|  *
 | |
|  * See the COPYING-README file.
 | |
|  *
 | |
|  */
 | |
| 
 | |
| (function() {
 | |
| 	if (!OC.Share) {
 | |
| 		OC.Share = {};
 | |
| 	}
 | |
| 	
 | |
| 	var TEMPLATE = 
 | |
| 			'<button class="icon icon-social-twitter pop-up hasTooltip"' +
 | |
| 			'	title="{{shareToolTipTwitter}}"' +
 | |
| 			'	data-url="https://twitter.com/intent/tweet?url={{reference}}"></button>' +
 | |
| 			'<button class="icon icon-social-facebook pop-up hasTooltip"' +
 | |
| 			'	title="{{shareToolTipFacebook}}"' +
 | |
| 			'	data-url="https://www.facebook.com/sharer/sharer.php?u={{reference}}"></button>' +
 | |
| 			'<button class="icon icon-social-diaspora pop-up hasTooltip"' +
 | |
| 			'	title="{{shareToolTipDiaspora}}"' +
 | |
| 			'	data-url="https://sharetodiaspora.github.io/?url={{reference}}"></button>' +
 | |
| 			'<button class="icon icon-social-googleplus pop-up hasTooltip"' +
 | |
| 			'	title="{{shareToolTipGoogle}}"' +
 | |
| 			'	data-url="https://plus.google.com/share?url={{reference}}"></button>' +
 | |
| 			'<button class="icon icon-mail-grey pop-up hasTooltip"' +
 | |
| 			'	title="{{shareToolTipMail}}"' +
 | |
| 			'	data-url="mailto:?body={{reference}}"></button>'
 | |
| 		;
 | |
| 	
 | |
| 	/**
 | |
| 	 * @class OCA.Share.ShareDialogLinkSocialView
 | |
| 	 * @member {OC.Share.ShareModel} model
 | |
| 	 * @member {jQuery} $el
 | |
| 	 * @memberof OCA.Sharing
 | |
| 	 * @classdesc
 | |
| 	 *
 | |
| 	 * Represents the GUI of the share dialogue
 | |
| 	 *
 | |
| 	 */
 | |
| 	var ShareDialogLinkSocialView = OC.Backbone.View.extend({
 | |
| 		/** @type {string} **/
 | |
| 		id: 'shareDialogLinkSocialView',
 | |
| 
 | |
| 		/** @type {OC.Share.ShareConfigModel} **/
 | |
| 		configModel: undefined,
 | |
| 
 | |
| 		/** @type {Function} **/
 | |
| 		_template: undefined,
 | |
| 
 | |
| 		events: {
 | |
| 			"click .pop-up": 'onPopUpClick'
 | |
| 		},
 | |
| 
 | |
| 		initialize: function(options) {
 | |
| 			var view = this;
 | |
| 
 | |
| 			if(!_.isUndefined(options.configModel)) {
 | |
| 				this.configModel = options.configModel;
 | |
| 			} else {
 | |
| 				throw 'missing OC.Share.ShareConfigModel';
 | |
| 			}
 | |
| 		},
 | |
| 
 | |
| 		onPopUpClick: function(event) {
 | |
| 			var url = $(event.target).data('url');
 | |
| 			$(event.target).tooltip('hide');
 | |
| 			if (url) {
 | |
| 				var width = 600;
 | |
| 				var height = 400;
 | |
| 				var left = (screen.width/2)-(width/2);
 | |
| 				var top = (screen.height/2)-(height/2);
 | |
| 
 | |
| 				window.open(url, 'name', 'width=' + width + ', height=' + height + ', top=' + top + ', left=' + left);
 | |
| 			}
 | |
| 		},
 | |
| 
 | |
| 		render: function() {
 | |
| 			this.$el.html(this.template({
 | |
| 				cid: this.cid,
 | |
| 				reference: this.model.getLink(),
 | |
| 				shareToolTipTwitter: t('core', 'Share to Twitter. Opens in a new window.'),
 | |
| 				shareToolTipFacebook: t('core', 'Share to Facebook. Opens in a new window.'),
 | |
| 				shareToolTipDiaspora: t('core', 'Share to Diaspora. Opens in a new window.'),
 | |
| 				shareToolTipGoogle: t('core', 'Share to Google+. Opens in a new window.'),
 | |
| 				shareToolTipMail: t('core', 'Share via email. Opens your mail client.')
 | |
| 			}));
 | |
| 
 | |
| 			this.$el.find('.hasTooltip').tooltip({trigger: 'hover'});
 | |
| 
 | |
| 			this.delegateEvents();
 | |
| 
 | |
| 			return this;
 | |
| 		},
 | |
| 
 | |
| 		/**
 | |
| 		 * @returns {Function} from Handlebars
 | |
| 		 * @private
 | |
| 		 */
 | |
| 		template: function(data) {
 | |
| 			if (!this._template) {
 | |
| 				this._template = Handlebars.compile(TEMPLATE);
 | |
| 			}
 | |
| 			return this._template(data);
 | |
| 		}
 | |
| 
 | |
| 	});
 | |
| 
 | |
| 	OC.Share.ShareDialogLinkSocialView = ShareDialogLinkSocialView;
 | |
| 
 | |
| })();
 | 
