From fd1554fc9907ba91bfaa1b23fff43aece80b5eb6 Mon Sep 17 00:00:00 2001
From: "Christoph M. Becker"
Date: Sat, 8 Apr 2017 13:27:06 +0200
Subject: [PATCH] Commit version 1.4.6
---
admin.php | 1353 ++++++++
backgroundimages/blue_lozange.gif | Bin 0 -> 144 bytes
backgroundimages/blue_nebula.jpg | Bin 0 -> 73261 bytes
backgroundimages/blue_x.gif | Bin 0 -> 159 bytes
backgroundimages/flower.jpg | Bin 0 -> 98123 bytes
backgroundimages/green_lozange.gif | Bin 0 -> 144 bytes
backgroundimages/nebula.jpg | Bin 0 -> 71655 bytes
backgroundimages/red_lozange.gif | Bin 0 -> 144 bytes
backgroundimages/red_x.gif | Bin 0 -> 159 bytes
backgroundimages/roses.jpg | Bin 0 -> 139924 bytes
backgroundimages/sky.jpg | Bin 0 -> 76395 bytes
backgroundimages/takelage.jpg | Bin 0 -> 169994 bytes
backgroundimages/yellow_lozange.gif | Bin 0 -> 144 bytes
changelog.txt | 334 ++
config/config.php | 34 +
config/config2.php | 88 +
config/metaconfig.php | 34 +
content/.gitignore | 0
css/crossout.gif | Bin 0 -> 1149 bytes
css/editor.css | 48 +
css/overwrite.css | 183 ++
css/redstripes.gif | Bin 0 -> 190 bytes
css/stripes.gif | Bin 0 -> 125 bytes
css/stylesheet.css | 1080 ++++++
dp/backstripes.gif | Bin 0 -> 234 bytes
dp/bg_header.jpg | Bin 0 -> 1792 bytes
dp/bullet1.gif | Bin 0 -> 55 bytes
dp/bullet2.gif | Bin 0 -> 262 bytes
dp/cal-grey.gif | Bin 0 -> 170 bytes
dp/cal.gif | Bin 0 -> 127 bytes
dp/datepicker.css | 511 +++
dp/datepicker.js | 2898 +++++++++++++++++
dp/datepicker.packed.js | 1 +
dp/gradient-e5e5e5-ffffff.gif | Bin 0 -> 526 bytes
dp/lang/ar.js | 9 +
dp/lang/cs.js | 9 +
dp/lang/da.js | 10 +
dp/lang/de.js | 10 +
dp/lang/en.js | 9 +
dp/lang/eo.js | 13 +
dp/lang/es.js | 9 +
dp/lang/et.js | 23 +
dp/lang/fi.js | 7 +
dp/lang/fr.js | 69 +
dp/lang/he.js | 9 +
dp/lang/hu.js | 9 +
dp/lang/id.js | 9 +
dp/lang/it.js | 11 +
dp/lang/kr.js | 9 +
dp/lang/lt.js | 8 +
dp/lang/lv.js | 9 +
dp/lang/nl.js | 9 +
dp/lang/no.js | 9 +
dp/lang/pl.js | 10 +
dp/lang/pt-br.js | 11 +
dp/lang/pt.js | 9 +
dp/lang/ru.js | 11 +
dp/lang/se.js | 9 +
dp/lang/si.js | 9 +
dp/lang/sk.js | 9 +
dp/lang/tr.js | 9 +
editorconfigs/ckeditorconfig_for_calendar.php | 93 +
editorconfigs/tinymceconfig_for_calendar.php | 110 +
.../FCKeditor/FCKeditor_for_Calendar.txt | 11 +
.../editor/css/behaviors/disablehandles.htc | 15 +
.../editor/css/behaviors/showtableborders.htc | 36 +
.../FCKeditor/editor/css/fck_editorarea.css | 110 +
.../FCKeditor/editor/css/fck_internal.css | 199 ++
.../editor/css/fck_showtableborders_gecko.css | 49 +
.../editor/css/images/block_address.png | Bin 0 -> 288 bytes
.../editor/css/images/block_blockquote.png | Bin 0 -> 293 bytes
.../FCKeditor/editor/css/images/block_div.png | Bin 0 -> 229 bytes
.../FCKeditor/editor/css/images/block_h1.png | Bin 0 -> 218 bytes
.../FCKeditor/editor/css/images/block_h2.png | Bin 0 -> 220 bytes
.../FCKeditor/editor/css/images/block_h3.png | Bin 0 -> 219 bytes
.../FCKeditor/editor/css/images/block_h4.png | Bin 0 -> 229 bytes
.../FCKeditor/editor/css/images/block_h5.png | Bin 0 -> 236 bytes
.../FCKeditor/editor/css/images/block_h6.png | Bin 0 -> 216 bytes
.../FCKeditor/editor/css/images/block_p.png | Bin 0 -> 205 bytes
.../FCKeditor/editor/css/images/block_pre.png | Bin 0 -> 223 bytes
.../editor/css/images/fck_anchor.gif | Bin 0 -> 184 bytes
.../editor/css/images/fck_flashlogo.gif | Bin 0 -> 599 bytes
.../editor/css/images/fck_hiddenfield.gif | Bin 0 -> 105 bytes
.../editor/css/images/fck_pagebreak.gif | Bin 0 -> 54 bytes
.../editor/css/images/fck_plugin.gif | Bin 0 -> 1709 bytes
.../dialog/common/fck_dialog_common.css | 85 +
.../editor/dialog/common/fck_dialog_common.js | 347 ++
.../editor/dialog/common/images/locked.gif | Bin 0 -> 74 bytes
.../editor/dialog/common/images/reset.gif | Bin 0 -> 104 bytes
.../editor/dialog/common/images/unlocked.gif | Bin 0 -> 75 bytes
.../FCKeditor/editor/dialog/fck_about.html | 161 +
.../FCKeditor/editor/dialog/fck_anchor.html | 220 ++
.../FCKeditor/editor/dialog/fck_button.html | 104 +
.../FCKeditor/editor/dialog/fck_checkbox.html | 104 +
.../editor/dialog/fck_colorselector.html | 172 +
.../FCKeditor/editor/dialog/fck_div.html | 396 +++
.../FCKeditor/editor/dialog/fck_docprops.html | 600 ++++
.../FCKeditor/editor/dialog/fck_form.html | 109 +
.../editor/dialog/fck_hiddenfield.html | 115 +
.../FCKeditor/editor/dialog/fck_image.html | 276 ++
.../editor/dialog/fck_image/fck_image.js | 512 +++
.../dialog/fck_image/fck_image_preview.html | 72 +
.../FCKeditor/editor/dialog/fck_link.html | 295 ++
.../editor/dialog/fck_link/fck_link.js | 893 +++++
.../FCKeditor/editor/dialog/fck_listprop.html | 120 +
.../FCKeditor/editor/dialog/fck_paste.html | 347 ++
.../editor/dialog/fck_radiobutton.html | 104 +
.../FCKeditor/editor/dialog/fck_replace.html | 650 ++++
.../FCKeditor/editor/dialog/fck_scayt.html | 746 +++++
.../editor/dialog/fck_scayt/scayt_dialog.css | 169 +
.../FCKeditor/editor/dialog/fck_select.html | 180 +
.../editor/dialog/fck_select/fck_select.js | 194 ++
.../FCKeditor/editor/dialog/fck_smiley.html | 111 +
.../FCKeditor/editor/dialog/fck_source.html | 68 +
.../editor/dialog/fck_specialchar.html | 121 +
.../editor/dialog/fck_spellerpages.html | 70 +
.../FCKeditor/editor/dialog/fck_table.html | 440 +++
.../editor/dialog/fck_tablecell.html | 293 ++
.../FCKeditor/editor/dialog/fck_template.html | 242 ++
.../dialog/fck_template/images/template1.gif | Bin 0 -> 375 bytes
.../dialog/fck_template/images/template2.gif | Bin 0 -> 333 bytes
.../dialog/fck_template/images/template3.gif | Bin 0 -> 422 bytes
.../dialog/fck_template/images/template4.gif | Bin 0 -> 606 bytes
.../dialog/fck_template/images/template5.gif | Bin 0 -> 717 bytes
.../FCKeditor/editor/dialog/fck_textarea.html | 94 +
.../editor/dialog/fck_textfield.html | 136 +
.../FCKeditor/editor/dtd/fck_dtd_test.html | 41 +
.../FCKeditor/editor/dtd/fck_xhtml10strict.js | 116 +
.../editor/dtd/fck_xhtml10transitional.js | 140 +
fckeditor/FCKeditor/editor/fckdebug.html | 153 +
fckeditor/FCKeditor/editor/fckdialog.html | 819 +++++
fckeditor/FCKeditor/editor/fckeditor.html | 317 ++
.../filemanager/browser/cmsimple/browser.css | 99 +
.../filemanager/browser/cmsimple/browser.html | 202 ++
.../browser/cmsimple/frmactualfolder.html | 80 +
.../browser/cmsimple/frmcreatefolder.html | 122 +
.../browser/cmsimple/frmfolders.html | 221 ++
.../browser/cmsimple/frmresourceslist.html | 247 ++
.../browser/cmsimple/frmresourcetype.html | 73 +
.../browser/cmsimple/frmupload.html | 108 +
.../browser/cmsimple/images/ButtonArrow.gif | Bin 0 -> 138 bytes
.../browser/cmsimple/images/Downloads.png | Bin 0 -> 1837 bytes
.../browser/cmsimple/images/File.png | Bin 0 -> 1658 bytes
.../browser/cmsimple/images/Flash.png | Bin 0 -> 2044 bytes
.../browser/cmsimple/images/Folder.gif | Bin 0 -> 128 bytes
.../browser/cmsimple/images/Folder32.gif | Bin 0 -> 281 bytes
.../browser/cmsimple/images/FolderOpened.gif | Bin 0 -> 132 bytes
.../cmsimple/images/FolderOpened32.gif | Bin 0 -> 264 bytes
.../browser/cmsimple/images/FolderUp.gif | Bin 0 -> 132 bytes
.../browser/cmsimple/images/Image.png | Bin 0 -> 2483 bytes
.../browser/cmsimple/images/Media.png | Bin 0 -> 1797 bytes
.../images/applications-graphics2.png | Bin 0 -> 1673 bytes
.../browser/cmsimple/images/edit-delete.png | Bin 0 -> 325 bytes
.../browser/cmsimple/images/edit-delete1.png | Bin 0 -> 1211 bytes
.../browser/cmsimple/images/edit-delete2.png | Bin 0 -> 680 bytes
.../browser/cmsimple/images/folder-new1.png | Bin 0 -> 838 bytes
.../browser/cmsimple/images/folder-new2.png | Bin 0 -> 1399 bytes
.../browser/cmsimple/images/folder-open.png | Bin 0 -> 625 bytes
.../browser/cmsimple/images/folder-open1.png | Bin 0 -> 905 bytes
.../browser/cmsimple/images/folder-open2.png | Bin 0 -> 1184 bytes
.../browser/cmsimple/images/folder.png | Bin 0 -> 581 bytes
.../browser/cmsimple/images/folder1.png | Bin 0 -> 848 bytes
.../browser/cmsimple/images/go-home2.png | Bin 0 -> 1774 bytes
.../browser/cmsimple/images/go-jump.png | Bin 0 -> 723 bytes
.../browser/cmsimple/images/go-previous.png | Bin 0 -> 655 bytes
.../browser/cmsimple/images/go-top1.png | Bin 0 -> 917 bytes
.../browser/cmsimple/images/go-up1.png | Bin 0 -> 877 bytes
.../browser/cmsimple/images/icons/32/ai.gif | Bin 0 -> 1140 bytes
.../browser/cmsimple/images/icons/32/avi.gif | Bin 0 -> 454 bytes
.../browser/cmsimple/images/icons/32/bmp.gif | Bin 0 -> 709 bytes
.../browser/cmsimple/images/icons/32/cs.gif | Bin 0 -> 224 bytes
.../cmsimple/images/icons/32/default.icon.gif | Bin 0 -> 177 bytes
.../browser/cmsimple/images/icons/32/dll.gif | Bin 0 -> 258 bytes
.../browser/cmsimple/images/icons/32/doc.gif | Bin 0 -> 260 bytes
.../browser/cmsimple/images/icons/32/exe.gif | Bin 0 -> 170 bytes
.../browser/cmsimple/images/icons/32/fla.gif | Bin 0 -> 946 bytes
.../browser/cmsimple/images/icons/32/gif.gif | Bin 0 -> 704 bytes
.../browser/cmsimple/images/icons/32/htm.gif | Bin 0 -> 1527 bytes
.../browser/cmsimple/images/icons/32/html.gif | Bin 0 -> 1527 bytes
.../browser/cmsimple/images/icons/32/jpg.gif | Bin 0 -> 463 bytes
.../browser/cmsimple/images/icons/32/js.gif | Bin 0 -> 274 bytes
.../browser/cmsimple/images/icons/32/mdb.gif | Bin 0 -> 274 bytes
.../browser/cmsimple/images/icons/32/mp3.gif | Bin 0 -> 454 bytes
.../browser/cmsimple/images/icons/32/pdf.gif | Bin 0 -> 567 bytes
.../browser/cmsimple/images/icons/32/png.gif | Bin 0 -> 464 bytes
.../browser/cmsimple/images/icons/32/ppt.gif | Bin 0 -> 254 bytes
.../browser/cmsimple/images/icons/32/rdp.gif | Bin 0 -> 1493 bytes
.../browser/cmsimple/images/icons/32/swf.gif | Bin 0 -> 725 bytes
.../browser/cmsimple/images/icons/32/swt.gif | Bin 0 -> 724 bytes
.../browser/cmsimple/images/icons/32/txt.gif | Bin 0 -> 213 bytes
.../browser/cmsimple/images/icons/32/vsd.gif | Bin 0 -> 277 bytes
.../browser/cmsimple/images/icons/32/xls.gif | Bin 0 -> 271 bytes
.../browser/cmsimple/images/icons/32/xml.gif | Bin 0 -> 408 bytes
.../browser/cmsimple/images/icons/32/zip.gif | Bin 0 -> 368 bytes
.../browser/cmsimple/images/icons/ai.gif | Bin 0 -> 403 bytes
.../browser/cmsimple/images/icons/avi.gif | Bin 0 -> 249 bytes
.../browser/cmsimple/images/icons/bmp.gif | Bin 0 -> 126 bytes
.../browser/cmsimple/images/icons/cs.gif | Bin 0 -> 128 bytes
.../cmsimple/images/icons/default.icon.gif | Bin 0 -> 113 bytes
.../browser/cmsimple/images/icons/dll.gif | Bin 0 -> 132 bytes
.../browser/cmsimple/images/icons/doc.gif | Bin 0 -> 140 bytes
.../browser/cmsimple/images/icons/exe.gif | Bin 0 -> 109 bytes
.../browser/cmsimple/images/icons/fla.gif | Bin 0 -> 382 bytes
.../browser/cmsimple/images/icons/gif.gif | Bin 0 -> 125 bytes
.../browser/cmsimple/images/icons/htm.gif | Bin 0 -> 621 bytes
.../browser/cmsimple/images/icons/html.gif | Bin 0 -> 621 bytes
.../browser/cmsimple/images/icons/jpg.gif | Bin 0 -> 125 bytes
.../browser/cmsimple/images/icons/js.gif | Bin 0 -> 139 bytes
.../browser/cmsimple/images/icons/mdb.gif | Bin 0 -> 146 bytes
.../browser/cmsimple/images/icons/mp3.gif | Bin 0 -> 249 bytes
.../browser/cmsimple/images/icons/pdf.gif | Bin 0 -> 230 bytes
.../browser/cmsimple/images/icons/png.gif | Bin 0 -> 125 bytes
.../browser/cmsimple/images/icons/ppt.gif | Bin 0 -> 139 bytes
.../browser/cmsimple/images/icons/rdp.gif | Bin 0 -> 606 bytes
.../browser/cmsimple/images/icons/swf.gif | Bin 0 -> 388 bytes
.../browser/cmsimple/images/icons/swt.gif | Bin 0 -> 388 bytes
.../browser/cmsimple/images/icons/txt.gif | Bin 0 -> 122 bytes
.../browser/cmsimple/images/icons/vsd.gif | Bin 0 -> 136 bytes
.../browser/cmsimple/images/icons/xls.gif | Bin 0 -> 138 bytes
.../browser/cmsimple/images/icons/xml.gif | Bin 0 -> 231 bytes
.../browser/cmsimple/images/icons/zip.gif | Bin 0 -> 235 bytes
.../browser/cmsimple/images/spacer.gif | Bin 0 -> 43 bytes
.../browser/cmsimple/images/user-home2.png | Bin 0 -> 1416 bytes
.../filemanager/browser/cmsimple/js/common.js | 88 +
.../filemanager/browser/cmsimple/js/fckxml.js | 147 +
.../filemanager/connectors/php/basexml.php | 99 +
.../filemanager/connectors/php/commands.php | 306 ++
.../filemanager/connectors/php/config.php | 226 ++
.../filemanager/connectors/php/connector.php | 90 +
.../editor/filemanager/connectors/php/io.php | 303 ++
.../filemanager/connectors/php/phpcompat.php | 17 +
.../filemanager/connectors/php/upload.php | 59 +
.../filemanager/connectors/php/util.php | 220 ++
.../filemanager/connectors/test.html.txt | 210 ++
.../connectors/uploadtest.html.txt | 192 ++
fckeditor/FCKeditor/editor/images/anchor.gif | Bin 0 -> 184 bytes
.../FCKeditor/editor/images/arrow_ltr.gif | Bin 0 -> 49 bytes
.../FCKeditor/editor/images/arrow_rtl.gif | Bin 0 -> 49 bytes
.../editor/images/smiley/msn/angel_smile.gif | Bin 0 -> 445 bytes
.../editor/images/smiley/msn/angry_smile.gif | Bin 0 -> 453 bytes
.../editor/images/smiley/msn/broken_heart.gif | Bin 0 -> 423 bytes
.../editor/images/smiley/msn/cake.gif | Bin 0 -> 453 bytes
.../images/smiley/msn/confused_smile.gif | Bin 0 -> 322 bytes
.../editor/images/smiley/msn/cry_smile.gif | Bin 0 -> 473 bytes
.../editor/images/smiley/msn/devil_smile.gif | Bin 0 -> 444 bytes
.../images/smiley/msn/embaressed_smile.gif | Bin 0 -> 1077 bytes
.../editor/images/smiley/msn/envelope.gif | Bin 0 -> 1030 bytes
.../editor/images/smiley/msn/heart.gif | Bin 0 -> 1012 bytes
.../editor/images/smiley/msn/kiss.gif | Bin 0 -> 978 bytes
.../editor/images/smiley/msn/lightbulb.gif | Bin 0 -> 303 bytes
.../editor/images/smiley/msn/omg_smile.gif | Bin 0 -> 342 bytes
.../images/smiley/msn/regular_smile.gif | Bin 0 -> 1036 bytes
.../editor/images/smiley/msn/sad_smile.gif | Bin 0 -> 1039 bytes
.../editor/images/smiley/msn/shades_smile.gif | Bin 0 -> 1059 bytes
.../editor/images/smiley/msn/teeth_smile.gif | Bin 0 -> 1064 bytes
.../editor/images/smiley/msn/thumbs_down.gif | Bin 0 -> 992 bytes
.../editor/images/smiley/msn/thumbs_up.gif | Bin 0 -> 989 bytes
.../editor/images/smiley/msn/tounge_smile.gif | Bin 0 -> 1055 bytes
.../smiley/msn/whatchutalkingabout_smile.gif | Bin 0 -> 1034 bytes
.../editor/images/smiley/msn/wink_smile.gif | Bin 0 -> 1041 bytes
fckeditor/FCKeditor/editor/images/spacer.gif | Bin 0 -> 43 bytes
fckeditor/FCKeditor/editor/js/fckadobeair.js | 176 +
.../editor/js/fckeditorcode_gecko.js | 109 +
.../FCKeditor/editor/js/fckeditorcode_ie.js | 110 +
fckeditor/FCKeditor/editor/lang/da.js | 539 +++
fckeditor/FCKeditor/editor/lang/de.js | 539 +++
fckeditor/FCKeditor/editor/lang/en.js | 539 +++
fckeditor/FCKeditor/editor/lang/fr.js | 539 +++
fckeditor/FCKeditor/editor/lang/it.js | 539 +++
fckeditor/FCKeditor/editor/lang/nl.js | 539 +++
fckeditor/FCKeditor/editor/lang/sk.js | 539 +++
.../editor/plugins/autogrow/fckplugin.js | 111 +
.../plugins/dragresizetable/fckplugin.js | 529 +++
.../editor/plugins/nbsp/CHANGELOG.txt | 3 +
.../editor/plugins/nbsp/fckplugin.js | 48 +
.../FCKeditor/editor/plugins/nbsp/lang/de.js | 20 +
.../FCKeditor/editor/plugins/nbsp/lang/en.js | 19 +
.../FCKeditor/editor/plugins/nbsp/lang/hu.js | 21 +
.../FCKeditor/editor/plugins/nbsp/lang/pl.js | 19 +
.../FCKeditor/editor/plugins/nbsp/lang/sk.js | 19 +
.../FCKeditor/editor/plugins/nbsp/nbsp.gif | Bin 0 -> 66 bytes
.../editor/plugins/nbsp/readme_de.txt | 28 +
.../editor/plugins/nbsp/readme_en.txt | 27 +
.../editor/plugins/nbsp/readme_pl.txt | 27 +
.../plugins/placeholder/fck_placeholder.html | 105 +
.../editor/plugins/placeholder/fckplugin.js | 187 ++
.../editor/plugins/placeholder/lang/de.js | 27 +
.../editor/plugins/placeholder/lang/en.js | 27 +
.../editor/plugins/placeholder/lang/es.js | 27 +
.../editor/plugins/placeholder/lang/fr.js | 27 +
.../editor/plugins/placeholder/lang/hu.js | 27 +
.../editor/plugins/placeholder/lang/it.js | 27 +
.../editor/plugins/placeholder/lang/pl.js | 27 +
.../editor/plugins/placeholder/lang/sk.js | 27 +
.../plugins/placeholder/placeholder.gif | Bin 0 -> 96 bytes
.../plugins/simplecommands/fckplugin.js | 29 +
.../editor/plugins/sitelink/fck_sitelink.gif | Bin 0 -> 206 bytes
.../editor/plugins/sitelink/fckplugin.js | 17 +
.../editor/plugins/sitelink/lang/de.js | 2 +
.../editor/plugins/sitelink/lang/en.js | 2 +
.../editor/plugins/sitelink/lang/hu.js | 2 +
.../editor/plugins/sitelink/lang/sk.js | 2 +
.../editor/plugins/sitelink/sitelink.js | 98 +
.../editor/plugins/sitelink/sitelink.php | 226 ++
.../editor/skins/_fckviewstrips.html | 121 +
.../editor/skins/default/fck_dialog.css | 402 +++
.../editor/skins/default/fck_dialog_ie6.js | 110 +
.../editor/skins/default/fck_editor.css | 465 +++
.../editor/skins/default/fck_strip.gif | Bin 0 -> 5175 bytes
.../skins/default/images/dialog.sides.gif | Bin 0 -> 48 bytes
.../skins/default/images/dialog.sides.png | Bin 0 -> 178 bytes
.../skins/default/images/dialog.sides.rtl.png | Bin 0 -> 181 bytes
.../editor/skins/default/images/sprites.gif | Bin 0 -> 959 bytes
.../editor/skins/default/images/sprites.png | Bin 0 -> 3250 bytes
.../default/images/toolbar.arrowright.gif | Bin 0 -> 53 bytes
.../default/images/toolbar.buttonarrow.gif | Bin 0 -> 46 bytes
.../skins/default/images/toolbar.collapse.gif | Bin 0 -> 152 bytes
.../skins/default/images/toolbar.end.gif | Bin 0 -> 43 bytes
.../skins/default/images/toolbar.expand.gif | Bin 0 -> 152 bytes
.../default/images/toolbar.separator.gif | Bin 0 -> 58 bytes
.../skins/default/images/toolbar.start.gif | Bin 0 -> 105 bytes
fckeditor/FCKeditor/fckconfig.js | 325 ++
fckeditor/FCKeditor/fckeditor.js | 330 ++
fckeditor/FCKeditor/fckeditor.php | 32 +
fckeditor/FCKeditor/fckeditor_php4.php | 263 ++
fckeditor/FCKeditor/fckeditor_php5.php | 258 ++
fckeditor/FCKeditor/license.txt | 1246 +++++++
fckeditor/fckconfig_calendar.js | 207 ++
fckeditor/fckeditor_for_calendar.php | 126 +
fckeditor/fckstyles_calendar.xml | 88 +
fckeditor/fcktemplate_calendar.xml | 42 +
help/angle.gif | Bin 0 -> 150 bytes
help/fckeditor_image_insert.jpg | Bin 0 -> 39250 bytes
help/help_en.htm | 708 ++++
help/multicalendar_3-3.jpg | Bin 0 -> 19283 bytes
help/multicalendar_3.jpg | Bin 0 -> 16234 bytes
help/tinymce_image_class.jpg | Bin 0 -> 57808 bytes
help/tinymce_image_style.jpg | Bin 0 -> 42644 bytes
help/year_-4.jpg | Bin 0 -> 62471 bytes
images/1/external_link.gif | Bin 0 -> 134 bytes
images/1/info.gif | Bin 0 -> 989 bytes
images/1/internal_link.gif | Bin 0 -> 135 bytes
images/1past/external_link.gif | Bin 0 -> 134 bytes
images/1past/info.gif | Bin 0 -> 317 bytes
images/1past/internal_link.gif | Bin 0 -> 135 bytes
images/2/external_link.gif | Bin 0 -> 131 bytes
images/2/info.gif | Bin 0 -> 312 bytes
images/2/internal_link.gif | Bin 0 -> 132 bytes
images/2past/external_link.gif | Bin 0 -> 130 bytes
images/2past/info.gif | Bin 0 -> 984 bytes
images/2past/internal_link.gif | Bin 0 -> 132 bytes
images/3/external_link.gif | Bin 0 -> 148 bytes
images/3/info.gif | Bin 0 -> 301 bytes
images/3/internal_link.gif | Bin 0 -> 174 bytes
images/3past/external_link.gif | Bin 0 -> 148 bytes
images/3past/info.gif | Bin 0 -> 226 bytes
images/3past/internal_link.gif | Bin 0 -> 163 bytes
images/4/external_link.gif | Bin 0 -> 250 bytes
images/4/info.gif | Bin 0 -> 527 bytes
images/4/internal_link.gif | Bin 0 -> 899 bytes
images/4past/external_link.gif | Bin 0 -> 240 bytes
images/4past/info.gif | Bin 0 -> 165 bytes
images/4past/internal_link.gif | Bin 0 -> 142 bytes
images/5/external_link.gif | Bin 0 -> 139 bytes
images/5/info.gif | Bin 0 -> 985 bytes
images/5/internal_link.gif | Bin 0 -> 263 bytes
images/5past/external_link.gif | Bin 0 -> 887 bytes
images/5past/info.gif | Bin 0 -> 984 bytes
images/5past/internal_link.gif | Bin 0 -> 237 bytes
images/6/external_link.png | Bin 0 -> 961 bytes
images/6/info.png | Bin 0 -> 3423 bytes
images/6/internal_link.png | Bin 0 -> 600 bytes
images/6past/external_link.png | Bin 0 -> 906 bytes
images/6past/info.png | Bin 0 -> 3308 bytes
images/6past/internal_link.png | Bin 0 -> 499 bytes
images/7/external_link.gif | Bin 0 -> 146 bytes
images/7/info.png | Bin 0 -> 3423 bytes
images/7/internal_link.gif | Bin 0 -> 133 bytes
images/7past/external_link.gif | Bin 0 -> 146 bytes
images/7past/info.png | Bin 0 -> 3308 bytes
images/7past/internal_link.gif | Bin 0 -> 134 bytes
images/Juri_Gagarin_thumb.jpg | Bin 0 -> 4104 bytes
images/add.png | Bin 0 -> 769 bytes
images/copy.png | Bin 0 -> 704 bytes
images/delete.png | Bin 0 -> 715 bytes
images/help_icon.png | Bin 0 -> 899 bytes
images/minus_icon.gif | Bin 0 -> 97 bytes
images/ok.png | Bin 0 -> 740 bytes
images/pdf.gif | Bin 0 -> 650 bytes
images/pdf_past.gif | Bin 0 -> 1023 bytes
images/plus_icon.gif | Bin 0 -> 104 bytes
images/template_icon.gif | Bin 0 -> 521 bytes
images/ul-list-button.gif | Bin 0 -> 82 bytes
images/up.gif | Bin 0 -> 97 bytes
images/word.gif | Bin 0 -> 184 bytes
images/word_past.gif | Bin 0 -> 925 bytes
includes/calendar.php | 1081 ++++++
includes/calendarconfig.php | 872 +++++
includes/editevents.php | 380 +++
includes/eventform.php | 1041 ++++++
includes/eventlist.php | 1282 ++++++++
includes/eventlistconfig.php | 549 ++++
includes/holidayconfig.php | 106 +
includes/jquery.marquee.js | 168 +
includes/loadeventfile.php | 183 ++
includes/marqueeconfig.php | 225 ++
includes/nextevent.php | 351 ++
includes/presets.php | 382 +++
includes/readcss.php | 235 ++
includes/saveeventfile.php | 141 +
includes/simplemarkup.php | 156 +
index.php | 423 +++
jscolor/arrow.gif | Bin 0 -> 66 bytes
jscolor/calendarcolor.js | 926 ++++++
jscolor/cross.gif | Bin 0 -> 83 bytes
jscolor/hs.png | Bin 0 -> 2684 bytes
jscolor/hv.png | Bin 0 -> 2865 bytes
jscolor/jscolor.js | 926 ++++++
languages/.php | 0
languages/2site.php | 322 ++
languages/cs.php | 281 ++
languages/da.php | 63 +
languages/de.php | 285 ++
languages/default.php | 328 ++
languages/en.php | 11 +
languages/fr.php | 41 +
languages/it.php | 37 +
languages/nl.php | 39 +
languages/sk.php | 37 +
languages/yogaschool.php | 322 ++
licence.txt | 20 +
readme.txt | 92 +
templates/blue_nebula.calendar.php | 79 +
templates/boxes.tpl | 93 +
templates/brown_nebula.calendar.php | 79 +
templates/clean.calendar.php | 66 +
templates/colorful.eventlist.php | 43 +
templates/flower.calendar.php | 83 +
templates/green.eventlist.php | 42 +
templates/minimum.eventlist.php | 46 +
templates/oldnema.tpl | 89 +
templates/oldstylecolors.eventlist.php | 42 +
templates/simple.tpl | 47 +
version.nfo | 1 +
444 files changed, 43418 insertions(+)
create mode 100644 admin.php
create mode 100644 backgroundimages/blue_lozange.gif
create mode 100644 backgroundimages/blue_nebula.jpg
create mode 100644 backgroundimages/blue_x.gif
create mode 100644 backgroundimages/flower.jpg
create mode 100644 backgroundimages/green_lozange.gif
create mode 100644 backgroundimages/nebula.jpg
create mode 100644 backgroundimages/red_lozange.gif
create mode 100644 backgroundimages/red_x.gif
create mode 100644 backgroundimages/roses.jpg
create mode 100644 backgroundimages/sky.jpg
create mode 100644 backgroundimages/takelage.jpg
create mode 100644 backgroundimages/yellow_lozange.gif
create mode 100644 changelog.txt
create mode 100644 config/config.php
create mode 100644 config/config2.php
create mode 100644 config/metaconfig.php
create mode 100644 content/.gitignore
create mode 100644 css/crossout.gif
create mode 100644 css/editor.css
create mode 100644 css/overwrite.css
create mode 100644 css/redstripes.gif
create mode 100644 css/stripes.gif
create mode 100644 css/stylesheet.css
create mode 100644 dp/backstripes.gif
create mode 100644 dp/bg_header.jpg
create mode 100644 dp/bullet1.gif
create mode 100644 dp/bullet2.gif
create mode 100644 dp/cal-grey.gif
create mode 100644 dp/cal.gif
create mode 100644 dp/datepicker.css
create mode 100644 dp/datepicker.js
create mode 100644 dp/datepicker.packed.js
create mode 100644 dp/gradient-e5e5e5-ffffff.gif
create mode 100644 dp/lang/ar.js
create mode 100644 dp/lang/cs.js
create mode 100644 dp/lang/da.js
create mode 100644 dp/lang/de.js
create mode 100644 dp/lang/en.js
create mode 100644 dp/lang/eo.js
create mode 100644 dp/lang/es.js
create mode 100644 dp/lang/et.js
create mode 100644 dp/lang/fi.js
create mode 100644 dp/lang/fr.js
create mode 100644 dp/lang/he.js
create mode 100644 dp/lang/hu.js
create mode 100644 dp/lang/id.js
create mode 100644 dp/lang/it.js
create mode 100644 dp/lang/kr.js
create mode 100644 dp/lang/lt.js
create mode 100644 dp/lang/lv.js
create mode 100644 dp/lang/nl.js
create mode 100644 dp/lang/no.js
create mode 100644 dp/lang/pl.js
create mode 100644 dp/lang/pt-br.js
create mode 100644 dp/lang/pt.js
create mode 100644 dp/lang/ru.js
create mode 100644 dp/lang/se.js
create mode 100644 dp/lang/si.js
create mode 100644 dp/lang/sk.js
create mode 100644 dp/lang/tr.js
create mode 100644 editorconfigs/ckeditorconfig_for_calendar.php
create mode 100644 editorconfigs/tinymceconfig_for_calendar.php
create mode 100644 fckeditor/FCKeditor/FCKeditor_for_Calendar.txt
create mode 100644 fckeditor/FCKeditor/editor/css/behaviors/disablehandles.htc
create mode 100644 fckeditor/FCKeditor/editor/css/behaviors/showtableborders.htc
create mode 100644 fckeditor/FCKeditor/editor/css/fck_editorarea.css
create mode 100644 fckeditor/FCKeditor/editor/css/fck_internal.css
create mode 100644 fckeditor/FCKeditor/editor/css/fck_showtableborders_gecko.css
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_address.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_blockquote.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_div.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_h1.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_h2.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_h3.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_h4.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_h5.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_h6.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_p.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/block_pre.png
create mode 100644 fckeditor/FCKeditor/editor/css/images/fck_anchor.gif
create mode 100644 fckeditor/FCKeditor/editor/css/images/fck_flashlogo.gif
create mode 100644 fckeditor/FCKeditor/editor/css/images/fck_hiddenfield.gif
create mode 100644 fckeditor/FCKeditor/editor/css/images/fck_pagebreak.gif
create mode 100644 fckeditor/FCKeditor/editor/css/images/fck_plugin.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/common/fck_dialog_common.css
create mode 100644 fckeditor/FCKeditor/editor/dialog/common/fck_dialog_common.js
create mode 100644 fckeditor/FCKeditor/editor/dialog/common/images/locked.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/common/images/reset.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/common/images/unlocked.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_about.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_anchor.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_button.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_checkbox.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_colorselector.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_div.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_docprops.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_form.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_hiddenfield.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_image.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_image/fck_image.js
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_image/fck_image_preview.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_link.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_link/fck_link.js
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_listprop.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_paste.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_radiobutton.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_replace.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_scayt.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_scayt/scayt_dialog.css
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_select.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_select/fck_select.js
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_smiley.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_source.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_specialchar.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_spellerpages.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_table.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_tablecell.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_template.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_template/images/template1.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_template/images/template2.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_template/images/template3.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_template/images/template4.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_template/images/template5.gif
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_textarea.html
create mode 100644 fckeditor/FCKeditor/editor/dialog/fck_textfield.html
create mode 100644 fckeditor/FCKeditor/editor/dtd/fck_dtd_test.html
create mode 100644 fckeditor/FCKeditor/editor/dtd/fck_xhtml10strict.js
create mode 100644 fckeditor/FCKeditor/editor/dtd/fck_xhtml10transitional.js
create mode 100644 fckeditor/FCKeditor/editor/fckdebug.html
create mode 100644 fckeditor/FCKeditor/editor/fckdialog.html
create mode 100644 fckeditor/FCKeditor/editor/fckeditor.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/browser.css
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/browser.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/frmactualfolder.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/frmcreatefolder.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/frmfolders.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/frmresourceslist.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/frmresourcetype.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/frmupload.html
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/ButtonArrow.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/Downloads.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/File.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/Flash.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/Folder.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/Folder32.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/FolderOpened.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/FolderOpened32.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/FolderUp.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/Image.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/Media.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/applications-graphics2.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/edit-delete.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/edit-delete1.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/edit-delete2.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder-new1.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder-new2.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder-open.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder-open1.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder-open2.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/folder1.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/go-home2.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/go-jump.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/go-previous.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/go-top1.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/go-up1.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/ai.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/avi.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/bmp.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/cs.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/default.icon.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/dll.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/doc.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/exe.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/fla.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/gif.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/htm.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/html.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/jpg.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/js.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/mdb.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/mp3.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/pdf.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/png.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/ppt.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/rdp.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/swf.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/swt.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/txt.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/vsd.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/xls.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/xml.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/32/zip.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/ai.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/avi.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/bmp.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/cs.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/default.icon.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/dll.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/doc.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/exe.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/fla.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/gif.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/htm.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/html.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/jpg.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/js.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/mdb.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/mp3.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/pdf.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/png.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/ppt.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/rdp.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/swf.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/swt.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/txt.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/vsd.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/xls.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/xml.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/icons/zip.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/spacer.gif
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/images/user-home2.png
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/js/common.js
create mode 100644 fckeditor/FCKeditor/editor/filemanager/browser/cmsimple/js/fckxml.js
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/basexml.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/commands.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/config.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/connector.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/io.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/phpcompat.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/upload.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/php/util.php
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/test.html.txt
create mode 100644 fckeditor/FCKeditor/editor/filemanager/connectors/uploadtest.html.txt
create mode 100644 fckeditor/FCKeditor/editor/images/anchor.gif
create mode 100644 fckeditor/FCKeditor/editor/images/arrow_ltr.gif
create mode 100644 fckeditor/FCKeditor/editor/images/arrow_rtl.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/angel_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/angry_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/broken_heart.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/cake.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/confused_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/cry_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/devil_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/embaressed_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/envelope.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/heart.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/kiss.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/lightbulb.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/omg_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/regular_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/sad_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/shades_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/teeth_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/thumbs_down.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/thumbs_up.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/tounge_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/smiley/msn/wink_smile.gif
create mode 100644 fckeditor/FCKeditor/editor/images/spacer.gif
create mode 100644 fckeditor/FCKeditor/editor/js/fckadobeair.js
create mode 100644 fckeditor/FCKeditor/editor/js/fckeditorcode_gecko.js
create mode 100644 fckeditor/FCKeditor/editor/js/fckeditorcode_ie.js
create mode 100644 fckeditor/FCKeditor/editor/lang/da.js
create mode 100644 fckeditor/FCKeditor/editor/lang/de.js
create mode 100644 fckeditor/FCKeditor/editor/lang/en.js
create mode 100644 fckeditor/FCKeditor/editor/lang/fr.js
create mode 100644 fckeditor/FCKeditor/editor/lang/it.js
create mode 100644 fckeditor/FCKeditor/editor/lang/nl.js
create mode 100644 fckeditor/FCKeditor/editor/lang/sk.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/autogrow/fckplugin.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/dragresizetable/fckplugin.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/CHANGELOG.txt
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/fckplugin.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/lang/de.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/lang/en.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/lang/hu.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/lang/pl.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/lang/sk.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/nbsp.gif
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/readme_de.txt
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/readme_en.txt
create mode 100644 fckeditor/FCKeditor/editor/plugins/nbsp/readme_pl.txt
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/fck_placeholder.html
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/fckplugin.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/de.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/en.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/es.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/fr.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/hu.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/it.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/pl.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/lang/sk.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/placeholder/placeholder.gif
create mode 100644 fckeditor/FCKeditor/editor/plugins/simplecommands/fckplugin.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/fck_sitelink.gif
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/fckplugin.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/lang/de.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/lang/en.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/lang/hu.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/lang/sk.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/sitelink.js
create mode 100644 fckeditor/FCKeditor/editor/plugins/sitelink/sitelink.php
create mode 100644 fckeditor/FCKeditor/editor/skins/_fckviewstrips.html
create mode 100644 fckeditor/FCKeditor/editor/skins/default/fck_dialog.css
create mode 100644 fckeditor/FCKeditor/editor/skins/default/fck_dialog_ie6.js
create mode 100644 fckeditor/FCKeditor/editor/skins/default/fck_editor.css
create mode 100644 fckeditor/FCKeditor/editor/skins/default/fck_strip.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/dialog.sides.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/dialog.sides.png
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/dialog.sides.rtl.png
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/sprites.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/sprites.png
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.arrowright.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.buttonarrow.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.collapse.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.end.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.expand.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.separator.gif
create mode 100644 fckeditor/FCKeditor/editor/skins/default/images/toolbar.start.gif
create mode 100644 fckeditor/FCKeditor/fckconfig.js
create mode 100644 fckeditor/FCKeditor/fckeditor.js
create mode 100644 fckeditor/FCKeditor/fckeditor.php
create mode 100644 fckeditor/FCKeditor/fckeditor_php4.php
create mode 100644 fckeditor/FCKeditor/fckeditor_php5.php
create mode 100644 fckeditor/FCKeditor/license.txt
create mode 100644 fckeditor/fckconfig_calendar.js
create mode 100644 fckeditor/fckeditor_for_calendar.php
create mode 100644 fckeditor/fckstyles_calendar.xml
create mode 100644 fckeditor/fcktemplate_calendar.xml
create mode 100644 help/angle.gif
create mode 100644 help/fckeditor_image_insert.jpg
create mode 100644 help/help_en.htm
create mode 100644 help/multicalendar_3-3.jpg
create mode 100644 help/multicalendar_3.jpg
create mode 100644 help/tinymce_image_class.jpg
create mode 100644 help/tinymce_image_style.jpg
create mode 100644 help/year_-4.jpg
create mode 100644 images/1/external_link.gif
create mode 100644 images/1/info.gif
create mode 100644 images/1/internal_link.gif
create mode 100644 images/1past/external_link.gif
create mode 100644 images/1past/info.gif
create mode 100644 images/1past/internal_link.gif
create mode 100644 images/2/external_link.gif
create mode 100644 images/2/info.gif
create mode 100644 images/2/internal_link.gif
create mode 100644 images/2past/external_link.gif
create mode 100644 images/2past/info.gif
create mode 100644 images/2past/internal_link.gif
create mode 100644 images/3/external_link.gif
create mode 100644 images/3/info.gif
create mode 100644 images/3/internal_link.gif
create mode 100644 images/3past/external_link.gif
create mode 100644 images/3past/info.gif
create mode 100644 images/3past/internal_link.gif
create mode 100644 images/4/external_link.gif
create mode 100644 images/4/info.gif
create mode 100644 images/4/internal_link.gif
create mode 100644 images/4past/external_link.gif
create mode 100644 images/4past/info.gif
create mode 100644 images/4past/internal_link.gif
create mode 100644 images/5/external_link.gif
create mode 100644 images/5/info.gif
create mode 100644 images/5/internal_link.gif
create mode 100644 images/5past/external_link.gif
create mode 100644 images/5past/info.gif
create mode 100644 images/5past/internal_link.gif
create mode 100644 images/6/external_link.png
create mode 100644 images/6/info.png
create mode 100644 images/6/internal_link.png
create mode 100644 images/6past/external_link.png
create mode 100644 images/6past/info.png
create mode 100644 images/6past/internal_link.png
create mode 100644 images/7/external_link.gif
create mode 100644 images/7/info.png
create mode 100644 images/7/internal_link.gif
create mode 100644 images/7past/external_link.gif
create mode 100644 images/7past/info.png
create mode 100644 images/7past/internal_link.gif
create mode 100644 images/Juri_Gagarin_thumb.jpg
create mode 100644 images/add.png
create mode 100644 images/copy.png
create mode 100644 images/delete.png
create mode 100644 images/help_icon.png
create mode 100644 images/minus_icon.gif
create mode 100644 images/ok.png
create mode 100644 images/pdf.gif
create mode 100644 images/pdf_past.gif
create mode 100644 images/plus_icon.gif
create mode 100644 images/template_icon.gif
create mode 100644 images/ul-list-button.gif
create mode 100644 images/up.gif
create mode 100644 images/word.gif
create mode 100644 images/word_past.gif
create mode 100644 includes/calendar.php
create mode 100644 includes/calendarconfig.php
create mode 100644 includes/editevents.php
create mode 100644 includes/eventform.php
create mode 100644 includes/eventlist.php
create mode 100644 includes/eventlistconfig.php
create mode 100644 includes/holidayconfig.php
create mode 100644 includes/jquery.marquee.js
create mode 100644 includes/loadeventfile.php
create mode 100644 includes/marqueeconfig.php
create mode 100644 includes/nextevent.php
create mode 100644 includes/presets.php
create mode 100644 includes/readcss.php
create mode 100644 includes/saveeventfile.php
create mode 100644 includes/simplemarkup.php
create mode 100644 index.php
create mode 100644 jscolor/arrow.gif
create mode 100644 jscolor/calendarcolor.js
create mode 100644 jscolor/cross.gif
create mode 100644 jscolor/hs.png
create mode 100644 jscolor/hv.png
create mode 100644 jscolor/jscolor.js
create mode 100644 languages/.php
create mode 100644 languages/2site.php
create mode 100644 languages/cs.php
create mode 100644 languages/da.php
create mode 100644 languages/de.php
create mode 100644 languages/default.php
create mode 100644 languages/en.php
create mode 100644 languages/fr.php
create mode 100644 languages/it.php
create mode 100644 languages/nl.php
create mode 100644 languages/sk.php
create mode 100644 languages/yogaschool.php
create mode 100644 licence.txt
create mode 100644 readme.txt
create mode 100644 templates/blue_nebula.calendar.php
create mode 100644 templates/boxes.tpl
create mode 100644 templates/brown_nebula.calendar.php
create mode 100644 templates/clean.calendar.php
create mode 100644 templates/colorful.eventlist.php
create mode 100644 templates/flower.calendar.php
create mode 100644 templates/green.eventlist.php
create mode 100644 templates/minimum.eventlist.php
create mode 100644 templates/oldnema.tpl
create mode 100644 templates/oldstylecolors.eventlist.php
create mode 100644 templates/simple.tpl
create mode 100644 version.nfo
diff --git a/admin.php b/admin.php
new file mode 100644
index 0000000..31163fb
--- /dev/null
+++ b/admin.php
@@ -0,0 +1,1353 @@
+'
+ . ' ' .$plugin_tx['calendar']['menu_main'].' '
+ . ' ' .$plugin_tx['calendar']['menu_test_event_list'].' '
+ . ' ' .$plugin_tx['calendar']['menu_show_calendar'].' ';
+
+ if ($plugin_cf['calendar']['second-calendar_filename']) {
+ $o .= ' 2. ' .$plugin_tx['calendar']['menu_main'].' '
+ . ' 2. ' .$plugin_tx['calendar']['menu_test_event_list'].' '
+ . ' 2. ' .$plugin_tx['calendar']['menu_show_calendar'].' ';
+ }
+
+ $o .= ' ' .$plugin_tx['calendar']['menu_marquee'].' '
+ . ' ' .$plugin_tx['calendar']['menu_holidays'].' '
+ . ' ' .$plugin_tx['calendar']['menu_backup'].' '
+ . ' ' .$plugin_tx['calendar']['menu_config'].' '
+ . ' ' .$plugin_tx['calendar']['menu_css'].' '
+ . ' ' .$plugin_tx['calendar']['menu_language'].' '
+ . ' ' .$plugin_tx['calendar']['menu_help'].' '
+ . ' ' .$plugin_tx['calendar']['menu_credits'].'
' . "\n";
+
+
+ // enabling navigation to stylesheet, config, language
+ if($admin){
+ $o .= plugin_admin_common($action,$admin,$plugin);
+ $hjs .= ''."\n";
+
+ } elseif(!$admxx) $admxx='plugin_main';
+
+
+ // ================
+ // editing events
+ // ================
+ if($admxx=='plugin_main'){
+
+ $o .= 'Calendar_XH '.constant('CALENDAR_VERSION').'
';
+ $o .= ''. $plugin_tx['calendar']['menu_main']
+ . ' ';
+
+ $o .= $plugin_tx['calendar']['config_presets'];
+ if(isset($_POST['preset']) || isset($_POST['backup'])) {
+ $o .= tag('input type="button" value="–" class="calendar_edit_on" id="presets_button" style="margin-left:0;"
+ onclick=\'openedit("presets_button","presets","–","+","block");\'');
+ $displaypresets = '';
+ } else {
+ $o .= tag('input type="button" value="+" class="calendar_edit_off" id="presets_button" style="margin-left:0;"
+ onclick=\'openedit("presets_button","presets","–","+","block");\'');
+ $displaypresets = 'style="display:none;"';
+ }
+
+ $o .= ' '. $plugin_tx['calendar']['menu_eventlistconfig'];
+ if(isset($_POST['config'])) {
+ $o .= tag('input type="button" value="–" class="calendar_edit_on" id="eventlistconfig_button" style="margin-left:0;"
+ onclick=\'openedit("eventlistconfig_button","eventlistconfig","–","+","block");\'');
+ $displayeventlistconfig = '';
+ } else {
+ $o .= tag('input type="button" value="+" class="calendar_edit_off" id="eventlistconfig_button" style="margin-left:0;"
+ onclick=\'openedit("eventlistconfig_button","eventlistconfig","–","+","block");\'');
+ $displayeventlistconfig = 'style="display:none;"';
+ }
+
+ $o .= ' ' . "\n";
+ $o .= ""
+ . presets('eventlist')
+ . "
\n";
+ $o .= ""
+ . eventlistConfig()
+ . "
\n";
+ $o .= editevents();
+ }
+ if($admxx=='editevents2'){
+ $o .= ''. $plugin_tx['calendar']['menu_main']
+ . ' 2 '.$plugin_cf['calendar']['second-calendar_filename'] . ' ';
+ $o .= editevents($plugin_cf['calendar']['second-calendar_filename'],1,1);
+ }
+
+
+ //***********************
+ // show the event list
+ //***********************
+ if ($admxx=='eventlist') {
+ $o .= eventlistconfigmenu();
+ $o .= events('','','','','','',$calendar_cf['show_eventlist_style']);
+ }
+ if ($admxx=='eventlist2') {
+ $o .= eventlistconfigmenu();
+ $o .= events('','','','',$plugin_cf['calendar']['second-calendar_filename'],'',$calendar_cf['show_eventlist_style']);
+ }
+
+
+ //*********************
+ // show the marquee
+ //*********************
+ if ($admxx=='marquee') {
+ $o .= ''.$plugin_tx['calendar']['menu_marquee'].' ';
+ $o .= marqueeConfig();
+ $o .= nextevent();
+ $o .= tag('br') . ''.$plugin_tx['calendar']['marquee_contents'].':
';
+ $o .= nextevent('','','',1);
+ }
+
+
+ //*********************
+ // show holiday wizard
+ //*********************
+ if ($admxx=='holidays') {
+ $o .= ''.$plugin_tx['calendar']['menu_holidays'].' ';
+ $o .= holidayConfig();
+ }
+
+ //**************************************************
+ // options and display of month and year calendar
+ //**************************************************
+ if ($admxx=='calendar') {
+ $o .= calendarconfigmenu();
+ if($calendar_cf['show_year_in_backend']) {
+ $o .= bigcalendar();
+ } else {
+ $o .= year();
+ }
+ }
+ if ($admxx=='calendar2') {
+ $o .= calendarconfigmenu();
+ if($calendar_cf['show_year_in_backend']) {
+ $o .= bigcalendar2();
+ } else {
+ $o .= year2();
+ }
+ }
+
+
+ //***************************************
+ // credits page with version check
+ //***************************************
+ if ($admxx=='credits') {
+ $o .= 'Calendar_XH '.constant('CALENDAR_VERSION')." \n";
+
+ $o .= "\n"
+ . "© 2011-2013 by svasti , based on"
+ . " versions 1.2.1–1.2.9 and 1.3 beta 1–9 by svasti\n"
+ . " version 1.2 © 2011 by Holger \n"
+ . "version 1.1 (major update) by svasti \n"
+ . "version 1.0 by Tory \n"
+ . "mod 02/2008 by Bob (cmsimple.fr) \n"
+ . "versions 0.6–0.9 by Tory \n"
+ . "versions 0.1–0.5 by Michael Svarrer , who started the plugin in 2005. \n"
+ . 'Acknowledgements: ' . tag('br')
+ . 'This version uses JSColor by Jan Odvárko (CZ),'. tag('br')
+ . 'datePicker by Brian McAllister (IR/FR),'. tag('br')
+ . 'and was written using the PSpad -Editor of Jan Fiala (CZ).
'
+ . 'A big thank you to cmb (D) for valuable coding hints,' . tag('br')
+ . 'and to oldnema (CZ) for repeated testing during development of the plugin.'
+ . '
'
+ . 'For bug reports and suggestions please use the CMSimple Forum
'
+ . "\n";
+ }
+
+
+ //******************************
+ // backup and file managing
+ //******************************
+
+ // here the user can look into all event files, merge and delete files, and save files under a new name
+ //=====================================================================================================
+ if (substr($admxx,0,6)=='backup') {
+
+ // 3 choices; e = edit view, s = source code view, t = templates/presets
+ // everything is there, but is rendered invisible by java script
+ $view = substr($admxx,6,1);
+ if($action=="delete") $view='e';
+ if($action=="delete1") $view='s';
+ if($action=="delete2") $view='t';
+
+ $returnview = isset($_POST['returnview'])? $_POST['returnview'] : '';
+ $view = $returnview? $returnview : $view;
+
+ $o .= 'Calendar Backup '
+ . $plugin_tx['calendar']['notice_backup_setting'] .': '
+ . $plugin_cf['calendar']['backups']
+ . " \n";
+
+ // 3 buttons for selection: Open in edit view/ in source code view/ open template-files
+ $o .= "\n";
+ $o .= " ";
+
+ $o .= " ";
+
+ $o .= " ";
+
+ $o .= tag('br') . $plugin_tx['calendar']['backup-admin_saving_hint'] . "\n
\n";
+
+ // this listing disappears after actions. The actions call listFiles again to get an updated file list
+
+ if(!isset($_POST['action']) && !$newfilename) $o .= listFiles();
+
+ // forwarding the file for opening
+ //================================
+ $file_to_open = substr($admxx,7);
+ if($file_to_open) {
+
+ // 1st case: edit view chosen
+ if ($view == "e") {
+ if(!$newfilename)$o .= closeFileViewButton();
+ $o .= editevents($file_to_open,false);
+ }
+
+ // 2nd case: source view chosen
+ if ($view == "s") {
+ if(!isset($_POST['action'])) $o .= closeFileViewButton('s');
+ $o .= sourceView($file_to_open);
+ }
+ // 3nd case: templates chosen
+ if ($view == "t") {
+ if(!isset($_POST['action'])) $o .= closeFileViewButton('t');
+ $o .= sourceView($file_to_open,1);
+ }
+
+ } else {
+ // nothing chosen: show 2 buttons for merging and deleting files
+ $o .= deleteAndCombine();
+ }
+
+ if($view=='s') $o .= '';
+ if($view=='t') $o .= '';
+ }
+}
+//==================================
+//
+// F U N C T I O N S
+//
+//==================================
+
+
+//*******************************************
+// configuration functions
+//*******************************************
+function presets($filetype)
+{
+ global $pth; include_once ($pth['folder']['plugins'].'calendar/includes/presets.php');
+ return $o;
+}
+function eventlistConfig()
+{
+ global $pth; include_once ($pth['folder']['plugins'].'calendar/includes/eventlistconfig.php');
+ return $o;
+}
+function calendarConfig()
+{
+ global $pth; include_once ($pth['folder']['plugins'].'calendar/includes/calendarconfig.php');
+ return $o;
+}
+function marqueeConfig()
+{
+ global $pth; include_once ($pth['folder']['plugins'].'calendar/includes/marqueeconfig.php');
+ return $o;
+}
+function holidayConfig()
+{
+ global $pth; include_once ($pth['folder']['plugins'].'calendar/includes/holidayconfig.php');
+ return $o;
+}
+
+
+//*******************************************
+// function to change values in files
+//*******************************************
+function changevalue($valuearray,$file,$type=0)
+{
+ global $plugin_cf;
+
+ foreach ($valuearray as $trigger=>$value) {
+ if($type==1) {
+ //config files, also language files
+ $pattern = "!(".$trigger."']=\")(.*)\"!";
+ $replacement ='${1}'.$value.'"';
+ }
+
+ if($type==2) {
+ //language files with check if entry is missing and generation of missing entries
+ $pattern = "!(".$trigger."']=\")(.*)\"!";
+ $replacement ='${1}'.$value.'"';
+
+ if (!preg_match($pattern,$file)) {
+ $file = str_replace('?>',"\t".'$plugin_tx[\'calendar\'][\''.$trigger.'\']="";'."\n?>",$file);
+ }
+ }
+
+ if(!$type) {
+ //css files
+ $special = ''; //for special cases
+ if(strpos($trigger,',')) {
+ list($trigger,$special) = explode(',',$trigger);
+ }
+
+ if($special=='sU') {
+ $pattern = "!(\/\*".$trigger."\*\/)(.*)\}!sU";
+ $replacement ='${1}'.$value.'}';
+
+ } else $pattern = "!(\/\*".$trigger."\*\/)(.*);!";
+
+ if($special=='!im') {
+ $replacement ='${1}'.$value.' !important;';
+
+ } elseif ($special=='url!' && $value) {
+ $replacement ='${1} url(' . $plugin_cf['calendar']['filepath_calendar_background_images'] . $value .') !important;';
+
+ } elseif ($special=='url' && $value) {
+ $replacement ='${1} url(' . $plugin_cf['calendar']['filepath_calendar_background_images'] . $value .');';
+
+ } elseif ($special!='sU') $replacement ='${1}'.$value.';';
+ }
+
+ $file = preg_replace($pattern,$replacement,$file);
+ }
+
+ return $file;
+}
+
+
+//==============================================
+// little helper function of eventlist and
+// calendar configuration,
+// shows options menu of available templates
+//==============================================
+function templateSelect($cf_value,$name_postvar)
+{
+ global $pth,$plugin_tx;
+ $o = '';
+
+ // basic code taken from Martin Dampken's page_params
+ // and modified by svasti
+ $handle = opendir($pth['folder']['templates']);
+ $templates = array();
+ while(false !== ($file = readdir($handle))) {
+ if(is_dir($pth['folder']['templates'].$file) && strpos($file, '.') !== 0) {
+ $templates[] = $file;
+ }
+ }
+ natcasesort($templates);
+ $templates_select = '';
+ foreach($templates as $file){
+ $selected = '';
+ if($cf_value && $file == $cf_value) {$selected = 'selected';}
+ $templates_select .= "\n\t".''.$file.' ';
+ }
+ $o .= ""
+ . "\n" . '' . $plugin_tx['calendar']['config_use_default_template'] . ' '
+ . "\n" . $templates_select
+ . "\n ";
+
+ return $o;
+}
+
+//==============================================
+// config menu on top of calendar
+//==============================================
+function calendarconfigmenu()
+{
+ global $pth,$plugin_tx,$plugin,$calendar_cf;
+ $o = '';
+
+ //settings for hiding or showing of configuration possibilities
+ if(isset($_POST['hideconfig'])) {
+ $configfile = file_get_contents($pth['folder']['plugins'] . $plugin . '/config/config2.php');
+ if(isset($_POST['showbigcalendar'])) $configfile = preg_replace("!show_bigcalendar_config.*\"(.*)\"!","show_bigcalendar_config']=\"1\"",$configfile);
+ if(isset($_POST['hidebigcalendar'])) $configfile = preg_replace("!show_bigcalendar_config.*\"(.*)\"!","show_bigcalendar_config']=\"\"",$configfile);
+ if(isset($_POST['showsmallcalendar'])) $configfile = preg_replace("!show_smallcalendar_config.*\"(.*)\"!","show_smallcalendar_config']=\"1\"",$configfile);
+ if(isset($_POST['hidesmallcalendar'])) $configfile = preg_replace("!show_smallcalendar_config.*\"(.*)\"!","show_smallcalendar_config']=\"\"",$configfile);
+ if(isset($_POST['showpopupconfig'])) $configfile = preg_replace("!show_popup_config.*\"(.*)\"!","show_popup_config']=\"1\"",$configfile);
+ if(isset($_POST['hidepopupconfig'])) $configfile = preg_replace("!show_popup_config.*\"(.*)\"!","show_popup_config']=\"\"",$configfile);
+ if(isset($_POST['show_year_in_backend'])) $configfile = preg_replace("!show_year_in_backend.*\"(.*)\"!","show_year_in_backend']=\"1\"",$configfile);
+ if(isset($_POST['show_month'])) $configfile = preg_replace("!show_year_in_backend.*\"(.*)\"!","show_year_in_backend']=\"\"",$configfile);
+ unset(
+ $_POST['showbigcalendar'],
+ $_POST['hidebigcalendar'],
+ $_POST['showsmallcalendar'],
+ $_POST['hidesmallcalendar'],
+ $_POST['showpopupconfig'],
+ $_POST['hidepopupconfig'],
+ $_POST['show_year_in_backend'],
+ $_POST['show_month']
+ );
+ file_put_contents($pth['folder']['plugins'] . $plugin . '/config/config2.php',$configfile);
+ include ($pth['folder']['plugins'] . $plugin .'/config/config2.php');
+ }
+
+
+ $o .= "";
+
+ $o .= ""
+ . presets('calendar')
+ . "
\n";
+
+ $o .= calendarConfig();
+
+ return $o;
+}
+
+//==============================================
+// config menu on top of eventlist
+//==============================================
+function eventlistconfigmenu()
+{
+ global $pth,$cf,$calendar_cf,$plugin_tx,$plugin,$datapath;
+ $o = '';
+
+ $style = isset($_POST['style']) ? $_POST['style'] : $calendar_cf['show_eventlist_style'];
+
+ if(isset($_POST['style'])) {
+ $configfile = file_get_contents($pth['folder']['plugins'] . $plugin . '/config/config2.php');
+ $configfile = preg_replace("!show_eventlist_style.*\"(.*)\"!","show_eventlist_style']=\"$style\"",$configfile);
+ file_put_contents($pth['folder']['plugins'] . '/calendar/config/config2.php',$configfile);
+ include ($pth['folder']['plugins'] . '/calendar/config/config2.php');
+ }
+
+ // template change
+ if ($calendar_cf['test_event_list_template']) {
+ $cf['site']['template'] = $calendar_cf['test_event_list_template'];
+ $pth['folder']['template'] = $pth['folder']['templates'].$cf['site']['template'].'/';
+ $pth['file']['template'] = $pth['folder']['template'].'template.htm';
+ $pth['file']['stylesheet'] = $pth['folder']['template'].'stylesheet.css';
+ $pth['folder']['menubuttons'] = $pth['folder']['template'].'menu/';
+ $pth['folder']['templateimages'] = $pth['folder']['template'].'images/';
+ }
+ $o .= "";
+
+ return $o;
+}
+
+//==============================================
+// little helper function of basic configuration
+// shows the Icons used
+//==============================================
+function showIcons()
+{
+ global $pth,$plugin,$plugin_tx;
+ $path = $pth['folder']['plugins'] . '/calendar/images/';
+
+ $icon_set_array = array();
+ $icon_set = '';
+ $o = '';
+
+ $handle = opendir ($path);
+ while (false !== ($icon_folder = readdir ($handle))) {
+ if ($icon_folder != "." && $icon_folder != ".." && is_dir($path . $icon_folder)) {
+
+ $icon_set .= $icon_folder.": \n";
+ $icon_array = array();
+ $handle2 = opendir ($path.$icon_folder);
+ while (false !== ($icon = readdir ($handle2))) {
+ if ($icon != "." && $icon != "..") {
+ list($width, $height, $type, $attr) = getimagesize($path.$icon_folder."/".$icon);
+ array_push($icon_array, tag('img src="'.$path.$icon_folder.'/'.$icon.'" '.$attr.'') ." \n");
+ }
+ }
+ closedir($handle2);
+ rsort($icon_array);
+ $icon_set .= implode (" ",$icon_array);
+ array_push($icon_set_array,$icon_set);
+ $icon_set = '';
+ }
+ }
+ closedir($handle);
+ //sorting necessary, otherwise on some servers the list will be disordered
+ natsort($icon_set_array);
+ foreach($icon_set_array as $key => $value){
+ if (!strpos($value, "past")) {
+ $o .= "Icon set $value\n" . tag('br') . tag ('br');
+ } else {
+ $o .= " \n"
+ . preg_replace('!^.+(past:)!','',$value)
+ . "\n" . tag('br') . tag ('br');
+ }
+ }
+ //$o .= "(→ ".$plugin_tx['calendar']['menu_config'].")";
+ return $o;
+}
+
+
+//=============================================
+// a little helper function of Backup function
+// closees the shown file view
+//=============================================
+function closeFileViewButton($mode='')
+{
+ global $plugin_tx,$plugin;
+ $o = '';
+ $o .= ' ';
+ $o .= tag('br');
+ return $o;
+}
+
+
+//*******************************************************
+//
+// showing the list of files in calendar/content/ + calendar/templates/
+//
+//*******************************************************
+function listFiles()
+{
+ global $pth,$plugin,$file,$datapath;
+ $o = '';
+
+ // 1st list for edit view
+ //================================
+ $o .= "\n";
+
+ $handle=opendir ($datapath);
+ while (false !== ($file = readdir ($handle))) {
+ if ($file!='.' && $file!='..' ) {
+ $o .= "\n$file "
+ . date ("d.m.Y \&\m\d\a\s\h\; H:i", filemtime($datapath.$file)) . " \n";
+ }
+ }
+ closedir($handle);
+ $o .= "
\n";
+
+ // 2nd list for source code view
+ //================================
+ $o .= "\n";
+ $handle=opendir ($datapath);
+ while (false !== ($file = readdir ($handle))) {
+ if ($file!='.' && $file!='..') {
+ $o .= "\n$file "
+ . date ("d.m.Y \&\m\d\a\s\h\; H:i", filemtime($datapath.$file)) . " \n";
+ }
+ }
+ closedir($handle);
+ $o .= "
\n";
+
+ // 3nd list for presets/templates
+ //=================================
+ $o .= "\n";
+ $handle=opendir ($pth['folder']['plugins'].'/calendar/templates/');
+ while (false !== ($file = readdir ($handle))) {
+ if ($file!='.' && $file!='..') {
+ list($f1,$f2) = explode ('.',$file,2);
+ $f1array[] = $f1;
+ $f2array[] = $f2;
+ }
+ }
+ array_multisort($f2array,$f1array);
+ foreach ($f2array as $key=>$value) {
+ $templatefile = $f1array[$key].'.'.$f2array[$key];
+ $o .= "\n$templatefile "
+ . date ("d.m.Y \&\m\d\a\s\h\; H:i", filemtime($pth['folder']['plugins'].'/calendar/templates/'.$templatefile)) . " \n";
+ }
+ closedir($handle);
+ $o .= "
\n";
+
+ return $o;
+}
+
+
+
+//*****************************************
+//
+// showing and saving the source-code
+//
+//*****************************************
+function sourceView($file,$template=0)
+{
+ global $plugin_tx,$pth,$plugin,$plugin_cf,$tx,$datapath;
+ $notice = "";
+ $name_error = FALSE;
+ $o = '';
+
+ $datapath2 = $template? $pth['folder']['plugins'].'/calendar/templates/' : $datapath;
+ // saving function
+ //===================================================
+ $action = isset($_POST['action']) ? $_POST['action'] : '';
+ $savedfile = isset($_POST['file']) ? $_POST['file'] : '';
+ $data = isset($_POST['data']) ? $_POST['data'] : '';
+ if(get_magic_quotes_gpc()) $data = stripslashes($data);
+ $data = str_replace('¬','',$data);
+
+ // check if the new filename has unwanted characters
+ if(preg_match('/[^(\w|.)]/',$savedfile)) {
+ $notice .= ""
+ . $plugin_tx['calendar']['error_file_name_wrong'] . ' ';
+ $name_error = True;
+
+ } else {
+ if ($action == "savesource") {
+ if(is_file($datapath2.$savedfile)) chmod($datapath2.$savedfile, 0666);
+ $savedbytes = file_put_contents($datapath2.$savedfile,$data);
+ if ($savedbytes!==FALSE) {
+ $notice = "$savedbytes "
+ . $plugin_tx['calendar']['backup-admin_bytes_saved_in'] . " \"$savedfile\" ";
+ } else {
+ $notice = "".$plugin_tx['calendar']['error_file_not_writable']." ";
+ }
+ }
+ }
+
+ // if the function performed an action, the file view has to be adjusted accordingly
+ if($savedfile) $file = $savedfile;
+ if(!$name_error) {$eventfile = file_get_contents($datapath2.$file);} else {$eventfile = $data;}
+
+ // after actions: updating the file list
+ if($action) {
+ $o .= listFiles();
+ $o .= $template? closeFileViewButton('t') : closeFileViewButton('s');
+ }
+
+ // This java script "presses the button" for source code or template view, so that after an action you stay in the previous mode
+ if(strpos($file,'.php') || strpos($file,'.tpl')) {
+ $o .= '';
+ } else {
+ $o .= '';
+ }
+
+ // for bug hunting only
+ //$o = "data: $data magic quotes:".get_magic_quotes_gpc() ;
+
+ //===================================================
+ // displaying the source code
+ //===================================================
+ $o .= '';
+ $o .= '';
+
+
+return $o;
+}
+
+
+//*****************************************
+//
+// deleting and merging files
+//
+//*****************************************
+function deleteAndCombine()
+{
+ global $plugin_tx,$pth,$plugin,$datapath;
+ $o = '';
+ $notice = '';
+
+ if(isset($_POST['action']))
+ $action = $_POST['action'];
+ elseif(isset($_GET['action']))
+ $action = $_GET['action'];
+ else
+ $action = "";
+
+ // starting with the actions to be done
+
+ if ($action == "") $notice = "";
+
+ // deleting files
+ //=========================================================
+ if ($action == "delete" || $action == "delete1" || $action == "delete2" ) {
+
+ $file = isset($_POST['file']) ? $_POST['file'] : $file;
+
+ $datapath2 = $action == "delete2"? $pth['folder']['plugins'].'/calendar/templates/' : $datapath;
+
+ if(is_file($datapath2.$file)) {
+ $notice .= "$file ".$plugin_tx['calendar']['backup-admin_found']." " . tag('br');
+
+ chmod($datapath2.$file, 0666);
+ $x = unlink($datapath2.$file);
+ if($x===TRUE) {
+ $notice .= "$file ".$plugin_tx['calendar']['backup-admin_deleted']." " . tag('br');
+
+ } else $notice .= "$file ".$plugin_tx['calendar']['backup-admin_not_deleted']." " . tag('br');
+
+ } else $notice .= "$file ".$plugin_tx['calendar']['backup-admin_not_found']." " . tag('br');
+
+ $o .= listFiles();
+
+ }
+
+ // merging files
+ //==========================================================
+ if ($action == "merge" || $action == "merge1") {
+
+ $firstfile = isset($_POST['firstfile']) ? $_POST['firstfile'] : '';
+ $secondfile = isset($_POST['secondfile']) ? $_POST['secondfile'] : '';
+ $f = 0;
+ $s = 0;
+
+ if(is_file($datapath.$firstfile)) {
+ $firstfilearray = file($datapath.$firstfile,FILE_SKIP_EMPTY_LINES);
+ $f = count($firstfilearray);
+ // checking the version of the event file
+ if (isset($firstfilearray[0]) && substr($firstfilearray[0],0,19)=="Calendar eventfile ") {
+ $version1 = substr($firstfilearray[0],19,3);print_r($firstfilearray);
+ array_shift($firstfilearray);print_r($firstfilearray);
+ $f--;
+ } else {
+ $version1 = FALSE;
+ }
+ $notice .= "$firstfile ".$plugin_tx['calendar']['backup-admin_found_with']." $f "
+ . $plugin_tx['calendar']['backup-admin_events']." " . tag('br');
+ } else $notice .= "".$plugin_tx['calendar']['backup-admin_1st_file']
+ . " $firstfile ".$plugin_tx['calendar']['backup-admin_not_found']." " . tag('br');
+
+
+ if(is_file($datapath.$secondfile)) {
+ chmod($datapath.$secondfile, 0666);
+ $secondfilearray = file($datapath.$secondfile,FILE_SKIP_EMPTY_LINES);
+ $s = count($secondfilearray);
+ if(!strpos("\n",$secondfilearray[($s-1)])) $secondfilearray[($s-1)] .= "\n";
+ // checking the version of the event file
+ if (isset($secondfilearray[0]) && substr($secondfilearray[0],0,19)=="Calendar eventfile ") {
+ $version2 = substr($secondfilearray[0],19,3);print_r($secondfilearray);
+ $s--;
+ } else {
+ $version2 = FALSE;
+ }
+ $notice .= "$secondfile ".$plugin_tx['calendar']['backup-admin_found_with']." $s "
+ . $plugin_tx['calendar']['backup-admin_events']." " . tag('br');
+ } else $notice .= "".$plugin_tx['calendar']['backup-admin_2nd_file']
+ . " $secondfile ".$plugin_tx['calendar']['backup-admin_not_found']." " . tag('br');
+
+ if($f && $s && $version1==$version2) {
+ // merge the file arrays
+ $secondfilearray = array_merge($secondfilearray,$firstfilearray);
+ // remove duplicates
+ $secondfilearray = array_unique($secondfilearray);
+ // count number of events in resulting file
+ $sf = count($secondfilearray);
+ if($version2) $sf--;print_r($secondfilearray);
+ if (($f + $s) > $sf) $notice .= "".(($f + $s) - $sf) . " ".$plugin_tx['calendar']['backup-admin_duplicates_deleted']." ". tag('br');
+ // save the resulting file or give an error notice
+ $success = file_put_contents($datapath.$secondfile,$secondfilearray);
+ if ($success!==false) {
+ $notice .= "$secondfile ". $plugin_tx['calendar']['backup-admin_saved_with']
+ . " $sf ".$plugin_tx['calendar']['backup-admin_events'].' '. tag('br'). tag('br');
+ } else $notice .= "ERROR: could not save $secondfile ". tag('br'). tag('br');
+ } elseif($f && $s && $version1!=$version2) {
+ $notice .= ''
+ . $plugin_tx['calendar']['error_cant_combine_eventfiles_of_different_versions']
+ . ' '
+ . tag('br'). tag('br');
+ } else $notice .= ''.$plugin_tx['calendar']['backup-admin_no_merge'].' '. tag('br'). tag('br');
+
+ $o .= listFiles();
+
+ }
+
+ //"merge files" button switching the following dialogue on and off
+ //==========================================================================================================
+ $o .= " "
+ . "";
+ // end of merge dialogue
+
+
+ //"delete files" (edit-mode) button switching the following dialogue on and off (button alway visible))
+ //===========================================================================================================
+ $o .= " ";
+
+ //"delete files" (source mode) button
+ //===========================================================================================================
+ $o .= " ";
+
+ $handle=opendir($datapath);
+ $filearray = array();
+ while (false !== ($file = readdir($handle))) {
+ if($file != "." && $file != "..") {
+ $filearray[] = $file;
+ }
+ }
+ closedir($handle);
+ natcasesort($filearray);
+ $files_select = '';
+ foreach($filearray as $file){
+ $files_select .= "\n$file ";
+ }
+
+ //div controlled by delete button (edit mode)
+ $o .= "\n\n";
+
+ //div controlled by delete button (source mode)
+ $o .= "\n\n";
+
+
+ //"delete templates" button switching the following dialogue on and off (button always visible))
+ //===========================================================================================================
+ $o .= " "
+ . "\n\n";
+
+ $o .= "$notice
\n";
+
+ return $o;
+}
+
+
+//*****************************************
+//
+// select font and fontsize
+//
+//*****************************************
+function selectFont($name=0,$fontvalue=0,$size=0,$sizevalue=0,$height=0,$heightvalue=0)
+{
+ global $plugin_tx,$plugin_cf;
+ $o = '';
+
+ if($name) {
+ $array = explode(";", $plugin_cf['calendar']['selectable_fonts']);
+ $values_select = '';
+ $j = 0;
+ foreach ($array as $option) {
+ $selected = '';
+ if($option == $fontvalue) {$selected = ' selected'; $j = 1;}
+ $values_select .= "\n$option ";
+ }
+ $preselect = (!$j && $fontvalue && $fontvalue!='inherit')? '' . $fontvalue . ' ' : '';
+ $o .= ""
+ . "\n\t".$plugin_tx['calendar']['config_no_special_font'].' '
+ . $preselect . $values_select." ";
+ }
+
+ if($size) {
+ $array = explode(",", $plugin_cf['calendar']['selectable_fontsizes']);
+ $values_select = '';
+ $j = 0;
+ foreach ($array as $option) {
+ $selected = '';
+ if($option == $sizevalue) {$selected = ' selected'; $j = 1;}
+ $values_select .= "\n$option ";
+ }
+ $preselect = (!$j && $sizevalue && $sizevalue!='inherit')? '' . $sizevalue . ' ' : '';
+ $o .= ""
+ . "\n\t – "
+ . $preselect . $values_select.' ';
+ }
+
+ if($height) {
+ $array = explode(",", $plugin_cf['calendar']['selectable_lineheights']);
+ $values_select = '';
+ $j = 0;
+ foreach ($array as $option) {
+ $selected = '';
+ if($option == $heightvalue) {$selected = ' selected'; $j = 1;}
+ $values_select .= "\n$option ";
+ }
+ $preselect = (!$j && $heightvalue && $heightvalue!='inherit')? '' . $heightvalue . ' ' : '';
+ $o .= ""
+ . "\n\t – "
+ . $preselect . $values_select.' ';
+ }
+ return $o;
+}
+
+?>
diff --git a/backgroundimages/blue_lozange.gif b/backgroundimages/blue_lozange.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c3fe8f3d67509a96258980ccfcab377fa0bc9d1b
GIT binary patch
literal 144
zcmZ?wbhEHblw^=(n8?6z=Hh=KU;qQfpDdgV42%pqARb8Gfg_QDnM1}SK%t?DgPSSh
z#D;~3TRE9+=G-tyI?^m=9CW0kVDa&Gam_TIlLbo-^~?A#n&VNh^hArc@3u7>!fHom
qX=PsflW{5a)J(g4DITsMrNDNF=1DF$FDv^k_L$G7Gt*Fk!5RRb>oK|j
literal 0
HcmV?d00001
diff --git a/backgroundimages/blue_nebula.jpg b/backgroundimages/blue_nebula.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..23dc96fc959806cd8d3b1f90ec9abd58371dadf7
GIT binary patch
literal 73261
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
z
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