403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/im/view/element/attach/src/types/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/im/view/element/attach/src/types/link.js
/**
 * Bitrix Messenger
 * Vue component
 *
 * Link (attach type)
 *
 * @package bitrix
 * @subpackage im
 * @copyright 2001-2019 Bitrix
 */

import "./link.css";
import {AttachTypeImage} from "./image";
import { AttachLinks } from "../mixin/attachLinks";
import { Utils } from 'im.lib.utils';

export const AttachTypeLink =
{
	property: 'LINK',
	name: 'bx-im-view-element-attach-link',
	component:
	{
		mixins: [
			AttachLinks
		],
		props:
		{
			config: {type: Object, default: {}},
			color: {type: String, default: 'transparent'},
		},
		methods:
		{
			getImageConfig(element)
			{
				return {IMAGE: [{
					NAME: element.NAME,
					PREVIEW: element.PREVIEW,
					WIDTH: element.WIDTH,
					HEIGHT: element.HEIGHT,
				}]};
			},
			getLinkName(element)
			{
				return element.NAME? element.NAME: element.LINK;
			},
			getDescription(element)
			{
				const text = element.HTML? element.HTML: element.DESC;
				return Utils.text.decode(text);
			}
		},
		computed:
		{
			imageComponentName()
			{
				return AttachTypeImage.name;
			},
		},
		components:
		{
			[AttachTypeImage.name]: AttachTypeImage.component
		},
		//language=Vue
		template: `
			<div class="bx-im-element-attach-type-link">
				<template v-for="(element, index) in config.LINK">
					<div class="bx-im-element-attach-type-link-element" :key="index">
						<a 
							v-if="element.LINK"
							:href="element.LINK"
							target="_blank"
							class="bx-im-element-attach-type-link-name" 
							@click="openLink({element: element, event: $event})"
						>
							{{getLinkName(element)}}
						</a>
						<span 
							v-else
							class="bx-im-element-attach-type-ajax-link"
							@click="openLink({element: element, event: $event})"
						>
							{{getLinkName(element)}}
						</span>
						<div v-if="element.DESC || element.HTML" class="bx-im-element-attach-type-link-desc" v-html="getDescription(element)"></div>
						<div 
							v-if="element.PREVIEW" 
							class="bx-im-element-attach-type-link-image"
							@click="openLink({element: element, event: $event})"
						>
							<component :is="imageComponentName" :config="getImageConfig(element)" :color="color"/>
						</div>
					</div>
				</template>
			</div>
		`
	},
};

Youez - 2016 - github.com/yon3zu
LinuXploit