/* * 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 = '' + '' + '' + '' + '' ; /** * @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; })();