first commit

This commit is contained in:
2026-02-28 11:43:07 +01:00
commit 1946f96bf8
5772 changed files with 817711 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,286 @@
CKEDITOR.dialog.add( 'googlemapsIcons', function( editor ) {
'use strict';
var MarkerColors = editor.config.googleMaps_markerColors || [ 'green', 'purple', 'yellow', 'blue', 'orange', 'red' ],
columns = MarkerColors.length,
images = [],
dialog;
for (var i = 0; i < columns; i++ ) {
var name = MarkerColors[i];
images.push({ name:name, src:'https://maps.gstatic.com/mapfiles/ms/micons/' + name + '-dot.png' } );
}
var icons = editor.config.googleMaps_Icons;
if (icons) {
for (name in icons) {
var icon = icons[ name ];
images.push( { name:name, src:icon.marker.image } );
}
columns = Math.min( 10, images.length );
}
/**
* Simulate "this" of a dialog for non-dialog events.
* @type {CKEDITOR.dialog}
*/
var onClick = function( evt ) {
var target = evt.data.getTarget(),
targetName = target.getName();
if ( targetName == 'a' )
target = target.getChild( 0 );
else if ( targetName != 'img' )
return;
var name = target.getAttribute( 'data-name' );
dialog.onSelect( name );
dialog.hide();
evt.data.preventDefault();
};
var onKeydown = CKEDITOR.tools.addFunction( function( ev, element ) {
ev = new CKEDITOR.dom.event( ev );
element = new CKEDITOR.dom.element( element );
var relative, nodeToMove;
var keystroke = ev.getKeystroke();
var rtl = editor.lang.dir == 'rtl';
switch ( keystroke ) {
// UP-ARROW
case 38 :
// relative is TR
if ( ( relative = element.getParent().getParent().getPrevious() ) ) {
nodeToMove = relative.getChild( [ element.getParent().getIndex(), 0 ] );
nodeToMove.focus();
}
ev.preventDefault();
break;
// DOWN-ARROW
case 40 :
// relative is TR
if ( ( relative = element.getParent().getParent().getNext() ) ) {
nodeToMove = relative.getChild( [ element.getParent().getIndex(), 0 ] );
if ( nodeToMove )
nodeToMove.focus();
}
ev.preventDefault();
break;
// ENTER
// SPACE
case 32 :
onClick( { data: ev } );
ev.preventDefault();
break;
// RIGHT-ARROW
case rtl ? 37 : 39 :
// TAB
case 9 :
// relative is TD
if ( ( relative = element.getParent().getNext() ) ) {
nodeToMove = relative.getChild( 0 );
nodeToMove.focus();
ev.preventDefault(true);
} else {
// relative is TR
if ( ( relative = element.getParent().getParent().getNext() ) ) {
nodeToMove = relative.getChild( [ 0, 0 ] );
if ( nodeToMove )
nodeToMove.focus();
ev.preventDefault(true);
}
}
break;
// LEFT-ARROW
case rtl ? 39 : 37 :
// SHIFT + TAB
case CKEDITOR.SHIFT + 9 :
// relative is TD
if ( ( relative = element.getParent().getPrevious() ) ) {
nodeToMove = relative.getChild( 0 );
nodeToMove.focus();
ev.preventDefault(true);
} else {
// relative is TR
if ( ( relative = element.getParent().getParent().getPrevious() ) ) {
nodeToMove = relative.getLast().getChild( 0 );
nodeToMove.focus();
ev.preventDefault(true);
}
}
break;
default :
// Do not stop not handled events.
return;
}
});
var buildHtml = function() {
// Build the HTML for the images table.
var html = [
'<table style="width:100%;height:100%" cellspacing="2" cellpadding="2"',
CKEDITOR.env.ie && CKEDITOR.env.quirks ? ' style="position:absolute;"' : '',
'><tbody>'
];
for ( i = 0 ; i < images.length ; i++ ) {
if ( i % columns === 0 )
html.push( '<tr>' );
var image = images[ i ];
html.push(
'<td class="cke_centered" style="vertical-align: middle;">' +
'<a href="javascript:void(0)"',
' class="cke_hand" tabindex="-1" onkeydown="CKEDITOR.tools.callFunction( ', onKeydown, ', event, this );">',
'<img class="cke_hand" ' +
' src="', image.src , '"',
' data-name="', image.name, '"',
// IE BUG: Below is a workaround to an IE image loading bug to ensure the image sizes are correct.
( CKEDITOR.env.ie ? ' onload="this.setAttribute(\'width\', 2); this.removeAttribute(\'width\');" ' : '' ),
'>' +
'</a>',
'</td>' );
if ( i % columns == columns - 1 )
html.push( '</tr>' );
}
if ( i < columns - 1 ) {
for ( ; i < columns - 1 ; i++ )
html.push( '<td></td>' );
html.push( '</tr>' );
}
html.push( '</tbody></table>' );
return html.join( '' );
};
var imagesSelector = {
type : 'html',
html : '<div>' + buildHtml() + '</div>',
id : 'imagesSelector',
onLoad : function( event ) {
dialog = event.sender;
},
focus : function() {
var size = images.length,
i;
for ( i = 0 ; i < size ; i++ ) {
if (images[i].name == dialog.initialName)
break;
}
var initialImage = this.getElement().getElementsByTag( 'a' ).getItem( i );
initialImage.focus();
},
onClick : onClick,
style : 'width: 100%; border-collapse: separate;'
};
function resolveUrl(url) {
// Resolve the url so it becomes a full URL including the host
var img = document.createElement('IMG');
img.src = url;
url = img.src;
img = null;
return url;
}
return {
title : editor.lang.googlemaps.selectIcon,
minWidth : 270,
minHeight : 80,
contents : [
{
id : 'Info',
label : '',
title : '',
padding : 0,
elements : [
imagesSelector,
{
type:'hbox',
children: [
{
type : 'button',
id : 'browse',
style : 'margin-top:4px;margin-bottom:2px; display:inline-block;',
label : editor.lang.common.browseServer,
filebrowser :
{
action : 'Browse',
target: 'Info:txtUrl',
url: editor.config.filebrowserIconBrowseUrl || editor.config.filebrowserImageBrowseUrl || editor.config.filebrowserBrowseUrl
}
},
{
type:'text',
hidden:true,
id:'txtUrl',
onChange: function() {
// Add new icon and select it:
var value = resolveUrl(this.getValue()),
nameParts = value.match(/([^\/]+)\.[^\/]*$/) || value.match(/([^\/]+)[^\/]*$/),
name = nameParts && nameParts[1] || value,
dialog = this.getDialog(),
resized = false;
// clean up
name = name.replace(/[^\w]/g, '');
// Initialize the object if it doesn't exist
if (!editor.config.googleMaps_Icons)
editor.config.googleMaps_Icons = {};
// Add the image if it isn't available in the set
if (!editor.config.googleMaps_Icons[ name ]) {
// Push the new marker
var marker = { marker : { image: value } },
shadow = editor.config.googleMaps_shadowMarker;
if (shadow) {
if (typeof shadow != 'string')
shadow = shadow( value );
marker.shadow = { image: shadow };
}
editor.config.googleMaps_Icons[ name ] = marker;
images.push( { name:name, src:value } );
var contents = dialog.parts.contents,
contentTable = contents.getFirst().getFirst().$,
initial = { width:contentTable.offsetWidth, height: contentTable.offsetHeight };
// rebuild the table so it shows correctly when the dialog opens again
dialog.getContentElement('Info', 'imagesSelector').getElement().setHtml( buildHtml() );
// Check if we need to resize the dialog
if (contentTable.offsetWidth > initial.width || contentTable.offsetHeight > initial.height) {
resized = true;
dialog.resize( contentTable.offsetWidth, contentTable.offsetHeight);
}
}
// select it
dialog.onSelect( name );
if ( !resized || !CKEDITOR.env.ie || CKEDITOR.env.ie9Compat )
dialog.hide();
else {
// In some skins there's a function executed on a timeout after a dialog resize,
// so we must delay the hide until it's performed.
setTimeout( function() { dialog.hide(); }, ( editor.lang.dir == 'rtl' ? 1001 : 101) );
}
}
}
]
}
]
}
],
buttons : [ CKEDITOR.dialog.cancelButton ]
};
} );

View File

@@ -0,0 +1,232 @@
CKEDITOR.dialog.add( 'googlemapsLine', function( editor ) {
'use strict';
var fldAreaProperties,
mode;
function pickAColor( button, field ) {
var thisDialog = button.getDialog();
editor.openNestedDialog( 'colordialog',
// before showing
function( dialog ) {
var color = thisDialog.getValueOf( 'Info', field),
control = dialog.getContentElement( 'picker', 'selectedColor');
// set initial value
control.setValue( color );
control.setInitValue();
},
// on OK
function( dialog ) {
var control = dialog.getContentElement( 'picker', 'selectedColor');
thisDialog.getContentElement( 'Info', field ).setValue( control.getValue() );
// Reset to empty default
control.setValue( '' );
control.setInitValue();
});
}
return {
title : editor.lang.googlemaps.properties,
minWidth : 230,
minHeight : 140,
resizable : false,
buttons : [ {
type : 'button',
id : 'deleteOverlay',
label : editor.lang.googlemaps.deleteMarker,
onClick : function( evt ) {
var dialog = evt.sender.getDialog();
dialog.onRemoveOverlay();
dialog.hide();
}
}, CKEDITOR.dialog.okButton, CKEDITOR.dialog.cancelButton ],
onLoad: function() {
fldAreaProperties = this.getContentElement( 'Info', 'fldAreaProperties').getElement();
this.setValues = function( data ) { this.definition.setValues.call(this, data); };
this.getValues = function() { return this.definition.getValues.call(this); };
},
setValues : function(data) {
var control = this.getContentElement( 'Info', 'cmbStrokeWeight');
control.setValue( data.strokeWeight );
control.setInitValue();
control = this.getContentElement( 'Info', 'cmbStrokeOpacity');
control.setValue( data.strokeOpacity );
control.setInitValue();
control = this.getContentElement( 'Info', 'txtStrokeColor');
control.setValue( data.strokeColor );
control.setInitValue();
if (data.fillOpacity) {
mode = 'polygon';
fldAreaProperties.show();
control = this.getContentElement( 'Info', 'cmbFillOpacity');
control.setValue( data.fillOpacity );
control.setInitValue();
control = this.getContentElement( 'Info', 'txtFillColor');
control.setValue( data.fillColor );
control.setInitValue();
this.resize(230, 240);
} else {
mode = 'polyline';
fldAreaProperties.hide();
this.resize(230, 140);
}
},
getValues : function() {
var data = {
strokeWeight: parseInt(this.getValueOf( 'Info', 'cmbStrokeWeight'), 10),
strokeOpacity: parseFloat(this.getValueOf( 'Info', 'cmbStrokeOpacity')),
strokeColor: this.getValueOf( 'Info', 'txtStrokeColor')
};
if (mode == 'polygon') {
data.fillOpacity = parseFloat(this.getValueOf( 'Info', 'cmbFillOpacity'));
data.fillColor = this.getValueOf( 'Info', 'txtFillColor');
}
return data;
},
contents : [
{
id : 'Info',
elements :
[
{
type: 'fieldset',
id: 'fldLineProperties',
label: editor.lang.googlemaps.lineProperties,
children:
[
{
id : 'cmbStrokeWeight',
label: editor.lang.googlemaps.strokeWeight + ' ',
labelLayout : 'horizontal',
widths: [ '55px', '65px' ],
style : 'width:130px; margin-bottom:1em;',
inputStyle : 'width:45px; padding-left:0; padding-right:0;',
type : 'select',
items :
[
[ '1', '1' ],
[ '2', '2' ],
[ '3', '3' ],
[ '4', '4' ],
[ '5', '5' ],
[ '6', '6' ],
[ '7', '7' ],
[ '8', '8' ],
[ '9', '9' ],
[ '10', '10' ]
]
},
{
id : 'cmbStrokeOpacity',
label: editor.lang.googlemaps.strokeOpacity + ' ',
labelLayout : 'horizontal',
widths: [ '55px', '65px' ],
style : 'width:130px; margin-bottom:1em;',
inputStyle : 'width:45px; padding-left:0; padding-right:0;',
type : 'select',
items :
[
[ '0.1', '0.1' ],
[ '0.2', '0.2' ],
[ '0.3', '0.3' ],
[ '0.4', '0.4' ],
[ '0.5', '0.5' ],
[ '0.6', '0.6' ],
[ '0.7', '0.7' ],
[ '0.8', '0.8' ],
[ '0.9', '0.9' ],
[ '1', '1' ]
]
},
{
type:'hbox',
widths: [ '130px', '80px' ],
children:
[
{
id : 'txtStrokeColor',
type : 'text',
label: editor.lang.googlemaps.strokeColor,
labelLayout : 'horizontal',
widths: [ '55px', '65px' ],
width: '65px'
},
{
id : 'btnColor',
type : 'button',
label : editor.lang.googlemaps.chooseColor,
onClick : function() {pickAColor( this, 'txtStrokeColor'); }
}
]
}
]
},
{
type: 'fieldset',
id: 'fldAreaProperties',
label: editor.lang.googlemaps.areaProperties,
children:
[
{
id : 'cmbFillOpacity',
label: editor.lang.googlemaps.fillOpacity + ' ',
labelLayout : 'horizontal',
widths: [ '55px', '65px' ],
style : 'width:130px; margin-bottom:1em;',
inputStyle : 'width:45px; padding-left:0; padding-right:0;',
type : 'select',
items :
[
[ '0.1', '0.1' ],
[ '0.2', '0.2' ],
[ '0.3', '0.3' ],
[ '0.4', '0.4' ],
[ '0.5', '0.5' ],
[ '0.6', '0.6' ],
[ '0.7', '0.7' ],
[ '0.8', '0.8' ],
[ '0.9', '0.9' ],
[ '1', '1' ]
]
},
{
type:'hbox',
widths: [ '130px', '80px' ],
children:
[
{
id : 'txtFillColor',
type : 'text',
label: editor.lang.googlemaps.fillColor,
labelLayout : 'horizontal',
widths: [ '55px', '65px' ],
style : 'width:130px; ',
width: '65px'
},
{
id : 'btnFillColor',
type : 'button',
label : editor.lang.googlemaps.chooseColor,
onClick : function() {pickAColor( this, 'txtFillColor'); }
}
]
}
]
}
]
}
]
};
} );

View File

@@ -0,0 +1,183 @@
CKEDITOR.dialog.add( 'googlemapsMarker', function( editor ) {
'use strict';
var numbering = function( id ) { return id + CKEDITOR.tools.getNextNumber(); },
markerIcon = numbering( 'markerIcon' ),
GMapTexts = numbering( 'GMapTexts' ),
googleMaps_Icons = editor.config.googleMaps_Icons,
markerImage,
point,
theDialog;
function getIcon( color ) {
var data = googleMaps_Icons && googleMaps_Icons[ color ];
if (!data)
return 'https://maps.gstatic.com/mapfiles/ms/micons/' + color + '-dot.png';
// fixme...
return data.marker.image;
}
return {
title : editor.lang.googlemaps.markerProperties,
minWidth : 310,
minHeight : 240,
buttons : [ {
type : 'button',
id : 'deleteMarker',
label : editor.lang.googlemaps.deleteMarker,
onClick : function( evt ) {
var dialog = evt.sender.getDialog();
dialog.onRemoveMarker();
dialog.hide();
}
}, CKEDITOR.dialog.okButton, CKEDITOR.dialog.cancelButton ],
onLoad: function() {
theDialog = this;
this.setValues = function( data ) { this.definition.setValues.call(this, data); };
this.getValues = function() { return this.definition.getValues.call(this); };
// We have to destroy the internal CKEditor instance when this dialog is destroyed:
this.destroy = CKEDITOR.tools.override( this.destroy, function( original ) {
return function() {
CKEDITOR.instances[ GMapTexts ].destroy();
original.call( this );
};
} );
},
setValues : function(data) {
point = data;
var control = this.getContentElement( 'Info', 'txtTooltip');
control.setValue( data.title );
control.setInitValue();
control = this.getContentElement( 'Info', 'txtWidth');
control.setValue( data.maxWidth );
control.setInitValue();
var instance = CKEDITOR.instances[ GMapTexts ];
if (instance)
instance.setData( data.text );
else
document.getElementById( GMapTexts ).value = data.text;
markerImage = data.color;
document.getElementById( markerIcon ).src = getIcon( markerImage );
},
getValues : function() {
return {
title: this.getValueOf( 'Info', 'txtTooltip'),
maxWidth: this.getValueOf( 'Info', 'txtWidth'),
text: CKEDITOR.instances[ GMapTexts ].getData(),
color: markerImage
};
},
contents : [
{
id : 'Info',
elements :
[
{
type : 'hbox',
widths : [ '150px', '80px; padding-right:2px', '10px', '60px' ],
children :
[
{
id : 'txtTooltip',
type : 'text',
widths: [ '70px', '90px' ],
width : '160px',
labelLayout : 'horizontal',
label : editor.lang.googlemaps.tooltip
},
{
id : 'txtWidth',
type : 'text',
widths: [ '40px', '36px' ],
width : '50px',
labelLayout : 'horizontal',
label : editor.lang.googlemaps.width
},
{
type : 'html',
html : '<div>px</div>'
},
{
type : 'html',
onClick : function(evt) {
var target = evt.data.getTarget(),
targetName = target.getName();
if (targetName == 'img') {
editor.openNestedDialog( 'googlemapsIcons', function(dialog) {
dialog.initialName = markerImage;
dialog.onSelect = function( name ) { markerImage = name; document.getElementById( markerIcon ).src = getIcon( markerImage );};
}, null);
}
},
html : '<div style="width:60px"><label style="float:left">' + editor.lang.googlemaps.markerIcon + '</label><img id="' + markerIcon + '" class="cke_hand"></div>'
}
]
},
{
type : 'html',
onLoad : function() {
var removePlugins = 'elementspath,resize,googlemaps';
// we have to remove any plugin that was removed in the main instance.
var removed = editor.config.removePlugins;
if (removed)
removePlugins += ',' + removed;
// http://dev.ckeditor.com/ticket/10731
if (editor.config.wsc_stack)
delete editor.config.wsc_stack;
if (CKEDITOR.config.wsc_stack)
CKEDITOR.config.wsc_stack = [];
// Copy all the configuration options
var config = CKEDITOR.tools.clone( editor.config );
config.customConfig = '';
config.width = '450px';
config.height = 140;
config.toolbar = editor.config.googleMaps_toolbar || [ [ 'Bold', 'Italic', 'Link', 'Image' ], [ 'Undo', 'Redo' ], [ 'GMapsInsertDirections' ] ];
config.removePlugins = removePlugins;
config.toolbarCanCollapse = false;
config.on = {
// Add extra buttons
'pluginsLoaded' : function(ev ) {
ev.editor.addCommand( 'gmapsinsertdirections', {
exec : function( thisEditor ) {
var link = 'http://maps.google.com/maps?daddr=' + encodeURIComponent( theDialog.getValueOf('Info', 'txtTooltip')) + ' @' + point.getPosition().toUrlValue();
thisEditor.insertHtml( '<a href="' + link + '" target="_blank">' + editor.lang.googlemaps.directionsTitle + '</a>' );
}
} );
// Add a custom toolbar button
ev.editor.ui.addButton( 'GMapsInsertDirections',
{
label : editor.lang.googlemaps.directions,
/* icon from FamFamFam http://www.famfamfam.com/lab/icons/silk/ */
icon : editor.plugins.googlemaps.path + '/icons/gmapsinsertdirections.png', // %REMOVE_LINE_CORE%
command : 'gmapsinsertdirections'
} );
}
};
CKEDITOR.replace( GMapTexts, config);
},
html : '<textarea id="' + GMapTexts + '"></textarea>'
}
]
}
]
};
} );

View File

@@ -0,0 +1,39 @@
CKEDITOR.dialog.add( 'googlemapsText', function( editor ) {
'use strict';
return {
title : editor.lang.googlemaps.textProperties,
minWidth : 200,
minHeight : 35,
onLoad: function() {
this.setValues = function( data ) { this.definition.setValues.call(this, data); };
this.getValues = function() { return this.definition.getValues.call(this); };
},
setValues : function(data) {
var control = this.getContentElement( 'Info', 'txtTooltip');
control.setValue( data.title );
control.setInitValue();
},
getValues : function() {
return {
title: this.getValueOf( 'Info', 'txtTooltip')
};
},
contents : [
{
id : 'Info',
elements :
[
{
id : 'txtTooltip',
type : 'text'
}
]
}
]
};
} );

View File

@@ -0,0 +1,116 @@
<!DOCTYPE html>
<!--
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.md or http://ckeditor.com/license
-->
<html>
<head>
<meta charset="utf-8">
<title>Inline Editing by Code &mdash; CKEditor Sample</title>
<script src="../ckeditor.js"></script>
<link href="sample.css" rel="stylesheet">
<style>
#editable
{
padding: 10px;
float: left;
}
</style>
</head>
<body>
<h1 class="samples">
Google Maps plugin used with CKEditor in inline mode
</h1>
<div class="description">
<p>
This sample shows how to create an inline editor instance of CKEditor. It is created
with a JavaScript call using the following code:
</p>
<pre class="samples">
// This property tells CKEditor to not activate every element with contenteditable=true element.
CKEDITOR.disableAutoInline = true;
var editor = CKEDITOR.inline( document.getElementById( 'editable' ) );
</pre>
<p>
Note that <code>editable</code> in the code above is the <code>id</code>
attribute of the <code>&lt;div&gt;</code> element to be converted into an inline instance.
</p>
</div>
<div id="editable" contenteditable="true">
<p>This is an editable element with a Google maps</p>
<div id="dgmap201431202520"><img alt="" id="gmap201431202520" src="//maps.googleapis.com/maps/api/staticmap?center=37.44190,-122.14190&amp;zoom=11&amp;size=500x370&amp;maptype=roadmap&amp;markers=color:purple|37.41680,-122.15355&amp;sensor=false" style="height:370px; width:500px" />
<x-script type="text/javascript">
/*<![CDATA[*/
/* CK googlemaps v3.6 */
var imgMap = document.getElementById("gmap201431202520"),
dMap = document.createElement("div");
dMap.id="wgmap201431202520";
imgMap.parentNode.insertBefore( dMap, imgMap);
dMap.appendChild(imgMap);
dMap.style.width = "500px";
dMap.style.height = "370px";
/*generatedType = 3;*/
function CreateGMapgmap201431202520() {
var dMap = document.getElementById("gmap201431202520");
if (dMap)
dMap = dMap.parentNode;
else
dMap = document.getElementById("wgmap201431202520");
if (!dMap) return;
if (dMap.ckemap) {
var map = dMap.ckemap.map, center = map.getCenter();
google.maps.event.trigger(map, "resize");
map.setCenter(center);
return;
}
dMap.onclick = null;
var mapOptions = {
zoom: 11,
center: [37.44190,-122.14190],
mapType: 0,
zoomControl: "Default",
mapsControl: "Default",
heading: 0,
tilt: 0,
overviewMapControlOptions: {opened:true},
pathType: "Default",
googleBar: false
};
var myMap = new CKEMap(dMap, mapOptions);
dMap.ckemap=myMap;
myMap.AddMarkers( [{lat:37.41680, lon:-122.15355, text:"<p>Info about the point<\/p>\n",color:"purple", title:"Title", maxWidth:200, open:0}] );
}
if (!window.gmapsLoaders) window.gmapsLoaders = [];
window.gmapsLoaders.push(CreateGMapgmap201431202520);
window.gmapsAutoload=true;
/*]]>*/
</x-script></div>
<p>&nbsp;</p>
<x-script type="text/javascript" src="/FCKplugins/CKE_mios/googlemaps/scripts/cke_gmaps_end.js">/* CK googlemapsEnd v3.6 */</x-script>
<p>End of the editable zone</p>
</div>
<script>
// We need to turn off the automatic editor creation first.
CKEDITOR.disableAutoInline = true;
var div = document.getElementById("editable");
var value = div.innerHTML;
var editor = CKEDITOR.inline( 'editable', {
on : {
instanceReady: function(ev) {
ev.editor.setData(value.replace(/x-script/g, "script"));
}
}
});
</script>
<div id="footer">
</div>
</body>
</html>

View File

@@ -0,0 +1,397 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>GoogleMaps plugin</title>
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1>GoogleMaps Plugin for CKEditor</h1>
<h2>Introduction</h2>
<p>This is a dialog-based plugin to handle insertion and modification of <a href="http://maps.google.com">Google
Maps</a> in <a href="http://www.ckeditor.com">CKEditor</a></p>
<h3 id="contact">Author:</h3>
<p><a href="mailto:amla70@gmail.com">Alfonso Mart&iacute;nez de Lizarrondo</a></p>
<h3>Sponsored by:</h3>
<p><a href="http://dynamical.biz/blog">Ani López, SEO Consultant</a></p>
<p><a href="http://www.uritec.net">Uritec</a></p>
<p><a href="http://www.incontrolsolutions.com">InControl Solutions</a></p>
<p><a href="http://moava.org/">Moava</a></p>
<h3>Version history: </h3>
<ol>
<li>1.0: 25/08/2007. First version for FCKeditor</li>
<li>1.x: Several improvements and features.</li>
<li>2.0: 30/11/2008. Lots of changes. Changed to closed source</li>
<li>2.x: Mainly corrections and bug fixing</li>
<li>3.0: xx/08/2010. Rewritten for CKEditor 3.4 and Google Maps API v3:
<ul>
<li>It doesn't require a maps API key</li>
<li>Improved performance of the maps</li>
<li>The dialog is located in the main document, so config.GoogleMaps_DialogCss is no longer needed</li>
</ul>
</li>
<li>3.1: 29/11/2011.
<ul>
<li>Tested with CKEditor 3.6.2 and Google Maps v3.7.</li>
<li>Fixing previous bugs</li>
<li>Enabled creating and deleting lines and areas.</li>
</ul>
</li>
<li>3.2: 13/05/2012.
<ul>
<li>Tested with CKEditor 3.6.3 and Google Maps v3.8.11.</li>
<li>Fixing reported problems</li>
<li>Context menu and double click in the editor are handled exclusively</li>
<li>It's possible to delete single points in Lines and Areas.</li>
<li>Enabled Traffic and Weather layers.</li>
<li>End script can be configured with <a href="#endScriptPath">config.googleMaps_endScriptPath</a>.</li>
<li>Image buttons merged in a single sprite.</li>
<li>Reorder translations so it uses English if a better one isn't available.</li>
<li>New translations: ar, cs, fi, fr, sk, tr.</li>
</ul>
</li>
<li>3.2.xx: xXx
<ul>
<li>Option to use <a href='#customicons'>custom icons in the markers</a>.</li>
<li>Bug fixing several problems</li>
<li>It's possible to edit Lines and Areas</li>
</ul>
</li>
<li>3.3: 7-August-2012.
<ul>
<li>Option to set the custom icons from the dialog instead of only from the config file</li>
<li>Use shadows for the markers (for default and <a href='#shadow'>custom</a> icons).</li>
<li>Several new configuration options</li>
<li>Button in the editor for markers to insert a "Destination" link.</li>
<li>Remember which info windows on markers should be open.</li>
<li>New texts since 3.2:<br>
transit : 'Transit',<br>
directions : 'Add Directions link',<br>
directionsTitle : 'Directions',<br>
</li>
</ul>
</li>
<li>3.3.1: 8-August-2012.
<ul>
<li><a href="http://code.google.com/p/gmaps-api-issues/issues/detail?id=4343">Lines and areas were drawn incorrectly in IE9</a></li>
<li>Bug fix of using custom icons added in the dialog. Beware that anything show on a static map must be placed in a public server (localhost won't work)</li>
</ul>
</li>
<li>3.3.2: 9-August-2012.
<ul>
<li>Force redraw of the last segment of areas in static maps</li>
<li>Better resize in IE of the marker and icon dialogs</li>
</ul>
</li>
<li>3.3.3: 9-August-2012.
<ul>
<li>New icons didn't work correctly if there was no one defined in the config.</li>
</ul>
</li>
<li>3.3.4: 1-November-2012.
<ul>
<li>Compatibility with CKEditor 4.</li>
<li>Avoid problems if parts of the Google Maps or other Google libraries are already loaded.</li>
</ul>
</li>
<li>3.3.5: 26-November-2012.
<ul>
<li>Avoid error if two maps are present in the same page.</li>
</ul>
</li>
<li>3.3.6: 6-December-2012.
<ul>
<li>Avoid problems while inserting Markers and Text notes if there are Lines or Areas in the map.</li>
<li>Try to avoid layout problems due to the excesive padding in the dialogs of Moono (default skin for v4).</li>
<li>Little error while creating a Text note.</li>
</ul>
</li>
<li>3.3.7: 6-December-2012.
<ul>
<li>Corrected compatibility of languages with CKBuilder.</li>
</ul>
</li>
<li>3.3.8: 13-December-2012.
<ul>
<li>Validate that the 'zoom' value is always numeric and not a string.</li>
<li>Kml files were not working properly .</li>
</ul>
</li>
<li>3.3.9: 16-December-2012.
<ul>
<li>Validate better the path to Kml files.</li>
</ul>
</li>
<li>3.4.0: 10-March-2013.
<ul>
<li>Compatibility with data filtering of upcoming CKEditor 4.1.</li>
<li>Compatibility with scripts that continously call editor.getData() (like the "Wordcount" plugin) instead of detecting changes.</li>
</ul>
</li>
<li>3.4.1: 12-March-2013.
<ul>
<li>Compatibility with devTools plugin.</li>
</ul>
</li>
<li>3.4.2 18-May-2013
<ul>
<li>Compatibility with Bootstrap in the map dialog.</li>
<li>Set &lt;script&gt; as the requirement for the ACF in CKEditor 4.1.</li>
</ul>
</li>
<li>3.4.3 13-June-2013
<ul>
<li>Handle correctly custom icons placed in folders with dots.</li>
</ul>
</li>
<li>3.4.4 26-June-2013
<ul>
<li>Support loading of maps in hidden divs. Call "initGmapsLoader()" when a hidden div is show to refresh the size of the maps. Also such maps can be configured to not load the Google libraries on page load.</li>
</ul>
</li>
<li>3.4.5 24-August-2013
<ul>
<li>Improved compatibility with CKBuilder (merge icon into the main toolbar strip).</li>
<li>Enabled "strict mode" and fixed issues.</li>
<li>Update "Text notes" code to draw and update properly in the dialog.</li>
</ul>
</li>
<li>3.4.6 9-September-2013
<ul>
<li>Detect correctly the map id if the output has the line feeds removed.</li>
<li>Add the optional div wrapper class to the ACF.</li>
</ul>
</li>
<li>3.5.0
<ul>
<li>Included support to specify an <a href="https://developers.google.com/maps/documentation/javascript/tutorial#api_key">API Key</a>.
For the moment it seems that the maps work correctly without a key, but in the future Google might change its mind, so it's better to include support right now. You can set it using ".googleMaps_ApiKey"</li>
<li>Added new configuration option ".googleMaps_weatherUsaUnits" to set the weather in Fahrenheit and Wind speed in Miles/hour.</li>
<li>Set empty alt attribute on the image to avoid problems with the ACF.</li>
</ul>
</li>
<li>3.5.1
<ul>
<li>Fixed bug in the final page when areas are used due to wrong variable assignment.</li>
</ul>
</li>
<li>3.5.2 13-October-2013
<ul>
<li>Use of streetview data</li>
<li>Enabled drawing of circles. In the static images circles won't be shown</li>
<li>If the map has been set to 45º imagery or it has been rotated, use that info (this won't work also with the static image)</li>
<li>Make the maps work automatically if the contents are inserted into a fully loaded page (for example loaded by ajax or a preview page of the editor).</li>
<li>Cache the geolocation data on creation of the first map to speed up further requests</li>
<li>Hidden the options to specify the zoom control and map types</li>
<li>Corrected the ability to display Traffic or Transit</li>
<li>Unified the options to specify the road types and added Bicycle</li>
</ul>
</li>
<li>3.5.3 21-November-2013
<ul>
<li>If a onLoadedGMaps function is defined, call it after the maps have been loaded, a "loadedGMaps" includes the references to the created maps (use Firebug or similar to inspect the objects)</li>
<li>Compatibility with IE11</li>
<li>Compatibility with the new "image2" widget of CKEditor 4.3</li>
<li>Try to limit the URL length of static maps</li>
</ul>
</li>
<li>3.5.4 20-January-2014
<ul>
<li>Removed console.log call left in the code</li>
<li>Better compatibility with recent changes in CKEditor</li>
</ul>
<li>3.5.5 2-February-2014
<ul>
<li>Added Autocomplete for the Search location field</li>
</ul>
<li>3.5.6 13-February-2014
<ul>
<li>Fixed compatibility with <a href="https://github.com/ckeditor/ckeditor-dev/commit/f59bc7d1ca20021e213a5c78d4b0a53c0e8457ea#diff-93d494c8086129d6211857548e81d6de">CKEditor 4.3.2</a></li>
</ul>
<li>3.5.7 2-June-2015
<ul>
<li>Testing responsive mode</li>
</ul>
<li>3.5.8 19-July-2015
<ul>
<li>Responsive mode take 2: enabled automatically, restricting the size of the map.</li>
<li>Use the "Click to load" option automatically when the browser is mobile to improve the usability as well as avoid bandwidth usage</li>
<li>If the div map has set "text-align: center" to center the map, then convert it to margin:0 auto</li>
</ul>
<li>3.6.0 3-July-2016
<ul>
<li>Review the usage of the <a href='#googleMaps_ApiKey'>Google Maps API key</a>, remove sensor parameter.</li>
</ul>
</ol>
<h3>Known bugs:</h3>
<p>Google bar isn't available.</p>
<h2>Installation</h2>
<h3>1. Copying the files</h3>
<p>Extract the contents of the zip in you plugins directory, so it ends up like
this<br>
<!--<img src="installation.png" alt="Screenshot of installation" width="311" height="346" longdesc="#install">-->
</p>
<pre id="--install">
ckeditor\
...
images\
lang\
plugins\
...
googlemaps\
...
plugin.js
readme.html
dialogs\
docs\
images\
lang\
...
skins\
themes\
</pre>
<h3>2. Adding it to CKEditor</h3>
<p>Now add the plugin in your <em>config.js</em> or custom js configuration
file:
<code>config.extraPlugins='googlemaps'; </code>
If you are already using other additional plugins, then you must have a single extraPlugins statements with all the plugins separated by commas:
<code>config.extraPlugins='confighelper,googlemaps'; </code>
</p>
<h3>3. Adding it to the toolbarset</h3>
<p>Add the button <strong>'GoogleMaps'</strong> (case sensitive) to your toolbarset:
<code>
config.toolbar_Full =
[
['Source','-','Save','NewPage','Preview','-','Templates'],
['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
'/',
['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
['Link','Unlink','Anchor'],
['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
'/',
['Styles','Format','Font','FontSize'],
['TextColor','BGColor'],
['Maximize', 'ShowBlocks','-','About'],
['GoogleMaps']
];
</code>
</p>
<h3 id="configure">4. Configure the plugin</h3>
<p>Since 22nd June 2016 Google requires the usage of an API key, you must fill the 'googleMaps_ApiKey' entry</p>
<ul>
<li>config.<strong>googleMaps_Width</strong>: The width of the map area. Default: 500.</li>
<li>config.<strong>googleMaps_Height</strong>: The height of the map area. Default: 370.</li>
<li>config.<strong>googleMaps_CenterLat</strong>: The latitude of the center. Default: 37.4419.</li>
<li>config.<strong>googleMaps_CenterLon</strong>: The longitude of the center. Default: -122.1419.</li>
<li>config.<strong>googleMaps_Zoom</strong>: The default zoom level. Default: 11.</li>
<li id="WrapperClass">config.<strong>googleMaps_WrapperClass</strong>: The Google Maps automatically fills the width and height of the generated div, so if you want to add a little spacing and a border, you need to use a div around it. If this entry contains a non-empty value then such a div
will be generated with this class. Default: ''.<br>
Important: in the preview inside the editor, the class might be applied to an image, not a div!</li>
<li>config.<strong>googleMaps_MarkerText</strong>: Initial text for a marker. Default: lang.googlemaps.defaultMarkerText (changes with the translations)</li>
<li>config.<strong>filebrowserKmlBrowseUrl</strong> : URL of the file browser for KML files. It defaults to filebrowserBrowseUrl.
If it's an empty string the "Browse server" button won't be shown</li>
<li>config.<strong>filebrowserIconBrowseUrl</strong> : URL of the file browser for icon files. It defaults to filebrowserImageBrowseUrl || filebrowserBrowseUrl.
If it's an empty string the "Browse server" button won't be shown</li>
<li id="endScriptPath">config.<strong>googleMaps_endScriptPath</strong> : URL of end script. It defaults to "scripts/cke_gmaps_end.js" at the plugin folder.
If it's an empty string the script won't be inserted (you must do it elsewhere in the page or merge it together with the rest of your scripts).
</li>
<li id="customicons">config.<strong>googleMaps_Icons</strong> : An object definining custom icons. For the moment only the image and shadow are used, an example:
<pre>config.googleMaps_Icons = {
start: {
marker: {
image: 'http://martinezdelizarrondo.com/icons/start.png'
},
shadow: {
image: 'http://martinezdelizarrondo.com/icons/shadow.png'
}
}
};</pre>
In the future more options (like defining sizes, etc...) might be added. Or maybe not? is it enough to use this simple data?.<br>
Remember that if you want to show the custom icon in the static map the image must use a public URL (including the domain).<br>
If you want to find lots of useful and greatly designed icons, look at the <a href="http://mapicons.nicolasmollet.com/">Map Icons Collection project</a>, the price is right (credits + optional donation) and you can get easily all your icons following the same theme instead of mixing different styles.
</li>
<li id="shadow">config.<strong>googleMaps_shadowMarker</strong> : Default shadow image for icons added from the dialog. In the icons folder there's a shadow for the Map Icons Collection icons if you want to use a different set, remember to place the "anchor point" of the icon and the shadow at the bottom center. If this parameter is a function, it's called with the url of the selected image, otherwise it's treated as a string. Default: no shadow.
</li>
<li>config.<strong>googleMaps_newMarkerColor</strong> : Color for new icons. It can be also the name of a custom icon. This setting can be either a normal string, or a function that returns a string. If not set it rotates between the default colors.</li>
<li>config.<strong>googleMaps_newOverlayColor</strong> : Color for new polylines and polygons. This setting can be either a normal string, or a function that returns a string, in this case a parameter with the type of overlay being created is passed. If not set it rotates between the default colors.
</li>
<li>config.<strong>googleMaps_overlayColors</strong> : Array with the default values for the overlay colors. Default ["#880000", "#008800", "#000088","#888800", "#880088", "#008888", "000000", "888888"]</li>
<li>config.<strong>googleMaps_markerColors</strong> : Array with the list of default markers to use. Default ['green', 'purple', 'yellow', 'blue', 'orange', 'red'] . In this setting you can't add new colors, the only goal of this setting is to remove the default markers that you don't want or reorder the set. Use googleMaps_Icons to add new ones, and googleMaps_markerColor to control how new markers are created.
</li>
<li>config.<strong>googleMaps_toolbar</strong> : Toolbar configuration to use for the embedded editor in markers. Besides the normal buttons, you can use this special button to insert the Directions link "GMapsInsertDirections". Default: [["Bold", "Italic", "Link", "Image"], ["Undo", "Redo"], ["GMapsInsertDirections"]]</li>
<li id='googleMaps_ApiKey'>config.<strong>googleMaps_ApiKey</strong> : This is a required entry. <a href="https://alfonsoml.blogspot.com/2016/07/getting-google-maps-api-key.html">Follow these steps to get your key</a>. (String).</li>
<li>config.<strong>googleMaps_weatherUsaUnits</strong> : Switches the default temperature and speed units in the weather layer to use the USA system (Fahrenheit and Miles/hour) instead of metric. (boolean: true/false)</li>
</ul>
<!--
<li>FCKConfig.<strong>GoogleMaps_Editor_Width</strong> : Width of the HTML editor for the content of markers</li>
<li>FCKConfig.<strong>GoogleMaps_Editor_Height</strong> : Height of the HTML editor for the content of markers</li>
<li>FCKConfig.<strong>GoogleMaps_Editor_CustomConfigurationsPath</strong> : CustomConfigurationsPath of the HTML editor for the content of markers<br>
If it's missing it will reuse the path of the main instance of FCKeditor.</li>
<li>FCKConfig.<strong>GoogleMaps_Editor_ToolbarSet</strong> : Name of the Toolbarse of the HTML editor for the content of markers<br>
This toolbarset must be defined in the configuration file for the embedded editor. By default it uses the "Basic" set.</li>
<li>FCKConfig.<strong>KMLBrowserWindowWidth</strong> and FCKConfig.<strong>KMLBrowserWindowHeight</strong>: Dimensions of the
window for the KML file browser</li>
-->
<h3>5. Use it</h3>
<p align="right">Now empty the cache of your browser and reload the editor, the new button
<img src="../icon.gif" alt="Insert GoogleMap" width="16" height="16"> should
be <!--<a href="users.html">-->ready to use<!--</a>-->.</p>
<p>Here's a video showing the <a href="http://www.youtube.com/watch?v=-Nz2l4sYqeI">basic features</a> and another for the <a href="http://www.youtube.com/watch?v=Ay2zFJgXUGI">elements tab</a>
<h3>6. Translations</h3>
<p>To add a new translation open plugin.js and search for "translations", it's at line 1113 and add your language (the example is based on adding Polish ('pl')</p>
<code> // translations
lang : ['el', 'en', 'es'],</code>
to<code> // translations
lang : ['el', 'en', 'es', 'pl'],</code>
<p>
Then in the lang folder copy the en.js to pl.js, edit that file and in the first line set your language:</p>
<code>CKEDITOR.addPluginLang( 'googlemaps', 'pl',</code>
<p>and finally, translate all the text between quotes :-)</p>
<p>If you send it back to me I'll include it in the next versions.</p>
<h3>Other notes</h3>
<p>The KML files aren't used in the static maps. And in order for them to work you should use them in a public server (localhost won't work with .kmz)<br>
You might need to adjust the server to use the correct MIME types (application/vnd.google-earth.kml+xml for .kml and application/vnd.google-earth.kmz for .kmz).
</p>
<p>As a summary of features that aren't available in the static preview:</p>
<ul>
<li>KML files</li>
<li>Circles</li>
<li>Text overlays</li>
<li>Also, if there's too much data, the image won't be shown at all (too many lines, areas, icons... so that the URL to the image is too long)</li>
<li>The maximum size for the image is 640x640, if you use a bigger one, it will be scaled</li>
</ul>
<p>&nbsp;</p>
<p>If you need some special feature for this plugin, or if you need any other kind of plugin
for CKEditor then <a href="#contact">contact me</a> and we can discuss it</p>
<h2>Disclaimers</h2>
<p>CKEditor is &copy; CKSource.com</p>
<p>Google, Google Maps and the Google Maps API are all properties of Google.</p>
</body>
</html>

View File

@@ -0,0 +1,59 @@
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 90%;
}
h1 {
text-align:center;
font-size:180%;
}
h2 {
border-bottom:2px solid #CCC;
margin:1em 0 0.4em 0;
}
h3 {
margin-bottom:0.4em;
}
p {
margin:0 0 1em 1em;
text-align:justify;
}
ol {
margin:0 0 1.2em 1em;
padding:0;
list-style-type:none;
}
ol li {
margin:0.2em 0;
}
pre, code {
font-size:100%;
font-family:"Courier New", Courier, mono;
background-color: #CCCCCC;
border:1px solid #999;
padding:0.2em 1em;
margin: 0.4em 0;
display:block;
white-space: pre;
overflow: auto;
}
form {
margin:0 0 0 1em;
}
span.key {
color: #006600;
}
#install {
display:none
}
#languages ul {
display:inline;
list-style-type:none;
margin:0;
padding:0;
}
#languages li {
display:inline;
margin:0;
padding:0;
vertical-align:bottom;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 524 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 583 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 752 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 921 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 472 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,86 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'ar',
{
toolbar : 'أضف أو حرر الخريطة',
menu : 'تحرير الخريطة',
title : 'خصائص خريطة جوجل',
map : 'خريطة',
'options' : 'الخيارات',
search : 'بحث',
elements : 'العناصر',
width: 'العرض',
responsive: 'Responsive (100% Width)',
height: 'الارتفاع',
zoomLevel : 'مستوى التكبير',
latitude : 'خط الطول',
longitude : 'دائرة العرض',
loadMap : 'تحميل خريطة',
onlyStatic: 'ثابت',
onClick : 'عند النقر',
onLoad : 'عند تحميل الصفحة',
byScript : 'By a Script',
zoomControl : 'أادة الملاحة',
smallZoom : 'صغير',
fullZoom : 'كامل',
mapTypes : 'أنواع الخرائط',
none: 'بدون',
Default : 'افتراضي',
mapTypesFull : 'شريط',
mapTypesMenu : 'قائمة',
overview : 'شامل',
scale : 'مقياس',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'ابحث عن مكان',
clickToLoad : 'انقر للتحميل',
defaultTitle : 'العنوان',
defaultMarkerText : 'معلومات عن هذه النقطة',
addMarker : 'أضف دبوس',
addLine : 'أضف خط',
addArea : 'أضف منطقة',
addKML : 'اَف مرجع KML',
addText : 'أضف ملاحظة نصية',
addCircle : 'Add a circle',
kmlUrl : 'KML file',
tooltip: 'شريط الأدوات',
markerIcon: 'ايقونة',
deleteMarker : 'حذف',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'خصائص العلامة',
selectIcon :'اختر ايقونة العلامة',
textProperties : 'نص',
text : 'نص',
properties : 'خصائص',
lineProperties : 'خصائص الخط',
strokeColor: 'اللون',
strokeWeight: 'العرض',
strokeOpacity: 'الشفافية',
areaProperties: 'خصائص المنطقة',
fillColor: 'اللون',
fillOpacity: 'الشفافية',
chooseColor: 'اختر...'
}
);

View File

@@ -0,0 +1,86 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'cs',
{
toolbar : 'Vložit/upravit Google Mapu',
menu : 'Upravit mapu',
title : 'Vlastnosti Google Mapy',
map : 'Mapa',
options : 'Možnosti',
search : 'Hledat',
elements : 'Prvky',
width: 'Šířka',
responsive: 'Responsive (100% Width)',
height: 'Výška',
zoomLevel : 'Úroveň přiblížení',
latitude : 'Zeměpisná šířka',
longitude : 'Zeměpisná délka',
loadMap : 'Načíst mapu',
onlyStatic: 'Staticky',
onClick : 'Při kliknutí',
onLoad : 'Při načtení',
byScript : 'By a Script',
zoomControl : 'Navigace',
smallZoom : 'Malá',
fullZoom : 'Plná',
mapTypes : 'Typ mapy',
none: 'Žádna',
Default : 'Základní',
mapTypesFull : 'Pruh',
mapTypesMenu : 'Menu',
overview : 'Přehled',
scale : 'Stupnice',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Vyhledat adresu',
clickToLoad : 'Klikněte pro načtení',
defaultTitle : 'Název',
defaultMarkerText : 'Informace o bodu',
addMarker : 'Přidat značku',
addLine : 'Přidat čáru',
addArea : 'Přidat plochu',
addKML : 'Přidat odkaz KML',
addText : 'Přidat textovou poznámku',
addCircle : 'Add a circle',
kmlUrl : 'KML soubor',
tooltip: 'Název',
markerIcon: 'Ikona',
deleteMarker : 'Smazat',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Vlastnosti Markeru',
selectIcon :'Vybrat ikonu pro marker',
textProperties : 'Text',
text : 'Text',
properties : 'Vlastnosti',
lineProperties : 'Vlastnosti čáry',
strokeColor: 'Barva',
strokeWeight: 'Šířka',
strokeOpacity: 'Neprůhlednost',
areaProperties: 'Vlastnosti objektu',
fillColor: 'Barva',
fillOpacity: 'Neprůhlednost',
chooseColor: 'Vybrat...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'de',
{
toolbar : 'Google Map einfügen/bearbeiten',
menu : 'Karte bearbeiten',
title : 'Eigenschaften',
map : 'Karte',
'options' : 'Optionen',
search : 'Suchen',
elements : 'Elemente',
width: 'Breite',
responsive: 'Responsive (100% Width)',
height: 'Höhe',
zoomLevel : 'Zoom',
latitude : 'Breitengrad',
longitude : 'Längengrad',
loadMap : 'Karte laden',
onlyStatic: 'Statisch',
onClick : 'Bei Mausklick',
onLoad : 'Automatisch',
byScript : 'Anderes Script',
zoomControl : 'Navigationsfelder',
smallZoom : 'Kompakt',
fullZoom : 'Komplett',
mapTypes : 'Kartenauswahl',
none: 'Keine',
Default : 'Standard',
mapTypesFull : 'Balken',
mapTypesMenu : 'Menü',
overview : 'Übersicht',
scale : 'Massstab',
weather : 'Wetter',
paths : 'Strassen',
traffic : 'Verkehr',
transit : 'Öff. Verkehr',
bicycle : 'Fahrrad',
searchDirection : 'Eine Adresse suchen',
clickToLoad : 'Klicken um die Karte zu laden',
defaultTitle : 'Titel',
defaultMarkerText : 'Info zu diesem Punkt',
addMarker : 'Einen Marker setzen',
addLine : 'Eine Linie zeichnen',
addArea : 'Eine Fläche zeichnen',
addKML : 'KML-Referenz hinzufügen',
addText : 'Eine Text-Notiz hinzufügen',
addCircle : 'Einen Kreis zeichnen',
kmlUrl : 'KML-Datei',
tooltip: 'Tooltip',
markerIcon: 'Icon',
deleteMarker : 'Löschen',
directions : 'Route berechnen',
directionsTitle : 'Route berechnen',
markerProperties : 'Marker Eigenschaften',
selectIcon :'Icon für den Marker auswählen',
textProperties : 'Text',
text : 'Text',
properties : 'Eigenschaften',
lineProperties : 'Eigenschaften der Linien',
strokeColor: 'Farbe',
strokeWeight: 'Breite',
strokeOpacity: 'Transparenz',
areaProperties: 'Eigenschaften der Fläche',
fillColor: 'Farbe',
fillOpacity: 'Transparenz',
chooseColor: 'Auswählen...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'el',
{
toolbar : 'Εισαγωγή/Επεξεργασία Google Map',
menu : 'Επεξεργασία χάρτη',
title : 'Χαρακτηριστικά Χάρτη',
map : 'Χάρτης',
'options' : 'Επιλογές',
search : 'Αναζήτηση',
elements : 'στοιχεία',
width: 'Πλάτος',
responsive: 'Responsive (100% Width)',
height: 'Ύψος',
zoomLevel : 'Zoom',
latitude : 'Latitude',
longitude : 'Longitude',
loadMap : 'Άνοιγμα χάρτη',
onlyStatic: 'Στατικό',
onClick : 'Με το κλικ',
onLoad : 'Με το φόρτωμα της σελίδας',
byScript : 'By a Script',
zoomControl : 'Μορφή πλοήγησης',
smallZoom : 'Μικρό',
fullZoom : 'Πλήρες',
mapTypes : 'Τύποι χαρτών',
none: 'Χωρίς',
Default : 'Κανονικός',
mapTypesFull : 'Μπάρα',
mapTypesMenu : 'Μενού',
overview : 'Επισκόπηση',
scale : 'Κλημακα',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Αναζήτηση τοποθεσίας',
clickToLoad : 'Κάντε κλικ για φόρτωμα',
defaultTitle : 'Τίτλος',
defaultMarkerText : 'Πληροφορίες για το σημείο',
addMarker : 'Προσθήκη marker',
addLine : 'Προσθήκη γραμμής',
addArea : 'Προσθήκη περιοχής',
addKML : 'Προσθήκη αναφοράς KML',
addText : 'Προσθήκη κειμένου',
addCircle : 'Add a circle',
kmlUrl : 'KML αρχείο',
tooltip: 'Tooltip',
markerIcon: 'Εικονίδιο',
deleteMarker : 'Διαγραφή',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Ιδιότητες του Marker',
selectIcon :'Επιλέξτε ένα εικονίδιο σαν marker',
textProperties : 'Κείμενο',
text : 'Κείμενο',
properties : 'Ιδιότητες',
lineProperties : 'Ιδιότητες της γραμμής',
strokeColor: 'Χρώμα',
strokeWeight: 'Πλάτος',
strokeOpacity: 'Διαφάνεια',
areaProperties: 'Ιδιότητες Περιοχής',
fillColor: 'Χρώμα',
fillOpacity: 'Διαφάνεια',
chooseColor: 'Επιλογή...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'en',
{
toolbar : 'Insert/Edit a Google Map',
menu : 'Edit map',
title : 'Google Maps properties',
map : 'Map',
'options' : 'Options',
search : 'Search',
elements : 'Elements',
width: 'Width',
responsive: 'Responsive (100% Width)',
height: 'Height',
zoomLevel : 'Zoom Level',
latitude : 'Latitude',
longitude : 'Longitude',
loadMap : 'Load map',
onlyStatic: 'Static',
onClick : 'On click',
onLoad : 'On page load',
byScript : 'By a Script',
zoomControl : 'Navigation control',
smallZoom : 'Small',
fullZoom : 'Full',
mapTypes : 'Map types',
none: 'None',
Default : 'Default',
mapTypesFull : 'Bar',
mapTypesMenu : 'Menu',
overview : 'Overview',
scale : 'Scale',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Search a direction',
clickToLoad : 'Click to load',
defaultTitle : 'Title',
defaultMarkerText : 'Info about the point',
addMarker : 'Add a marker',
addLine : 'Add a line',
addArea : 'Add an area',
addKML : 'Add a KML reference',
addText : 'Add a text note',
addCircle : 'Add a circle',
kmlUrl : 'KML file',
tooltip: 'Tooltip',
markerIcon: 'Icon',
deleteMarker : 'Delete',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Marker properties',
selectIcon :'Select the icon',
textProperties : 'Text',
text : 'Text',
properties : 'Properties',
lineProperties : 'Line properties',
strokeColor: 'Color',
strokeWeight: 'Width',
strokeOpacity: 'Opacity',
areaProperties: 'Area properties',
fillColor: 'Color',
fillOpacity: 'Opacity',
chooseColor: 'Choose...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'es',
{
toolbar : 'Insertar/Editar un mapa de Google',
menu : 'Editar mapa',
title : 'Propiedades del mapa Google',
map : 'Mapa',
'options' : 'Opciones',
search : 'Buscar',
elements : 'Elementos',
width: 'Ancho',
responsive: 'Responsive (100% Ancho)',
height: 'Alto',
zoomLevel : 'Nivel de Zoom',
latitude : 'Latitud',
longitude : 'Longitud',
loadMap : 'Cargar el mapa',
onlyStatic: 'Estático',
onClick : 'Al hacer click',
onLoad : 'Automático',
byScript : 'By a Script',
zoomControl : 'Zoom',
smallZoom : 'Pequeño',
fullZoom : 'Completo',
mapTypes : 'Capas',
none: 'Ninguno',
Default : 'Por defecto',
mapTypesFull : 'Barra',
mapTypesMenu : 'Menu',
overview : 'Mini-mapa',
scale : 'Escala',
weather : 'Tiempo',
paths : 'Carreteras',
traffic : 'Tráfico',
transit : 'Transporte',
bicycle : 'Bicicletas',
searchDirection : 'Buscar una dirección',
clickToLoad : 'Pulse para cargar',
defaultTitle : 'Título',
defaultMarkerText : '<p>Información sobre el punto</p>',
addMarker : 'Añadir un marcador',
addLine : 'Añadir una linea',
addArea : 'Añadir un area',
addKML : 'Añadir una referencia KML',
addText : 'Añadir un texto',
addCircle : 'Añadir un círculo',
kmlUrl : 'Fichero KML',
tooltip: 'Indicador',
markerIcon: 'Icono',
deleteMarker : 'Borrar',
directions : 'Enlace de cómo llegar',
directionsTitle : 'Cómo llegar',
markerProperties : 'Propiedades del marcador',
selectIcon :'Elija el icono',
textProperties : 'Texto',
text : 'Texto',
properties : 'Propiedades',
lineProperties : 'Propiedades de la linea',
strokeColor: 'Color',
strokeWeight: 'Ancho',
strokeOpacity: 'Opacidad',
areaProperties: 'Propiedades del area',
fillColor: 'Color',
fillOpacity: 'Opacidad',
chooseColor: 'Elegir...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'fi',
{
toolbar : 'Lisää/Muokkaa Google karttaa',
menu : 'Muokkaa karttaa',
title : 'Google Maps ominaisuudet',
map : 'Kartta',
'options' : 'Vaihtoehdot',
search : 'Etsi',
elements : 'Elementit',
width: 'Leveys',
responsive: 'Responsive (100% Width)',
height: 'Korkeus',
zoomLevel : 'Tarkkuus',
latitude : 'Leveysaste',
longitude : 'Pituusaste',
loadMap : 'Lataa kartta',
onlyStatic: 'Staattinen',
onClick : 'Klikattaessa',
onLoad : 'Ladattaessa',
byScript : 'By a Script',
zoomControl : 'Navigation control',
smallZoom : 'Pieni',
fullZoom : 'Suuri',
mapTypes : 'Kartta tyypit',
none: 'Ei mikään',
Default : 'Oletus',
mapTypesFull : 'Bar',
mapTypesMenu : 'Valikko',
overview : 'Yleissilmäys',
scale : 'Skaala',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Etsi ohjeet kohteeseen',
clickToLoad : 'Klikkaa ladataksesi',
defaultTitle : 'Otsikko',
defaultMarkerText : 'Tietoa kohteesta',
addMarker : 'Lisää merkintä',
addLine : 'Lisää viiva',
addArea : 'Lisää alue',
addKML : 'Lisää KML viittaus',
addText : 'Lisää tekstiä',
addCircle : 'Add a circle',
kmlUrl : 'KML-tiedosto',
tooltip: 'Tooltip',
markerIcon: 'Ikoni',
deleteMarker : 'Poista',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Merkinnän ominaisuudet',
selectIcon :'Valitse merkinnälle ikoni',
textProperties : 'Teksti',
text : 'Teksti',
properties : 'Ominaisuudet',
lineProperties : 'Viivan ominaisuudet',
strokeColor: 'Väri',
strokeWeight: 'Leveys',
strokeOpacity: 'Läpinäkyvyys',
areaProperties: 'Alueen ominaisuudet',
fillColor: 'Väri',
fillOpacity: 'Läpinäkyvyys',
chooseColor: 'Valitse...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'fr',
{
toolbar : 'Insérer/Editer une Carte Google',
menu : 'Editer la carte',
title : 'Propriétés de la Carte',
map : 'Map',
'options' : 'Options',
search : 'Rechercher',
elements : 'Eléments',
width: 'Largeur',
responsive: 'Responsive (100% Width)',
height: 'Hauteur',
zoomLevel : 'Niveau de Zoom',
latitude : 'Latitude',
longitude : 'Longitude',
loadMap : 'Charge Carte',
onlyStatic: 'Statique',
onClick : 'Sur click',
onLoad : 'au chargement de la page',
byScript : 'By a Script',
zoomControl : 'Contrôle de Navigation',
smallZoom : 'Petit',
fullZoom : 'Complet',
mapTypes : 'Types de carte',
none: 'Aucune',
Default : 'Defaut',
mapTypesFull : 'Barre',
mapTypesMenu : 'Menu',
overview : 'Encart',
scale : 'Echelle',
weather : 'Météo',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Chercher une adresse',
clickToLoad : 'Cliquer pour charger',
defaultTitle : 'Titre',
defaultMarkerText : 'Info sur le point',
addMarker : 'Ajouter un marker',
addLine : 'Ajouter une ligne',
addArea : 'Ajouter une zone',
addKML : 'Ajouter uné référence KML',
addText : 'Ajouter une note',
addCircle : 'Add a circle',
kmlUrl : 'Fichier KML',
tooltip: 'Infobulle',
markerIcon: 'Icone',
deleteMarker : 'Effacer',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Propriété du Marker',
selectIcon :'Choisissez une icone pour le marker',
textProperties : 'Texte',
text : 'Texte',
properties : 'Propriété',
lineProperties : 'Propriété de la ligne',
strokeColor: 'Couleur',
strokeWeight: 'Largeur',
strokeOpacity: 'Opacité',
areaProperties: 'Propriétés de la zone',
fillColor: 'Couleur',
fillOpacity: 'Opacité',
chooseColor: 'Choisissez...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'it',
{
toolbar : 'Aggiungi/Modifica Google Map',
menu : 'Modifica Mappa',
title : 'Proprietà Google Maps',
map : 'Mappa',
'options' : 'Opzioni',
search : 'Cerca',
elements : 'Elementi',
width: 'Larghezza',
responsive: 'Responsive (100% Width)',
height: 'Altezza',
zoomLevel : 'Livello di Zoom',
latitude : 'Latitudine',
longitude : 'Longitudina',
loadMap : 'Caricamento Mappa',
onlyStatic: 'Statico',
onClick : 'Su click',
onLoad : 'Su caricamento pagina',
byScript : 'By a Script',
zoomControl : 'Barra di Navigazione',
smallZoom : 'Piccola',
fullZoom : 'Grande',
mapTypes : 'Tipi di mappa',
none: 'Non impostato',
Default : 'Predefinito',
mapTypesFull : 'Barra',
mapTypesMenu : 'Menu',
overview : 'Overview',
scale : 'Scala',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Cerca e direzione',
clickToLoad : 'Clicca per caricare',
defaultTitle : 'Titolo',
defaultMarkerText : 'Informazioni',
addMarker : 'Aggiungi un marker',
addLine : 'Aggiungi una linea',
addArea : 'Aggiungi un\'area',
addKML : 'Aggiungi una riferimento KLM',
addText : 'Aggiungi una nota',
addCircle : 'Add a circle',
kmlUrl : 'KML file',
tooltip: 'Tooltip',
markerIcon: 'Icona',
deleteMarker : 'Elimina',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Proprietà del marker',
selectIcon :'Scegli un\'icona per il marker',
textProperties : 'Testo',
text : 'Testo',
properties : 'Proprietà',
lineProperties : 'Proprietà della linea',
strokeColor: 'Colore',
strokeWeight: 'Larcghezza',
strokeOpacity: 'Opacità',
areaProperties: 'Proprietà dell\'area',
fillColor: 'Colore',
fillOpacity: 'Opacità',
chooseColor: 'Seleziona...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'nl',
{
toolbar : 'Kaart invoegen',
menu : 'Kaart bewerken',
title : 'Kaarteigenschappen',
map : 'Kaart',
'options' : 'Opties',
search : 'Zoeken',
elements : 'Elementen',
width: 'Breedte',
responsive: 'Responsive (100% Width)',
height: 'Hoogte',
zoomLevel : 'Zoomniveau',
latitude : 'Breedtegraad',
longitude : 'Lengtegraad',
loadMap : 'Kaart laden',
onlyStatic: 'Statisch',
onClick : 'Bij aanklikken',
onLoad : 'Bij laden pagina',
byScript : 'Via een Script',
zoomControl : 'Navigatieknoppen',
smallZoom : 'Klein',
fullZoom : 'Volledig',
mapTypes : 'Kaarttypes',
none: 'Geen',
Default : 'Standaard',
mapTypesFull : 'Balk',
mapTypesMenu : 'Menu',
overview : 'Overzicht',
scale : 'Schaal',
weather : 'Weer',
paths : 'Wegen',
traffic : 'Verkeer',
transit : 'Transit',
bicycle : 'Fiets',
searchDirection : 'Zoeken naar',
clickToLoad : 'Klik om te laden',
defaultTitle : 'Titel',
defaultMarkerText : 'Informatie',
addMarker : 'Marker invoegen',
addLine : 'Lijn invoegen',
addArea : 'Gebied invoegen',
addKML : 'KML invoegen',
addText : 'Notitie invoegen',
addCircle : 'Circel invoegen',
kmlUrl : 'KML-bestand',
tooltip: 'Tooltip',
markerIcon: 'Icoon',
deleteMarker : 'Verwijderen',
directions : 'Route link invoegen',
directionsTitle : 'Route',
markerProperties : 'Marker-eigenschappen',
selectIcon :'Selecteer een icoon voor de marker',
textProperties : 'Tekst',
text : 'Tekst',
properties : 'Eigenschappen',
lineProperties : 'Lijneigenschappen',
strokeColor: 'Kleur',
strokeWeight: 'Breedte',
strokeOpacity: 'Transparantie',
areaProperties: 'Gebiedseigenschappen',
fillColor: 'Kleur',
fillOpacity: 'Transparantie',
chooseColor: 'Kiezen...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'pl',
{
toolbar : 'Wstaw / edytuj Google Map',
menu : 'Edycja mapy',
title : 'Właściwości Google Maps',
map : 'Mapa',
'options' : 'Opcje',
search : 'Szukaj',
elements : 'Elementy',
width: 'Szerokość okna',
responsive: 'Responsive (100% Width)',
height: 'Wysokość okna ',
zoomLevel : 'Stopień powiększenia',
latitude : 'Szerokość geograficzna',
longitude : 'Długość geograficzna',
loadMap : 'Opcje ładowania mapy',
onlyStatic: 'Statyczna',
onClick : 'Po kliknięciu',
onLoad : 'Po załadowaniu strony',
byScript : 'By a Script',
zoomControl : 'Stopień powiększenia',
smallZoom : 'Mały',
fullZoom : 'Pełny',
mapTypes : 'Rodzaje wyglądu mapy',
none: 'Brak',
Default : 'Domyślny',
mapTypesFull : 'Pasek',
mapTypesMenu : 'Menu',
overview : 'Podgląd',
scale : 'Skala',
weather : 'Pogoda',
paths : 'Drogi',
traffic : 'Ruch uliczny',
transit : 'Samochody',
bicycle : 'Rowery',
searchDirection : 'Szukaj kierunku',
clickToLoad : 'Kliknij aby załadować',
defaultTitle : 'Tytuł',
defaultMarkerText : 'Informacje o miejscu',
addMarker : 'Dodaj znacznik',
addLine : 'Dodaj linie',
addArea : 'Dodaj obszar',
addKML : 'Dodaj odwołanie KML',
addText : 'Dodaj tekst',
addCircle : 'Dodaj obszar w postaci koła',
kmlUrl : 'Plik KML',
tooltip: 'Nazwa',
markerIcon: 'Ikona',
deleteMarker : 'Usuń',
directions : 'Dodaj link Dojazd',
directionsTitle : 'Dojazd',
markerProperties : 'Właściwości znacznika',
selectIcon :'Wybierz ikonę znacznika',
textProperties : 'Tekst',
text : 'Tekst',
properties : 'Właściwości',
lineProperties : 'Właściwości linii',
strokeColor: 'Kolor',
strokeWeight: 'Szerokość',
strokeOpacity: 'Przezroczystość',
areaProperties: 'Właściwości obszaru',
fillColor: 'Kolor',
fillOpacity: 'Przezroczystość',
chooseColor: 'Wybierz...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'ru',
{
toolbar : 'Вставка/редактирование карты Google',
menu : 'Редактировать карту',
title : 'Свойства карты Google',
map : 'Карта',
'options' : 'Настройки',
search : 'Поиск',
elements : 'Элементы',
width: 'Ширина',
responsive: 'Responsive (100% Width)',
height: 'Высота',
zoomLevel : 'Масштаб',
latitude : 'Широта',
longitude : 'Долгота',
loadMap : 'Загрузить карту',
onlyStatic: 'Статическая карта',
onClick : 'При клике',
onLoad : 'При загрузке страницы',
byScript : 'By a Script',
zoomControl : 'Управление навигацией',
smallZoom : 'Меньше',
fullZoom : 'Больше',
mapTypes : 'Типы карты',
none: 'Нет',
Default : 'По умолчанию',
mapTypesFull : 'Панель',
mapTypesMenu : 'Меню',
overview : 'Обзор',
scale : 'Масштаб',
weather : 'Погода',
paths : 'Roads',
traffic : 'Траффик',
transit : 'Транзит',
bicycle : 'Bicycle',
searchDirection : 'Поиск направления',
clickToLoad : 'Кликните для загрузки',
defaultTitle : 'Заголовок',
defaultMarkerText : 'Описание точки',
addMarker : 'Добавить маркер',
addLine : 'Добавить линию',
addArea : 'Добавить область',
addKML : 'Добавить ссылку на KML',
addText : 'Добавить примечание',
addCircle : 'Add a circle',
kmlUrl : 'Файл KML',
tooltip: 'Подсказка',
markerIcon: 'Иконка',
deleteMarker : 'Удалить',
directions : 'Добавить связь с направлением',
directionsTitle : 'Направления',
markerProperties : 'Свойства маркера',
selectIcon :'Выбор иконки',
textProperties : 'Текст',
text : 'Текст',
properties : 'Свойства',
lineProperties : 'Свойства линии',
strokeColor: 'Цвет',
strokeWeight: 'Ширина',
strokeOpacity: 'Прозрачность',
areaProperties: 'Свойства области',
fillColor: 'Ширина',
fillOpacity: 'Прозрачность',
chooseColor: 'Выберите...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'sk',
{
toolbar : 'Vložiť/upraviť Google Mapu',
menu : 'Upraviť mapu',
title : 'Vlastnosti Google Mapy',
map : 'Mapa',
options : 'Možnosti',
search : 'Hľadať',
elements : 'Prvky',
width: 'Šírka',
responsive: 'Responsive (100% Width)',
height: 'Výška',
zoomLevel : 'Úroveň priblíženia',
latitude : 'Zemepisná šírka',
longitude : 'Zemepisná dĺžka',
loadMap : 'Načítať mapu',
onlyStatic: 'Statický',
onClick : 'Pri kliknutí',
onLoad : 'Pri načítaní',
byScript : 'By a Script',
zoomControl : 'Navigácia',
smallZoom : 'Malá',
fullZoom : 'Plná',
mapTypes : 'Typ mapy',
none: 'Žiadna',
Default : 'Základna',
mapTypesFull : 'Pruh',
mapTypesMenu : 'Menu',
overview : 'Prehľad',
scale : 'Stupnica',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Vyhľadať adresu',
clickToLoad : 'Kliknite pre načítanie',
defaultTitle : 'Názov',
defaultMarkerText : 'Informácie o bode',
addMarker : 'Pridať značku',
addLine : 'Pridať čiaru',
addArea : 'Pridať plochu',
addKML : 'Pridať odkaz KML',
addText : 'Pridať textovú poznámku',
addCircle : 'Add a circle',
kmlUrl : 'KML súbor',
tooltip: 'Názov',
markerIcon: 'Ikona',
deleteMarker : 'Zmazať',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'Vlastnosti Markera',
selectIcon :'Vybrat ikonu pre marker',
textProperties : 'Text',
text : 'Text',
properties : 'Vlastnosti',
lineProperties : 'Vlastnosti čiary',
strokeColor: 'Farba',
strokeWeight: 'Šírka',
strokeOpacity: 'Nepriehľadnosť',
areaProperties: 'Vlastnosti objektu',
fillColor: 'Farba',
fillOpacity: 'Nepriehľadnosť',
chooseColor: 'Vybrať...'
}
);

View File

@@ -0,0 +1,85 @@
CKEDITOR.plugins.setLang( 'googlemaps', 'tr',
{
toolbar : 'Google Haritası Ekle/Düzenle',
menu : 'Harita düzenle',
title : 'Google Harita özellikleri',
map : 'Harita',
'options' : 'Seçenekler',
search : 'Ara',
elements : 'Öğeler',
width: 'Genişlik',
responsive: 'Responsive (100% Width)',
height: 'Yükseklik',
zoomLevel : 'Yakınlaştırma Seviyesi',
latitude : 'Enlem',
longitude : 'Boylam',
loadMap : 'Harita yükle',
onlyStatic: 'Statik',
onClick : 'Tıklamada',
onLoad : 'Sayfa yüklemede',
byScript : 'By a Script',
zoomControl : 'Navigasyon kontrolü',
smallZoom : 'Küçük',
fullZoom : 'Tam',
mapTypes : 'Harita tipleri',
none: 'Hiçbiri',
Default : 'Öntanımlı',
mapTypesFull : 'Çubuk',
mapTypesMenu : 'Menü',
overview : 'Genel görünüm',
scale : 'Ölçek',
weather : 'Weather',
paths : 'Roads',
traffic : 'Traffic',
transit : 'Transit',
bicycle : 'Bicycle',
searchDirection : 'Yol tarifi ara',
clickToLoad : 'Yüklemek için tıkla',
defaultTitle : 'Başlık',
defaultMarkerText : 'Nokta hakkında bilgi',
addMarker : 'İşaretçi ekle',
addLine : 'Çizgi ekle',
addArea : 'Alan ekle',
addKML : 'KML referansı ekle',
addText : 'Metin not ekle',
addCircle : 'Add a circle',
kmlUrl : 'KML dosyası',
tooltip: 'İpucu',
markerIcon: 'İkon',
deleteMarker : 'Sil',
directions : 'Add Directions link',
directionsTitle : 'Directions',
markerProperties : 'İşaretçi özellikleri',
selectIcon :'İşaretçi için ikon seç',
textProperties : 'Metin',
text : 'Metin',
properties : 'Özellikler',
lineProperties : 'Çizgi özellikleri',
strokeColor: 'Renk',
strokeWeight: 'Genişlik',
strokeOpacity: 'Saydamlık',
areaProperties: 'Alan özellikleri',
fillColor: 'Renk',
fillOpacity: 'Saydamlık',
chooseColor: 'Seç...'
}
);

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>googlemaps plugin index</title>
<META http-equiv="refresh" content="0;URL=docs/install.html">
</head>
<body>
<p>You should have been redirected <a href="docs/install.html">to the documentation</a></p>
</body>
</html>

View File

@@ -0,0 +1,271 @@
/* CK googlemapsEnd v3.6 */
/* global google */
(function(window) {
'use strict';
var initGmapsLoader = window.initGmapsLoader = function(e) {
if (e) {
var obj = e.target || e.srcElement;
if (obj) obj.onclick = null;
}
if (window.google) {
if (window.google.maps && (!window.gmapsGeometry || google.maps.geometry) && (!window.gmapsWeather || google.maps.weather)) {
initializeMaps();
return;
}
if (window.google.load) {
google.load('maps', '3', { 'callback':initializeMaps,other_params:'sensor=false' + getMapsLibraries() });
return;
}
}
if (document.getElementById('gmapsLoader'))
return;
var script = document.createElement('script');
script.src = 'https://maps.googleapis.com/maps/api/js?sensor=false' + getMapsLibraries() + '&callback=initializeMaps';
script.type = 'text/javascript';
script.id = 'gmapsLoader';
document.getElementsByTagName('head')[0].appendChild(script);
};
function getMapsLibraries() {
var libraries = '';
if (window.gmapsGeometry) libraries = 'geometry';
if (window.gmapsWeather) libraries += ( !libraries ? '' : ',') + 'weather';
if (libraries) libraries = '&libraries=' + libraries;
if (window.gmapsKey) libraries += '&key=' + window.gmapsKey;
return libraries;
}
var initializeMaps = window.initializeMaps = function() {
if (!Label.prototype.onAdd)
InitializeLabels();
window.loadedGMaps = [];
for (var i = 0; i < window.gmapsLoaders.length; i++)
window.gmapsLoaders[i]();
window.gmapsLoaders = [];
if (window.onLoadedGMaps)
window.onLoadedGMaps();
};
var CKEMap = window.CKEMap = function(div, options) {
var allMapTypes = [ google.maps.MapTypeId.ROADMAP, google.maps.MapTypeId.SATELLITE, google.maps.MapTypeId.HYBRID, google.maps.MapTypeId.TERRAIN ];
var myOptions = {
zoom: options.zoom,
center: new google.maps.LatLng(options.center[0], options.center[1]),
mapTypeId: allMapTypes[ options.mapType ],
heading: options.heading,
tilt: options.tilt,
scaleControl: options.scaleControl,
overviewMapControl: options.overviewMapControl,
overviewMapControlOptions: options.overviewMapControlOptions
};
switch (options.zoomControl) {
case 'None':
myOptions.zoomControl = false;
myOptions.panControl = false;
myOptions.streetViewControl = false;
myOptions.rotateControl = false;
break;
case 'Default':
myOptions.zoomControl = true;
break;
case 'Small':
myOptions.zoomControl = true;
myOptions.zoomControlOptions = { style: google.maps.ZoomControlStyle.SMALL };
break;
case 'Full':
myOptions.zoomControl = true;
myOptions.zoomControlOptions = { style: google.maps.ZoomControlStyle.ZOOM_PAN };
break;
}
switch (options.mapsControl) {
case 'None':
myOptions.mapTypeControl = false;
break;
case 'Default':
myOptions.mapTypeControl = true;
break;
case 'Full':
myOptions.mapTypeControl = true;
myOptions.mapTypeControlOptions = { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR };
break;
case 'Menu':
myOptions.mapTypeControl = true;
myOptions.mapTypeControlOptions = { style: google.maps.MapTypeControlStyle.DROPDOWN_MENU };
break;
}
this.map = new google.maps.Map(div, myOptions);
if (options.weather) {
var wopts = { map: this.map };
if (options.weatherUsaUnits) {
wopts.temperatureUnits = google.maps.weather.TemperatureUnit.FAHRENHEIT;
wopts.windSpeedUnits = google.maps.weather.WindSpeedUnit.MILES_PER_HOUR;
}
new google.maps.weather.WeatherLayer( wopts );
}
/* old version*/
if (options.traffic) {
this.pathsLayer = new google.maps.TrafficLayer();
this.pathsLayer.setMap( this.map );
}
if (options.transit) {
this.pathsLayer = new google.maps.TransitLayer();
this.pathsLayer.setMap( this.map );
}
/* new version*/
switch (options.pathType) {
case 'Default':
break;
case 'Traffic':
this.pathsLayer = new google.maps.TrafficLayer();
this.pathsLayer.setMap( this.map );
break;
case 'Transit':
this.pathsLayer = new google.maps.TransitLayer();
this.pathsLayer.setMap( this.map );
break;
case 'Bicycle':
this.pathsLayer = new google.maps.BicyclingLayer();
this.pathsLayer.setMap( this.map );
break;
}
window.loadedGMaps.push(this);
if (options.panorama) {
var pan = options.panorama;
var panorama = this.map.getStreetView();
panorama.setVisible(true);
panorama.setPov( { heading: pan.pov1, pitch: pan.pov2, zoom: pan.pov3 });
panorama.setPosition( new google.maps.LatLng(pan.lat, pan.lng) );
}
return this;
};
CKEMap.prototype.AddMarkers = function(aPoints) {
function getIcon(marker) {
var data = window.googleMaps_Icons && window.googleMaps_Icons[ marker.color ];
if (!data)
return { url:'https://maps.gstatic.com/mapfiles/ms/micons/' + marker.color + '-dot.png' };
return { url:data.marker.image };
}
function getShadow(marker) {
var data = window.googleMaps_Icons && window.googleMaps_Icons[ marker.color ];
if (!data) {
return new google.maps.MarkerImage('https://maps.gstatic.com/mapfiles/ms/micons/msmarker.shadow.png', null, null, new google.maps.Point(15, 32));
}
if (!data.shadow || !data.shadow.image)
return null;
return new google.maps.MarkerImage(data.shadow.image);
}
function createMarker(map, data) {
var clickable = !!data.text,
point = new google.maps.LatLng(data.lat, data.lon),
marker = new google.maps.Marker( { position:point, map:map, title:data.title, icon: getIcon(data), clickable:clickable });
var shadow = getShadow(data);
if (shadow)
marker.setShadow(shadow);
if (data.title)
new Label({ position:point, text:marker.title, map:map });
if (clickable) google.maps.event.addListener(marker, 'click', function() {
if (!marker._infoWindow)
marker._infoWindow = new google.maps.InfoWindow({
content: '<div class="InfoContent">' + data.text + '</div>',
maxWidth:data.maxWidth
});
marker._infoWindow.open(map, marker);
});
if (data.open)
google.maps.event.trigger(marker, 'click');
marker.data = data;
return marker;
}
this.markers = [];
for (var i = 0; i < aPoints.length; i++)
this.markers.push(createMarker(this.map, aPoints[i]));
};
CKEMap.prototype.AddTexts = function(aPoints) {
this.texts = [];
for (var i = 0; i < aPoints.length; i++) {
var data = aPoints[i];
if (data.title)
this.texts.push(new Label({ position:new google.maps.LatLng(data.lat, data.lon), text: '<span>' + data.title + '</span>', map: this.map, className:data.className }));
}
};
CKEMap.prototype.AddLines = function( aLines ) {
this.lines = [];
for (var i = 0; i < aLines.length; i++) {
var line = aLines[i],
l = new google.maps.Polyline( { map:this.map, path: google.maps.geometry.encoding.decodePath(line.points), strokeColor: line.color, strokeOpacity: line.opacity, strokeWeight: line.weight, clickable:false } );
this.lines.push(l);
}
};
CKEMap.prototype.AddAreas = function( aAreas ) {
this.areas = [];
for (var i = 0; i < aAreas.length; i++) {
var area = aAreas[i],
line = area.polylines[0],
paths = [];
if (typeof line.points == 'string') {
paths.push( google.maps.geometry.encoding.decodePath( line.points ) );
} else {
for ( var j = 0; j < line.points.length; j++) {
paths.push( google.maps.geometry.encoding.decodePath( line.points[j] ) );
}
}
var a = new google.maps.Polygon( { map:this.map, paths: paths, strokeColor: line.color, strokeOpacity: line.opacity, strokeWeight: line.weight, fillColor:area.color, fillOpacity:area.opacity, clickable:false } );
this.areas.push(a);
}
};
CKEMap.prototype.AddCircles = function( aCircles ) {
this.circles = [];
for (var i = 0; i < aCircles.length; i++) {
var circle = aCircles[i],
point = new google.maps.LatLng(circle.lat, circle.lon),
c = new google.maps.Circle( { map:this.map, center: point, radius: circle.radius, strokeColor: circle.color, strokeOpacity: circle.opacity, strokeWeight: circle.weight, fillColor:circle.fillColor, fillOpacity:circle.fillOpacity, clickable:false } );
this.circles.push(c);
}
};
CKEMap.prototype.AddKml = function( url ) {
this.kml = new google.maps.KmlLayer(url, { map:this.map });
};
if (window.gmapsAutoload) {
if (document.readyState && document.readyState == 'complete') {
initGmapsLoader();
} else {
if (window.addEventListener) {
window.addEventListener('load', initGmapsLoader, false);
} else {
window.attachEvent('onload', initGmapsLoader);
}
}
}
/*eslint-disable */
// ELabel
// http://blog.mridey.com/2009/09/label-overlay-example-for-google-maps.html
function Label(b){this.setValues(b);var a=this.span_=document.createElement("span");a.style.cssText="white-space:nowrap; border:1px solid #999; padding:2px; background-color:white";if(b.className) a.className=b.className;var c=this.div_=document.createElement("div");c.appendChild(a); c.style.cssText="position: absolute; display: none"}
function InitializeLabels(){Label.prototype=new google.maps.OverlayView;Label.prototype.onAdd=function(){var b=this.getPanes().overlayLayer;b.appendChild(this.div_)};Label.prototype.onRemove=function(){this.div_.parentNode.removeChild(this.div_);for(var b=0,a=this.listeners_.length;b<a;++b){google.maps.event.removeListener(this.listeners_[b])}};Label.prototype.draw=function(){var b=this.getProjection(),a=b.fromLatLngToDivPixel(this.get("position")),c=this.div_;c.style.left=a.x+"px";c.style.top=a.y+"px";c.style.display="block";this.span_.innerHTML=this.get("text").toString()}}
/*eslint-enable */
})(window);