add contents
							
								
								
									
										
											BIN
										
									
								
								changes.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								ckgedit.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										14
									
								
								dokuwiki-plugins-2021-10-05-ckgedit_fix_media_dir.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,14 @@
 | 
			
		||||
diff -ruN lib/plugins/ckgedit.old/action/meta.php lib/plugins/ckgedit/action/meta.php
 | 
			
		||||
--- lib/plugins/ckgedit.old/action/meta.php	2021-10-05 17:27:06.277221520 +0200
 | 
			
		||||
+++ lib/plugins/ckgedit/action/meta.php	2021-10-05 17:28:56.594090117 +0200
 | 
			
		||||
@@ -523,7 +523,9 @@
 | 
			
		||||
         if(! empty($domain )) {
 | 
			
		||||
         list($prefix,$mdir) = explode(trim(DOKU_BASE, '/'),$userfiles);
 | 
			
		||||
            $mdir = ltrim($mdir, '/');
 | 
			
		||||
-        $media_dir = DOKU_BASE . $mdir . 'image/';
 | 
			
		||||
+        // $media_dir = DOKU_BASE . $mdir . 'image/';
 | 
			
		||||
+        $media_dir = DOKU_BASE . $mdir . 'lib/exe/fetch.php/';
 | 
			
		||||
+
 | 
			
		||||
         }
 | 
			
		||||
         else $media_dir = '/lib/plugins/ckgedit/fckeditor/'. $animal . '/image/';        
 | 
			
		||||
         setcookieSameSite('FCK_media',$media_dir, $expire, '/');           
 | 
			
		||||
							
								
								
									
										12
									
								
								dokuwiki-plugins-2021-10-05-mupdf_tmp_dir.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,12 @@
 | 
			
		||||
diff -ruN lib/plugins/dw2pdf.old/vendor/mpdf/mpdf/src/Config/ConfigVariables.php lib/plugins/dw2pdf/vendor/mpdf/mpdf/src/Config/ConfigVariables.php
 | 
			
		||||
--- lib/plugins/dw2pdf.old/vendor/mpdf/mpdf/src/Config/ConfigVariables.php	2021-10-05 17:24:40.914758223 +0200
 | 
			
		||||
+++ lib/plugins/dw2pdf/vendor/mpdf/mpdf/src/Config/ConfigVariables.php	2021-10-05 17:25:34.471666510 +0200
 | 
			
		||||
@@ -453,7 +453,7 @@
 | 
			
		||||
 				__DIR__ . '/../../ttfonts'
 | 
			
		||||
 			],
 | 
			
		||||
 
 | 
			
		||||
-			'tempDir' => __DIR__ . '/../../tmp',
 | 
			
		||||
+			'tempDir' => '/var/lib/dokuwiki/data/tmp',
 | 
			
		||||
 
 | 
			
		||||
 			'allowAnnotationFiles' => false,
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										334
									
								
								dokuwiki-plugins.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,334 @@
 | 
			
		||||
%define realversion 20210220
 | 
			
		||||
%define version %(echo %{realversion} | sed -e 's/-//g')
 | 
			
		||||
%define releasenum 4
 | 
			
		||||
 | 
			
		||||
%if 0%{?fedora} >= 11 || 0%{?rhel} >= 5
 | 
			
		||||
%global useselinux 1
 | 
			
		||||
%else
 | 
			
		||||
%global useselinux 0
 | 
			
		||||
%endif
 | 
			
		||||
 | 
			
		||||
Name: dokuwiki-plugins
 | 
			
		||||
Version: %{version}
 | 
			
		||||
Release: %{releasenum}%{?dist}
 | 
			
		||||
Summary: Standards compliant simple to use wiki
 | 
			
		||||
Group: Applications/Internet
 | 
			
		||||
License: GPLv2
 | 
			
		||||
URL: http://www.dokuwiki.org/dokuwiki
 | 
			
		||||
 | 
			
		||||
Source10: changes.zip
 | 
			
		||||
Source11: ckgedit.zip
 | 
			
		||||
Source12: color.zip
 | 
			
		||||
Source13: dw2pdf.zip
 | 
			
		||||
Source14: edittable.zip
 | 
			
		||||
Source15: encryptedpasswords.zip
 | 
			
		||||
Source16: hidden.zip
 | 
			
		||||
Source17: howhard.zip
 | 
			
		||||
Source18: loglog.zip
 | 
			
		||||
Source19: note.zip
 | 
			
		||||
Source20: nspages.zip
 | 
			
		||||
Source21: odt.zip
 | 
			
		||||
Source22: pagelist.zip
 | 
			
		||||
Source23: pagemove.zip
 | 
			
		||||
Source24: sortablejs.zip
 | 
			
		||||
Source25: tag.zip
 | 
			
		||||
Source26: todo.zip
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Patch1: dokuwiki-plugins-2021-10-05-ckgedit_fix_media_dir.patch
 | 
			
		||||
Patch2: dokuwiki-plugins-2021-10-05-mupdf_tmp_dir.patch
 | 
			
		||||
 | 
			
		||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 | 
			
		||||
BuildArch: noarch
 | 
			
		||||
Requires: dokuwiki >= 20200729
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
%description
 | 
			
		||||
DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at creating
 | 
			
		||||
documentation of any kind. It has a simple but powerful syntax which makes sure
 | 
			
		||||
the data files remain readable outside the Wiki and eases the creation of
 | 
			
		||||
structured texts.
 | 
			
		||||
 | 
			
		||||
All data is stored in plain text files no database is required.
 | 
			
		||||
 | 
			
		||||
This package provides several useful plugins for dokuwiki
 | 
			
		||||
 | 
			
		||||
%prep
 | 
			
		||||
%{__rm} -rf lib
 | 
			
		||||
%{__mkdir_p} lib/{plugins,tpl}
 | 
			
		||||
# Extract plugins
 | 
			
		||||
for S in %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} %{SOURCE15} %{SOURCE16} %{SOURCE17} %{SOURCE18} %{SOURCE19} %{SOURCE20} %{SOURCE21} %{SOURCE22} %{SOURCE23} %{SOURCE24} %{SOURCE25} %{SOURCE26}; do
 | 
			
		||||
    unzip -o -d lib/plugins $S
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
mv lib/plugins/changes-master lib/plugins/changes
 | 
			
		||||
mv lib/plugins/ckgedit-master lib/plugins/ckgedit
 | 
			
		||||
mv lib/plugins/color-master lib/plugins/color
 | 
			
		||||
mv lib/plugins/dw2pdf-master lib/plugins/dw2pdf
 | 
			
		||||
mv lib/plugins/edittable-master lib/plugins/edittable
 | 
			
		||||
mv lib/plugins/encryptedpasswords-master lib/plugins/encryptedpasswords
 | 
			
		||||
mv lib/plugins/hidden-master lib/plugins/hidden
 | 
			
		||||
mv lib/plugins/howhard-master lib/plugins/howhard
 | 
			
		||||
mv lib/plugins/loglog-master lib/plugins/loglog
 | 
			
		||||
mv lib/plugins/note-master lib/plugins/note
 | 
			
		||||
mv lib/plugins/nspages-master lib/plugins/nspages
 | 
			
		||||
mv lib/plugins/odt-master lib/plugins/odt
 | 
			
		||||
mv lib/plugins/pagelist-master lib/plugins/pagelist
 | 
			
		||||
mv lib/plugins/pagemove-master lib/plugins/pagemove
 | 
			
		||||
mv lib/plugins/sortablejs-master lib/plugins/sortablejs
 | 
			
		||||
mv lib/plugins/tag-master lib/plugins/tag
 | 
			
		||||
mv lib/plugins/todo-master lib/plugins/todo
 | 
			
		||||
 | 
			
		||||
ls -l lib/plugins/ckgedit
 | 
			
		||||
 | 
			
		||||
find lib -type d -exec chmod 755 "{}" \;
 | 
			
		||||
find lib -type f -exec chmod 644 "{}" \;
 | 
			
		||||
 | 
			
		||||
%patch1 -p0
 | 
			
		||||
%patch2 -p0
 | 
			
		||||
 | 
			
		||||
%build
 | 
			
		||||
 | 
			
		||||
%install
 | 
			
		||||
rm -rf $RPM_BUILD_ROOT
 | 
			
		||||
install -d -p $RPM_BUILD_ROOT%{_datadir}/dokuwiki/
 | 
			
		||||
cp -rp lib  $RPM_BUILD_ROOT%{_datadir}/dokuwiki/
 | 
			
		||||
 | 
			
		||||
%files
 | 
			
		||||
%defattr(-,root,root,-)
 | 
			
		||||
#%attr(0755,apache,apache) %dir %{_datadir}/dokuwiki/lib/plugins
 | 
			
		||||
# %attr(0775,root,apache) %dir %{_datadir}/dokuwiki/lib/plugins/*
 | 
			
		||||
%{_datadir}/dokuwiki/lib/plugins/*
 | 
			
		||||
 | 
			
		||||
%clean
 | 
			
		||||
%{__rm} -rf $RPM_BUILD_ROOT
 | 
			
		||||
 | 
			
		||||
%changelog
 | 
			
		||||
* Thu Oct 14 2021 John Crisp <jcrisp@safeandsoundit.co.uk> 20210220-4
 | 
			
		||||
- remove attr dir line in files to fix conflicts [SME: 11703]
 | 
			
		||||
 | 
			
		||||
* Mon Oct 11 2021 Terry Fage <terry@fage.id.au> 20210220-3
 | 
			
		||||
- reapply patchs ckgedit_fix_media_dir mupdf_tmp_dir [SME: 11704]
 | 
			
		||||
 | 
			
		||||
* Wed Oct 06 2021 John Crisp <jcrisp@safeandsoundit.co.uk> 20210220-2
 | 
			
		||||
- Update the dokuwiki requires version
 | 
			
		||||
 | 
			
		||||
* Tue Oct 05 2021 John Crisp <jcrisp@safeandsoundit.co.uk> - 20210220-1
 | 
			
		||||
- First import to SME [SME: 11704]
 | 
			
		||||
- Updated plugins to lastest versions
 | 
			
		||||
- Scripted git pulls for plugins and zipping them
 | 
			
		||||
- Sorted plugin names alphabetically
 | 
			
		||||
 | 
			
		||||
* Mon Sep 25 2017 Daniel Berteaud <daniel@firewall-services.com> - 20170219e-2
 | 
			
		||||
- Fix syntax error in ckgedit lang file preventing access to settings
 | 
			
		||||
 | 
			
		||||
* Mon Aug 28 2017 Daniel Berteaud <daniel@firewall-services.com> - 20170219e-1
 | 
			
		||||
- Bump for 2017-02-19e
 | 
			
		||||
 | 
			
		||||
* Wed Aug 23 2017 Daniel Berteaud <daniel@firewall-services.com> - 20170219d-1
 | 
			
		||||
- Bump for 2017-02-19d
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
- Update hidden
 | 
			
		||||
- Update tag
 | 
			
		||||
- Update pagelist
 | 
			
		||||
- Update loglog
 | 
			
		||||
- Update edittable
 | 
			
		||||
- Update odt
 | 
			
		||||
- Update nspages
 | 
			
		||||
- Update changes
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
 | 
			
		||||
* Thu Mar 9 2017 Daniel Berteaud <daniel@firewall-services.com> - 20170219b-1
 | 
			
		||||
- Bump for 2017-02-19b
 | 
			
		||||
 | 
			
		||||
* Tue Feb 21 2017 Daniel Berteaud <daniel@firewall-services.com> - 20170219a-1
 | 
			
		||||
- Bump for 2017-02-19a
 | 
			
		||||
- Update note
 | 
			
		||||
- Update odt
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update color
 | 
			
		||||
- Update hidden
 | 
			
		||||
- Update encryptedpasswords
 | 
			
		||||
- Update tag
 | 
			
		||||
- Update pagelist
 | 
			
		||||
- Update changes
 | 
			
		||||
- Update loglog
 | 
			
		||||
- Update todo
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
- Update edittable
 | 
			
		||||
- Update sortablejs
 | 
			
		||||
- Update howhard
 | 
			
		||||
 | 
			
		||||
* Wed Jul 20 2016 Daniel Berteaud <daniel@firewall-services.com> - 20160626a-2
 | 
			
		||||
- Fix odt export when notes are used
 | 
			
		||||
  See https://github.com/LarsGit223/dokuwiki-plugin-odt/issues/144
 | 
			
		||||
 | 
			
		||||
* Mon Jul 4 2016 Daniel Berteaud <daniel@firewall-services.com> - 20160626a-1
 | 
			
		||||
- Bump for 2016-06-26a
 | 
			
		||||
 | 
			
		||||
* Tue Jun 28 2016 Daniel Berteaud <daniel@firewall-services.com> - 20160626-1
 | 
			
		||||
- Bump for 2016-06-26
 | 
			
		||||
- Update changes
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update edittable
 | 
			
		||||
- Update hidden
 | 
			
		||||
- Update howhard
 | 
			
		||||
- Update loglog
 | 
			
		||||
- Update nspages
 | 
			
		||||
- Update odt
 | 
			
		||||
- Update pagelist
 | 
			
		||||
- Update pagemove
 | 
			
		||||
- Update tag
 | 
			
		||||
- Update todo
 | 
			
		||||
 | 
			
		||||
* Wed Sep 9 2015 Daniel Berteaud <daniel@firewall-services.com> - 20150810a-2
 | 
			
		||||
- Update edittable to 2015-09-01
 | 
			
		||||
 | 
			
		||||
* Tue Sep 1 2015 Daniel Berteaud <daniel@firewall-services.com> - 20150810a-1
 | 
			
		||||
- Bump for 2015-08-10a
 | 
			
		||||
- Update odt
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update hidden
 | 
			
		||||
- Update encryptedpassword
 | 
			
		||||
- Update nspage
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
- Update edittable
 | 
			
		||||
- Update sortablejs
 | 
			
		||||
- Update howhard
 | 
			
		||||
- Remove useless dokuwiki_export template
 | 
			
		||||
 | 
			
		||||
* Fri Mar 20 2015 Daniel Berteaud <daniel@firewall-services.com> - 20140029d-1
 | 
			
		||||
- Bump for 2014-09-29d
 | 
			
		||||
- Update changes
 | 
			
		||||
- Update edittable
 | 
			
		||||
- Update encryptedpassword
 | 
			
		||||
- Update loglog
 | 
			
		||||
- Update odt
 | 
			
		||||
 | 
			
		||||
* Thu Feb 26 2015 Daniel Berteaud <daniel@firewall-services.com> - 20140029c-1
 | 
			
		||||
- Bump for 2014-09-29c
 | 
			
		||||
- Update odt
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update nspage
 | 
			
		||||
- Update changes
 | 
			
		||||
- Update todo
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
- Update edittable
 | 
			
		||||
 | 
			
		||||
* Thu Dec 4 2014 Daniel Berteaud <daniel@firewall-services.com> - 20140029b-1
 | 
			
		||||
- Bump for 2014-09-29b
 | 
			
		||||
 | 
			
		||||
* Tue Oct 14 2014 Daniel Berteaud <daniel@firewall-services.com> - 20140029a-1
 | 
			
		||||
- Bump version for 2014-09-29a
 | 
			
		||||
- Update default template
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update encryptedpassword
 | 
			
		||||
- Update howhard
 | 
			
		||||
- Update odt
 | 
			
		||||
- Update pagemove
 | 
			
		||||
- Update sortablejs
 | 
			
		||||
- Update todo
 | 
			
		||||
 | 
			
		||||
* Tue Aug 12 2014 Daniel Berteaud <daniel@firewall-services.com> - 20140505a-2
 | 
			
		||||
- update odt
 | 
			
		||||
- update tag
 | 
			
		||||
- update hidden
 | 
			
		||||
- update todo
 | 
			
		||||
- update pagelist
 | 
			
		||||
- update pagemove
 | 
			
		||||
- update dw2pdf
 | 
			
		||||
- update loglog
 | 
			
		||||
- update ckgedit
 | 
			
		||||
- update nspage
 | 
			
		||||
- update encryptedpasswords
 | 
			
		||||
- add edittable
 | 
			
		||||
- add sertablejs
 | 
			
		||||
- add howhard
 | 
			
		||||
- remove toolbox
 | 
			
		||||
- remove floartdiv
 | 
			
		||||
- remove iframe
 | 
			
		||||
 | 
			
		||||
* Fri Jun 27 2014 Daniel Berteaud <daniel@firewall-services.com> - 20140505a-1
 | 
			
		||||
- bump version for 2014-05-05a
 | 
			
		||||
 | 
			
		||||
* Tue May 6 2014 Daniel Berteaud <daniel@firewall-services.com> - 20140505-1
 | 
			
		||||
- Bump release for new dokuwiki (2014-05-05)
 | 
			
		||||
- Update dokuwiki tpl
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update tag
 | 
			
		||||
- Update pagelist
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
 | 
			
		||||
* Mon Dec 9 2013 Daniel Berteaud <daniel@firewall-services.com> - 20131208-1
 | 
			
		||||
- bump release for new dokuwiki version (2013-12-08)
 | 
			
		||||
- Update dokuwiki tpl
 | 
			
		||||
- Remove the old default template
 | 
			
		||||
 | 
			
		||||
* Thu Nov 28 2013 Daniel Berteaud <daniel@firewall-services.com> - 20130510a-4
 | 
			
		||||
- Fix permissions on the plugins dir
 | 
			
		||||
 | 
			
		||||
* Fri Nov 15 2013 Daniel Berteaud <daniel@firewall-services.com> - 20130510a-3
 | 
			
		||||
- Cleanup the spec file
 | 
			
		||||
 | 
			
		||||
* Thu Oct 31 2013 Daniel Berteaud <daniel@firewall-services.com> - 20130510a-2
 | 
			
		||||
- Fix media manager in ckgedit
 | 
			
		||||
- Update dw2pdf
 | 
			
		||||
- Update tag
 | 
			
		||||
- Update pagelist
 | 
			
		||||
- Update nspages
 | 
			
		||||
- Update todo
 | 
			
		||||
- Update ckgedit
 | 
			
		||||
 | 
			
		||||
* Wed Aug 21 2013 Daniel Berteaud <daniel@firewall-services.com> - 20130510a-1
 | 
			
		||||
- bump version to 2013-05-10a
 | 
			
		||||
 | 
			
		||||
* Thu Mar 28 2013 Daniel Berteaud <daniel@firewall-services.com> - 20130510-1
 | 
			
		||||
- update hidden
 | 
			
		||||
- update encryptpassword
 | 
			
		||||
- update tag
 | 
			
		||||
- update pagelist
 | 
			
		||||
- update todo
 | 
			
		||||
- replace fckgLite with ckgedit
 | 
			
		||||
- remove edittable
 | 
			
		||||
- bump version for dokuwiki 2013-05-10
 | 
			
		||||
 | 
			
		||||
* Mon Oct 15 2012 Daniel Berteaud <daniel@firewall-services.com> - 20121013-1
 | 
			
		||||
- bump release for new dokuwiki version
 | 
			
		||||
 | 
			
		||||
* Thu Sep 13 2012 Daniel Berteaud <daniel@firewall-services.com> - 20120910-1
 | 
			
		||||
- bump release for new dokuwiki version
 | 
			
		||||
- update hidden
 | 
			
		||||
- update tag
 | 
			
		||||
- update fckgLite
 | 
			
		||||
- update encryptedpasswords
 | 
			
		||||
 | 
			
		||||
* Sun Jul 15 2012 Daniel Berteaud <daniel@firewall-services.com> - 20120125b-1
 | 
			
		||||
- bump release for dokuwiki 2012-01-25b
 | 
			
		||||
- update default tpl
 | 
			
		||||
- update dw2pdf
 | 
			
		||||
- update hidden
 | 
			
		||||
- update encryptedpasswords
 | 
			
		||||
- update pagelist
 | 
			
		||||
- update nspages
 | 
			
		||||
- update pagemove
 | 
			
		||||
- update fckgLite
 | 
			
		||||
- add iframe plugin
 | 
			
		||||
 | 
			
		||||
* Tue May 29 2012 Daniel Berteaud <daniel@firewall-services.com> - 20120125a-4
 | 
			
		||||
- update dw2pdf, tag and hidden plugins
 | 
			
		||||
 | 
			
		||||
* Mon Apr 23 2012 Daniel Berteaud <daniel@firewall-services.com> - 20120125a-3
 | 
			
		||||
- bump release for new dokuwiki version
 | 
			
		||||
 | 
			
		||||
* Fri Jan 27 2012 Daniel Berteaud <daniel@firewall-services.com> - 20120125-3
 | 
			
		||||
- upgrade for upstream dokuwiki
 | 
			
		||||
- upgrade dw2pdf to latest release
 | 
			
		||||
 | 
			
		||||
* Fri Nov 18 2011 Daniel Berteaud <daniel@firewall-services.com> - 20110525a-2
 | 
			
		||||
- Add fckgLite plugin
 | 
			
		||||
 | 
			
		||||
* Mon Jul 18 2011 Daniel Berteaud <daniel@firewall-services.com> - 20110525a-1
 | 
			
		||||
- Initial release
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								dw2pdf.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								edittable.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								encryptedpasswords.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								hidden.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								howhard.zip
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1
									
								
								import.log
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1 @@
 | 
			
		||||
dokuwiki-plugins-20210220-1_el7_sme:contribs10:dokuwiki-plugins-20210220-1.el7.sme.src.rpm:1633453049
 | 
			
		||||
							
								
								
									
										62
									
								
								lib/plugins/changes/action.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,62 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Changes Plugin: List the most recent changes of the wiki
 | 
			
		||||
 *
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 * @author     Andreas Gohr <andi@splitbrain.org>
 | 
			
		||||
 * @author     Mykola Ostrovskyy <spambox03@mail.ru>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class action_plugin_changes
 | 
			
		||||
 */
 | 
			
		||||
class action_plugin_changes extends DokuWiki_Action_Plugin
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Register callbacks
 | 
			
		||||
     * @param Doku_Event_Handler $controller
 | 
			
		||||
     */
 | 
			
		||||
    public function register(Doku_Event_Handler $controller)
 | 
			
		||||
    {
 | 
			
		||||
        $controller->register_hook('PARSER_CACHE_USE', 'BEFORE', $this, 'beforeParserCacheUse');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Handle PARSER_CACHE_USE:BEFORE event
 | 
			
		||||
     * @param Doku_Event $event
 | 
			
		||||
     */
 | 
			
		||||
    public function beforeParserCacheUse($event)
 | 
			
		||||
    {
 | 
			
		||||
        global $ID;
 | 
			
		||||
        $cache = $event->data;
 | 
			
		||||
        if (isset($cache->mode) && ($cache->mode == 'xhtml')) {
 | 
			
		||||
            $depends = p_get_metadata($ID, 'relation depends');
 | 
			
		||||
            if (!empty($depends) && isset($depends['rendering'])) {
 | 
			
		||||
                $this->addDependencies($cache, array_keys($depends['rendering']));
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Add extra dependencies to the cache
 | 
			
		||||
     */
 | 
			
		||||
    protected function addDependencies($cache, $depends)
 | 
			
		||||
    {
 | 
			
		||||
        // Prevent "Warning: in_array() expects parameter 2 to be array, null given"
 | 
			
		||||
        if (!is_array($cache->depends)) {
 | 
			
		||||
            $cache->depends = array();
 | 
			
		||||
        }
 | 
			
		||||
        if (!array_key_exists('files', $cache->depends)) {
 | 
			
		||||
            $cache->depends['files'] = array();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        foreach ($depends as $file) {
 | 
			
		||||
            if (!in_array($file, $cache->depends['files']) && @file_exists($file)) {
 | 
			
		||||
                $cache->depends['files'][] = $file;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//Setup VIM: ex: et ts=4 enc=utf-8 :
 | 
			
		||||
							
								
								
									
										4
									
								
								lib/plugins/changes/conf/default.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,4 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
$conf['dayheaderfmt']   = '%Y-%m-%d';
 | 
			
		||||
$conf['listmedia']      = 0;
 | 
			
		||||
							
								
								
									
										4
									
								
								lib/plugins/changes/conf/metadata.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,4 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
$meta['dayheaderfmt']   = array('string');
 | 
			
		||||
$meta['listmedia']      = array('onoff');
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/cs/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Quark66 <mkucera66@seznam.cz>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Formát datumů v záhlaví dnů (formát strftime)';
 | 
			
		||||
$lang['listmedia']             = 'Zahrnout změny souborů médií';
 | 
			
		||||
							
								
								
									
										4
									
								
								lib/plugins/changes/lang/de/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,4 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
$lang['dayheaderfmt'] = 'Datumsformat der Überschrift bei Verwendung des dayheaders-Parameters. (strftime format)';
 | 
			
		||||
$lang['listmedia'] = 'Änderungen in den Medien-Dateien einbinden?';
 | 
			
		||||
							
								
								
									
										4
									
								
								lib/plugins/changes/lang/en/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,4 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
$lang['dayheaderfmt'] = 'Date format for the day headers. (strftime format)';
 | 
			
		||||
$lang['listmedia'] = 'Include changes of media files.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/eo/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Robert Bogenschneider <bogi@uea.org>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Dat-formato por la tago-kapoj. (strftime-formato)';
 | 
			
		||||
$lang['listmedia']             = 'Inkludi ŝanĝojn de aŭdvidaĵ-dosieroj.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/fa/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Sam01 <m.sajad079@gmail.com>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'تاریخ فرمت برای هدر روز. (فرمت strftime)';
 | 
			
		||||
$lang['listmedia']             = 'شامل تغییرات فایلهای رسانهای.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/fr/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author NicolasFriedli <nicolas@theologique.ch>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Format de date pour les entêtes de jour. (format strftime)';
 | 
			
		||||
$lang['listmedia']             = 'Inclure les modifications apportées aux fichiers média.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/hr/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Davor Turkalj <turki.bsc@gmail.com>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Format datuma za datumska zaglavlja. (strftime format)';
 | 
			
		||||
$lang['listmedia']             = 'Prikaži i promjene na medijskim datotekama.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/hu/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Serenity87HUN <anikototh87@gmail.com>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Dátum formátum a naphoz. (strftime formátum)';
 | 
			
		||||
$lang['listmedia']             = 'Tartalmazza a médiafájlok változását is.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/ja/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Hideaki SAWADA <chuno@live.jp>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = '日付見出しの日付形式。 (strftimeフォーマット)';
 | 
			
		||||
$lang['listmedia']             = 'メディアファイルの変更を含む。';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/ko/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Myeongjin <aranet100@gmail.com>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = '날짜 헤더에 대한 날짜 형식. (strftime 형식)';
 | 
			
		||||
$lang['listmedia']             = '미디어 파일의 바뀜 포함.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/nl/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Mark Prins <mprins@users.sf.net>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Datum formaat voor de dag koppen. (strftime format)';
 | 
			
		||||
$lang['listmedia']             = 'Aanpassingen van media bestanden ook tonen.';
 | 
			
		||||
							
								
								
									
										10
									
								
								lib/plugins/changes/lang/pl/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,10 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Aleksander Setlak <http://alek.magazynek.org>
 | 
			
		||||
 * @author Mati <mackosa@wp.pl>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Format daty dla nagłówków dnia (w formacie strftime).';
 | 
			
		||||
$lang['listmedia']             = 'Dołącz zmiany plików multimedialnych';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/ru/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Aleksey.I.Maksimov <aleksey.i.maksimov@yandex.ru>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Формат даты для заголовков дня. (В формате PHP-фукции STRFTIME)';
 | 
			
		||||
$lang['listmedia']             = 'Учитывать изменения медиа-файлов.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/sv/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author Tor Härnqvist <tor@harnqvist.se>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Datumformat för datumrubrikerna. (strftime-format)';
 | 
			
		||||
$lang['listmedia']             = 'Inkluderar ändringar av mediafiler.';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/lang/tr/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 *
 | 
			
		||||
 * @author İlker Rifat Kapaç <irifat@gmail.com>
 | 
			
		||||
 */
 | 
			
		||||
$lang['dayheaderfmt']          = 'Gün başlıkları için tarih biçimi. (strftime biçimi)';
 | 
			
		||||
$lang['listmedia']             = 'Ortam dosyalarındaki değişiklikleri de dahil et.';
 | 
			
		||||
							
								
								
									
										4
									
								
								lib/plugins/changes/lang/zh/settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,4 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
$lang['dayheaderfmt'] = '日期标题日期格式。(strftime 格式)';
 | 
			
		||||
$lang['listmedia'] = '包括媒体文件的修改。';
 | 
			
		||||
							
								
								
									
										9
									
								
								lib/plugins/changes/plugin.info.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
# General Plugin Info do not edit
 | 
			
		||||
 | 
			
		||||
base   changes
 | 
			
		||||
author Andreas Gohr
 | 
			
		||||
email  dokuwiki@cosmocode.de
 | 
			
		||||
date   2021-01-25
 | 
			
		||||
name   Changes Plugin
 | 
			
		||||
desc   List the most recent changes of the wiki
 | 
			
		||||
url    http://www.dokuwiki.org/plugin:changes
 | 
			
		||||
							
								
								
									
										516
									
								
								lib/plugins/changes/syntax.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,516 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Changes Plugin: List the most recent changes of the wiki
 | 
			
		||||
 *
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 * @author     Andreas Gohr <andi@splitbrain.org>
 | 
			
		||||
 * @author     Mykola Ostrovskyy <spambox03@mail.ru>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Class syntax_plugin_changes
 | 
			
		||||
 */
 | 
			
		||||
class syntax_plugin_changes extends DokuWiki_Syntax_Plugin
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * What kind of syntax are we?
 | 
			
		||||
     */
 | 
			
		||||
    public function getType()
 | 
			
		||||
    {
 | 
			
		||||
        return 'substition';
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * What type of XHTML do we create?
 | 
			
		||||
     */
 | 
			
		||||
    public function getPType()
 | 
			
		||||
    {
 | 
			
		||||
        return 'block';
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Where to sort in?
 | 
			
		||||
     */
 | 
			
		||||
    public function getSort()
 | 
			
		||||
    {
 | 
			
		||||
        return 105;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Connect pattern to lexer
 | 
			
		||||
     * @param string $mode
 | 
			
		||||
     */
 | 
			
		||||
    public function connectTo($mode)
 | 
			
		||||
    {
 | 
			
		||||
        $this->Lexer->addSpecialPattern('\{\{changes>[^}]*\}\}', $mode, 'plugin_changes');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Handler to prepare matched data for the rendering process
 | 
			
		||||
     *
 | 
			
		||||
     * @param   string       $match   The text matched by the patterns
 | 
			
		||||
     * @param   int          $state   The lexer state for the match
 | 
			
		||||
     * @param   int          $pos     The character position of the matched text
 | 
			
		||||
     * @param   Doku_Handler $handler The Doku_Handler object
 | 
			
		||||
     * @return  array Return an array with all data you want to use in render
 | 
			
		||||
     */
 | 
			
		||||
    public function handle($match, $state, $pos, Doku_Handler $handler)
 | 
			
		||||
    {
 | 
			
		||||
        $match = substr($match, 10, -2);
 | 
			
		||||
 | 
			
		||||
        $data = [
 | 
			
		||||
            'ns' => [],
 | 
			
		||||
            'excludedpages' => [],
 | 
			
		||||
            'count' => 10,
 | 
			
		||||
            'type' => [],
 | 
			
		||||
            'render' => 'list',
 | 
			
		||||
            'render-flags' => [],
 | 
			
		||||
            'maxage' => null,
 | 
			
		||||
            'reverse' => false,
 | 
			
		||||
            'user' => [],
 | 
			
		||||
            'excludedusers' => [],
 | 
			
		||||
        ];
 | 
			
		||||
 | 
			
		||||
        $match = explode('&', $match);
 | 
			
		||||
        foreach ($match as $m) {
 | 
			
		||||
            if (is_numeric($m)) {
 | 
			
		||||
                $data['count'] = (int) $m;
 | 
			
		||||
            } else {
 | 
			
		||||
                if (preg_match('/(\w+)\s*=(.+)/', $m, $temp) == 1) {
 | 
			
		||||
                    $this->handleNamedParameter($temp[1], trim($temp[2]), $data);
 | 
			
		||||
                } else {
 | 
			
		||||
                    $this->addNamespace($data, trim($m));
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $data;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Handle parameters that are specified using <name>=<value> syntax
 | 
			
		||||
     * @param string $name
 | 
			
		||||
     * @param $value
 | 
			
		||||
     * @param array $data
 | 
			
		||||
     */
 | 
			
		||||
    protected function handleNamedParameter($name, $value, &$data)
 | 
			
		||||
    {
 | 
			
		||||
        global $ID;
 | 
			
		||||
 | 
			
		||||
        static $types = array('edit' => 'E', 'create' => 'C', 'delete' => 'D', 'minor' => 'e');
 | 
			
		||||
        static $renderers = array('list', 'pagelist');
 | 
			
		||||
 | 
			
		||||
        switch ($name) {
 | 
			
		||||
            case 'count':
 | 
			
		||||
            case 'maxage':
 | 
			
		||||
                $data[$name] = intval($value);
 | 
			
		||||
                break;
 | 
			
		||||
            case 'ns':
 | 
			
		||||
                foreach (preg_split('/\s*,\s*/', $value) as $value) {
 | 
			
		||||
                    $this->addNamespace($data, $value);
 | 
			
		||||
                }
 | 
			
		||||
                break;
 | 
			
		||||
            case 'type':
 | 
			
		||||
                foreach (preg_split('/\s*,\s*/', $value) as $value) {
 | 
			
		||||
                    if (array_key_exists($value, $types)) {
 | 
			
		||||
                        $data[$name][] = $types[$value];
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
                break;
 | 
			
		||||
            case 'render':
 | 
			
		||||
                // parse "name(flag1, flag2)" syntax
 | 
			
		||||
                if (preg_match('/(\w+)(?:\((.*)\))?/', $value, $match) == 1) {
 | 
			
		||||
                    if (in_array($match[1], $renderers)) {
 | 
			
		||||
                        $data[$name] = $match[1];
 | 
			
		||||
                        $flags = trim($match[2]);
 | 
			
		||||
                        if ($flags != '') {
 | 
			
		||||
                            $data['render-flags'] = preg_split('/\s*,\s*/', $flags);
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
                break;
 | 
			
		||||
            case 'user':
 | 
			
		||||
            case 'excludedusers':
 | 
			
		||||
                foreach (preg_split('/\s*,\s*/', $value) as $value) {
 | 
			
		||||
                    $data[$name][] = $value;
 | 
			
		||||
                }
 | 
			
		||||
                break;
 | 
			
		||||
            case 'excludedpages':
 | 
			
		||||
                foreach (preg_split('/\s*,\s*/', $value) as $page) {
 | 
			
		||||
                    if (!empty($page)) {
 | 
			
		||||
                        resolve_pageid(getNS($ID), $page, $exists);
 | 
			
		||||
                        $data[$name][] = $page;
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
                break;
 | 
			
		||||
            case 'reverse':
 | 
			
		||||
                $data[$name] = (bool)$value;
 | 
			
		||||
                break;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Clean-up the namespace name and add it (if valid) into the $data array
 | 
			
		||||
     * @param array $data
 | 
			
		||||
     * @param string $namespace
 | 
			
		||||
     */
 | 
			
		||||
    protected function addNamespace(&$data, $namespace)
 | 
			
		||||
    {
 | 
			
		||||
        if (empty($namespace)) return;
 | 
			
		||||
        $action = ($namespace[0] == '-') ? 'exclude' : 'include';
 | 
			
		||||
        $namespace = cleanID(preg_replace('/^[+-]/', '', $namespace));
 | 
			
		||||
        if (!empty($namespace)) {
 | 
			
		||||
            $data['ns'][$action][] = $namespace;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Handles the actual output creation.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $mode output format being rendered
 | 
			
		||||
     * @param Doku_Renderer $R the current renderer object
 | 
			
		||||
     * @param array $data data created by handler()
 | 
			
		||||
     * @return  boolean                 rendered correctly?
 | 
			
		||||
     */
 | 
			
		||||
    public function render($mode, Doku_Renderer $R, $data)
 | 
			
		||||
    {
 | 
			
		||||
        if ($mode === 'xhtml') {
 | 
			
		||||
            /* @var Doku_Renderer_xhtml $R */
 | 
			
		||||
            $R->info['cache'] = false;
 | 
			
		||||
            $changes = $this->getChanges(
 | 
			
		||||
                $data['count'],
 | 
			
		||||
                $data['ns'],
 | 
			
		||||
                $data['excludedpages'],
 | 
			
		||||
                $data['type'],
 | 
			
		||||
                $data['user'],
 | 
			
		||||
                $data['maxage'],
 | 
			
		||||
                $data['excludedusers'],
 | 
			
		||||
                $data['reverse']
 | 
			
		||||
            );
 | 
			
		||||
            if (!count($changes)) return true;
 | 
			
		||||
 | 
			
		||||
            switch ($data['render']) {
 | 
			
		||||
                case 'list':
 | 
			
		||||
                    $this->renderSimpleList($changes, $R, $data['render-flags']);
 | 
			
		||||
                    break;
 | 
			
		||||
                case 'pagelist':
 | 
			
		||||
                    $this->renderPageList($changes, $R, $data['render-flags']);
 | 
			
		||||
                    break;
 | 
			
		||||
            }
 | 
			
		||||
            return true;
 | 
			
		||||
        } elseif ($mode === 'metadata') {
 | 
			
		||||
            /* @var Doku_Renderer_metadata $R */
 | 
			
		||||
            global $conf;
 | 
			
		||||
            $R->meta['relation']['depends']['rendering'][$conf['changelog']] = true;
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Based on getRecents() from inc/changelog.php
 | 
			
		||||
     *
 | 
			
		||||
     * @param int   $num
 | 
			
		||||
     * @param array $ns
 | 
			
		||||
     * @param array $excludedpages
 | 
			
		||||
     * @param array $type
 | 
			
		||||
     * @param array $user
 | 
			
		||||
     * @param int   $maxage
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    protected function getChanges($num, $ns, $excludedpages, $type, $user, $maxage, $excludedusers, $reverse)
 | 
			
		||||
    {
 | 
			
		||||
        global $conf;
 | 
			
		||||
        $changes = array();
 | 
			
		||||
        $seen = array();
 | 
			
		||||
        $count = 0;
 | 
			
		||||
        $lines = array();
 | 
			
		||||
 | 
			
		||||
        // Get global changelog
 | 
			
		||||
        if (file_exists($conf['changelog']) && is_readable($conf['changelog'])) {
 | 
			
		||||
            $lines = @file($conf['changelog']);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Merge media changelog
 | 
			
		||||
        if ($this->getConf('listmedia')) {
 | 
			
		||||
            if (file_exists($conf['media_changelog']) && is_readable($conf['media_changelog'])) {
 | 
			
		||||
                $linesMedia = @file($conf['media_changelog']);
 | 
			
		||||
                // Add a tag to identiy the media lines
 | 
			
		||||
                foreach ($linesMedia as $key => $value) {
 | 
			
		||||
                    $value = parseChangelogLine($value);
 | 
			
		||||
                    $value['extra'] = 'media';
 | 
			
		||||
                    $linesMedia[$key] = implode("\t", $value) . "\n";
 | 
			
		||||
                }
 | 
			
		||||
                $lines = array_merge($lines, $linesMedia);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (is_null($maxage)) {
 | 
			
		||||
            $maxage = (int) $conf['recent_days'] * 60 * 60 * 24;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        for ($i = count($lines) - 1; $i >= 0; $i--) {
 | 
			
		||||
            $change = $this->handleChangelogLine(
 | 
			
		||||
                $lines[$i],
 | 
			
		||||
                $ns,
 | 
			
		||||
                $excludedpages,
 | 
			
		||||
                $type,
 | 
			
		||||
                $user,
 | 
			
		||||
                $maxage,
 | 
			
		||||
                $seen,
 | 
			
		||||
                $excludedusers
 | 
			
		||||
            );
 | 
			
		||||
            if ($change !== false) {
 | 
			
		||||
                $changes[] = $change;
 | 
			
		||||
                // break when we have enough entries
 | 
			
		||||
                if (++$count >= $num) break;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Date sort merged page and media changes
 | 
			
		||||
        if ($this->getConf('listmedia') || $reverse) {
 | 
			
		||||
            $dates = array();
 | 
			
		||||
            foreach ($changes as $change) {
 | 
			
		||||
                $dates[] = $change['date'];
 | 
			
		||||
            }
 | 
			
		||||
            array_multisort($dates, ($reverse ? SORT_ASC : SORT_DESC), $changes);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $changes;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Based on _handleRecent() from inc/changelog.php
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $line
 | 
			
		||||
     * @param array  $ns
 | 
			
		||||
     * @param array  $excludedpages
 | 
			
		||||
     * @param array  $type
 | 
			
		||||
     * @param array  $user
 | 
			
		||||
     * @param int    $maxage
 | 
			
		||||
     * @param array  $seen
 | 
			
		||||
     * @return array|bool
 | 
			
		||||
     */
 | 
			
		||||
    protected function handleChangelogLine($line, $ns, $excludedpages, $type, $user, $maxage, &$seen, $excludedusers)
 | 
			
		||||
    {
 | 
			
		||||
        // split the line into parts
 | 
			
		||||
        $change = parseChangelogLine($line);
 | 
			
		||||
        if ($change === false) return false;
 | 
			
		||||
 | 
			
		||||
        // skip seen ones
 | 
			
		||||
        if (isset($seen[$change['id']])) return false;
 | 
			
		||||
 | 
			
		||||
        // filter type
 | 
			
		||||
        if (!empty($type) && !in_array($change['type'], $type)) return false;
 | 
			
		||||
 | 
			
		||||
        // filter user
 | 
			
		||||
        if (!empty($user) && (empty($change['user']) || !in_array($change['user'], $user))) return false;
 | 
			
		||||
 | 
			
		||||
        // remember in seen to skip additional sights
 | 
			
		||||
        $seen[$change['id']] = 1;
 | 
			
		||||
 | 
			
		||||
        // show only not existing pages for delete
 | 
			
		||||
        if ($change['extra'] != 'media' && $change['type'] != 'D' && !page_exists($change['id'])) return false;
 | 
			
		||||
 | 
			
		||||
        // filter maxage
 | 
			
		||||
        if ($maxage && $change['date'] < (time() - $maxage)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // check if it's a hidden page
 | 
			
		||||
        if (isHiddenPage($change['id'])) return false;
 | 
			
		||||
 | 
			
		||||
        // filter included namespaces
 | 
			
		||||
        if (isset($ns['include'])) {
 | 
			
		||||
            if (!$this->isInNamespace($ns['include'], $change['id'])) return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // filter excluded namespaces
 | 
			
		||||
        if (isset($ns['exclude'])) {
 | 
			
		||||
            if ($this->isInNamespace($ns['exclude'], $change['id'])) return false;
 | 
			
		||||
        }
 | 
			
		||||
        // exclude pages
 | 
			
		||||
        if (!empty($excludedpages)) {
 | 
			
		||||
            foreach ($excludedpages as $page) {
 | 
			
		||||
                if ($change['id'] == $page) return false;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // exclude users
 | 
			
		||||
        if (!empty($excludedusers)) {
 | 
			
		||||
            foreach ($excludedusers as $user) {
 | 
			
		||||
                if ($change['user'] == $user) return false;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // check ACL
 | 
			
		||||
        $change['perms'] = auth_quickaclcheck($change['id']);
 | 
			
		||||
        if ($change['perms'] < AUTH_READ) return false;
 | 
			
		||||
 | 
			
		||||
        return $change;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if page belongs to one of namespaces in the list
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $namespaces
 | 
			
		||||
     * @param string $id page id
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    protected function isInNamespace($namespaces, $id)
 | 
			
		||||
    {
 | 
			
		||||
        foreach ($namespaces as $ns) {
 | 
			
		||||
            if ((strpos($id, $ns . ':') === 0)) return true;
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Render via the Pagelist plugin
 | 
			
		||||
     *
 | 
			
		||||
     * @param $changes
 | 
			
		||||
     * @param Doku_Renderer_xhtml $R
 | 
			
		||||
     * @param $flags
 | 
			
		||||
     */
 | 
			
		||||
    protected function renderPageList($changes, &$R, $flags)
 | 
			
		||||
    {
 | 
			
		||||
        /** @var helper_plugin_pagelist $pagelist */
 | 
			
		||||
        $pagelist = @plugin_load('helper', 'pagelist');
 | 
			
		||||
        if ($pagelist) {
 | 
			
		||||
            $pagelist->setFlags($flags);
 | 
			
		||||
            $pagelist->startList();
 | 
			
		||||
            foreach ($changes as $change) {
 | 
			
		||||
                if ($change['extra'] == 'media') continue;
 | 
			
		||||
                $page['id'] = $change['id'];
 | 
			
		||||
                $page['date'] = $change['date'];
 | 
			
		||||
                $page['user'] = $this->getUserName($change);
 | 
			
		||||
                $page['desc'] = $change['sum'];
 | 
			
		||||
                $pagelist->addPage($page);
 | 
			
		||||
            }
 | 
			
		||||
            $R->doc .= $pagelist->finishList();
 | 
			
		||||
        } else {
 | 
			
		||||
            // Fallback to the simple list renderer
 | 
			
		||||
            $this->renderSimpleList($changes, $R);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Render the day header
 | 
			
		||||
     *
 | 
			
		||||
     * @param Doku_Renderer $R
 | 
			
		||||
     * @param int $date
 | 
			
		||||
     */
 | 
			
		||||
    protected function dayheader(&$R, $date)
 | 
			
		||||
    {
 | 
			
		||||
        if ($R->getFormat() == 'xhtml') {
 | 
			
		||||
            /* @var Doku_Renderer_xhtml $R  */
 | 
			
		||||
            $R->doc .= '<h3 class="changes">';
 | 
			
		||||
            $R->cdata(dformat($date, $this->getConf('dayheaderfmt')));
 | 
			
		||||
            $R->doc .= '</h3>';
 | 
			
		||||
        } else {
 | 
			
		||||
            $R->header(dformat($date, $this->getConf('dayheaderfmt')), 3, 0);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Render with a simple list render
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $changes
 | 
			
		||||
     * @param Doku_Renderer_xhtml $R
 | 
			
		||||
     * @param null $flags
 | 
			
		||||
     */
 | 
			
		||||
    protected function renderSimpleList($changes, &$R, $flags = null)
 | 
			
		||||
    {
 | 
			
		||||
        global $conf;
 | 
			
		||||
        $flags = $this->parseSimpleListFlags($flags);
 | 
			
		||||
 | 
			
		||||
        $dayheaders_date = '';
 | 
			
		||||
        if ($flags['dayheaders']) {
 | 
			
		||||
            $dayheaders_date = date('Ymd', $changes[0]['date']);
 | 
			
		||||
            $this->dayheader($R, $changes[0]['date']);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $R->listu_open();
 | 
			
		||||
        foreach ($changes as $change) {
 | 
			
		||||
            if ($flags['dayheaders']) {
 | 
			
		||||
                $tdate = date('Ymd', $change['date']);
 | 
			
		||||
                if ($tdate != $dayheaders_date) {
 | 
			
		||||
                    $R->listu_close(); // break list to insert new header
 | 
			
		||||
                    $this->dayheader($R, $change['date']);
 | 
			
		||||
                    $R->listu_open();
 | 
			
		||||
                    $dayheaders_date = $tdate;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $R->listitem_open(1);
 | 
			
		||||
            $R->listcontent_open();
 | 
			
		||||
            if (trim($change['extra']) == 'media') {
 | 
			
		||||
                $R->internalmedia(':' . $change['id'], null, null, null, null, null, 'linkonly');
 | 
			
		||||
            } else {
 | 
			
		||||
                $R->internallink(':' . $change['id'], null, null, false, 'navigation');
 | 
			
		||||
            }
 | 
			
		||||
            if ($flags['summary']) {
 | 
			
		||||
                $R->cdata(' ' . $change['sum']);
 | 
			
		||||
            }
 | 
			
		||||
            if ($flags['signature']) {
 | 
			
		||||
                $user = $this->getUserName($change);
 | 
			
		||||
                $date = strftime($conf['dformat'], $change['date']);
 | 
			
		||||
                $R->cdata(' ');
 | 
			
		||||
                $R->entity('---');
 | 
			
		||||
                $R->cdata(' ');
 | 
			
		||||
                $R->emphasis_open();
 | 
			
		||||
                $R->cdata($user . ' ' . $date);
 | 
			
		||||
                $R->emphasis_close();
 | 
			
		||||
            }
 | 
			
		||||
            $R->listcontent_close();
 | 
			
		||||
            $R->listitem_close();
 | 
			
		||||
        }
 | 
			
		||||
        $R->listu_close();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Parse flags for the simple list render
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $flags
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    protected function parseSimpleListFlags($flags)
 | 
			
		||||
    {
 | 
			
		||||
        $outFlags = array('summary' => true, 'signature' => false, 'dayheaders' => false);
 | 
			
		||||
        if (!empty($flags)) {
 | 
			
		||||
            foreach ($flags as $flag) {
 | 
			
		||||
                if (array_key_exists($flag, $outFlags)) {
 | 
			
		||||
                    $outFlags[$flag] = true;
 | 
			
		||||
                } elseif (substr($flag, 0, 2) == 'no') {
 | 
			
		||||
                    $flag = substr($flag, 2);
 | 
			
		||||
                    if (array_key_exists($flag, $outFlags)) {
 | 
			
		||||
                        $outFlags[$flag] = false;
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return $outFlags;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get username or fallback to ip
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $change
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    protected function getUserName($change)
 | 
			
		||||
    {
 | 
			
		||||
        /* @var DokuWiki_Auth_Plugin $auth */
 | 
			
		||||
        global $auth;
 | 
			
		||||
        if (!empty($change['user'])) {
 | 
			
		||||
            $user = $auth->getUserData($change['user']);
 | 
			
		||||
            if (empty($user)) {
 | 
			
		||||
                return $change['user'];
 | 
			
		||||
            } else {
 | 
			
		||||
                return $user['name'];
 | 
			
		||||
            }
 | 
			
		||||
        } else {
 | 
			
		||||
            return $change['ip'];
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										339
									
								
								lib/plugins/ckgedit/LICENSE
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,339 @@
 | 
			
		||||
                    GNU GENERAL PUBLIC LICENSE
 | 
			
		||||
                       Version 2, June 1991
 | 
			
		||||
 | 
			
		||||
 Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
 | 
			
		||||
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 | 
			
		||||
 Everyone is permitted to copy and distribute verbatim copies
 | 
			
		||||
 of this license document, but changing it is not allowed.
 | 
			
		||||
 | 
			
		||||
                            Preamble
 | 
			
		||||
 | 
			
		||||
  The licenses for most software are designed to take away your
 | 
			
		||||
freedom to share and change it.  By contrast, the GNU General Public
 | 
			
		||||
License is intended to guarantee your freedom to share and change free
 | 
			
		||||
software--to make sure the software is free for all its users.  This
 | 
			
		||||
General Public License applies to most of the Free Software
 | 
			
		||||
Foundation's software and to any other program whose authors commit to
 | 
			
		||||
using it.  (Some other Free Software Foundation software is covered by
 | 
			
		||||
the GNU Lesser General Public License instead.)  You can apply it to
 | 
			
		||||
your programs, too.
 | 
			
		||||
 | 
			
		||||
  When we speak of free software, we are referring to freedom, not
 | 
			
		||||
price.  Our General Public Licenses are designed to make sure that you
 | 
			
		||||
have the freedom to distribute copies of free software (and charge for
 | 
			
		||||
this service if you wish), that you receive source code or can get it
 | 
			
		||||
if you want it, that you can change the software or use pieces of it
 | 
			
		||||
in new free programs; and that you know you can do these things.
 | 
			
		||||
 | 
			
		||||
  To protect your rights, we need to make restrictions that forbid
 | 
			
		||||
anyone to deny you these rights or to ask you to surrender the rights.
 | 
			
		||||
These restrictions translate to certain responsibilities for you if you
 | 
			
		||||
distribute copies of the software, or if you modify it.
 | 
			
		||||
 | 
			
		||||
  For example, if you distribute copies of such a program, whether
 | 
			
		||||
gratis or for a fee, you must give the recipients all the rights that
 | 
			
		||||
you have.  You must make sure that they, too, receive or can get the
 | 
			
		||||
source code.  And you must show them these terms so they know their
 | 
			
		||||
rights.
 | 
			
		||||
 | 
			
		||||
  We protect your rights with two steps: (1) copyright the software, and
 | 
			
		||||
(2) offer you this license which gives you legal permission to copy,
 | 
			
		||||
distribute and/or modify the software.
 | 
			
		||||
 | 
			
		||||
  Also, for each author's protection and ours, we want to make certain
 | 
			
		||||
that everyone understands that there is no warranty for this free
 | 
			
		||||
software.  If the software is modified by someone else and passed on, we
 | 
			
		||||
want its recipients to know that what they have is not the original, so
 | 
			
		||||
that any problems introduced by others will not reflect on the original
 | 
			
		||||
authors' reputations.
 | 
			
		||||
 | 
			
		||||
  Finally, any free program is threatened constantly by software
 | 
			
		||||
patents.  We wish to avoid the danger that redistributors of a free
 | 
			
		||||
program will individually obtain patent licenses, in effect making the
 | 
			
		||||
program proprietary.  To prevent this, we have made it clear that any
 | 
			
		||||
patent must be licensed for everyone's free use or not licensed at all.
 | 
			
		||||
 | 
			
		||||
  The precise terms and conditions for copying, distribution and
 | 
			
		||||
modification follow.
 | 
			
		||||
 | 
			
		||||
                    GNU GENERAL PUBLIC LICENSE
 | 
			
		||||
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 | 
			
		||||
 | 
			
		||||
  0. This License applies to any program or other work which contains
 | 
			
		||||
a notice placed by the copyright holder saying it may be distributed
 | 
			
		||||
under the terms of this General Public License.  The "Program", below,
 | 
			
		||||
refers to any such program or work, and a "work based on the Program"
 | 
			
		||||
means either the Program or any derivative work under copyright law:
 | 
			
		||||
that is to say, a work containing the Program or a portion of it,
 | 
			
		||||
either verbatim or with modifications and/or translated into another
 | 
			
		||||
language.  (Hereinafter, translation is included without limitation in
 | 
			
		||||
the term "modification".)  Each licensee is addressed as "you".
 | 
			
		||||
 | 
			
		||||
Activities other than copying, distribution and modification are not
 | 
			
		||||
covered by this License; they are outside its scope.  The act of
 | 
			
		||||
running the Program is not restricted, and the output from the Program
 | 
			
		||||
is covered only if its contents constitute a work based on the
 | 
			
		||||
Program (independent of having been made by running the Program).
 | 
			
		||||
Whether that is true depends on what the Program does.
 | 
			
		||||
 | 
			
		||||
  1. You may copy and distribute verbatim copies of the Program's
 | 
			
		||||
source code as you receive it, in any medium, provided that you
 | 
			
		||||
conspicuously and appropriately publish on each copy an appropriate
 | 
			
		||||
copyright notice and disclaimer of warranty; keep intact all the
 | 
			
		||||
notices that refer to this License and to the absence of any warranty;
 | 
			
		||||
and give any other recipients of the Program a copy of this License
 | 
			
		||||
along with the Program.
 | 
			
		||||
 | 
			
		||||
You may charge a fee for the physical act of transferring a copy, and
 | 
			
		||||
you may at your option offer warranty protection in exchange for a fee.
 | 
			
		||||
 | 
			
		||||
  2. You may modify your copy or copies of the Program or any portion
 | 
			
		||||
of it, thus forming a work based on the Program, and copy and
 | 
			
		||||
distribute such modifications or work under the terms of Section 1
 | 
			
		||||
above, provided that you also meet all of these conditions:
 | 
			
		||||
 | 
			
		||||
    a) You must cause the modified files to carry prominent notices
 | 
			
		||||
    stating that you changed the files and the date of any change.
 | 
			
		||||
 | 
			
		||||
    b) You must cause any work that you distribute or publish, that in
 | 
			
		||||
    whole or in part contains or is derived from the Program or any
 | 
			
		||||
    part thereof, to be licensed as a whole at no charge to all third
 | 
			
		||||
    parties under the terms of this License.
 | 
			
		||||
 | 
			
		||||
    c) If the modified program normally reads commands interactively
 | 
			
		||||
    when run, you must cause it, when started running for such
 | 
			
		||||
    interactive use in the most ordinary way, to print or display an
 | 
			
		||||
    announcement including an appropriate copyright notice and a
 | 
			
		||||
    notice that there is no warranty (or else, saying that you provide
 | 
			
		||||
    a warranty) and that users may redistribute the program under
 | 
			
		||||
    these conditions, and telling the user how to view a copy of this
 | 
			
		||||
    License.  (Exception: if the Program itself is interactive but
 | 
			
		||||
    does not normally print such an announcement, your work based on
 | 
			
		||||
    the Program is not required to print an announcement.)
 | 
			
		||||
 | 
			
		||||
These requirements apply to the modified work as a whole.  If
 | 
			
		||||
identifiable sections of that work are not derived from the Program,
 | 
			
		||||
and can be reasonably considered independent and separate works in
 | 
			
		||||
themselves, then this License, and its terms, do not apply to those
 | 
			
		||||
sections when you distribute them as separate works.  But when you
 | 
			
		||||
distribute the same sections as part of a whole which is a work based
 | 
			
		||||
on the Program, the distribution of the whole must be on the terms of
 | 
			
		||||
this License, whose permissions for other licensees extend to the
 | 
			
		||||
entire whole, and thus to each and every part regardless of who wrote it.
 | 
			
		||||
 | 
			
		||||
Thus, it is not the intent of this section to claim rights or contest
 | 
			
		||||
your rights to work written entirely by you; rather, the intent is to
 | 
			
		||||
exercise the right to control the distribution of derivative or
 | 
			
		||||
collective works based on the Program.
 | 
			
		||||
 | 
			
		||||
In addition, mere aggregation of another work not based on the Program
 | 
			
		||||
with the Program (or with a work based on the Program) on a volume of
 | 
			
		||||
a storage or distribution medium does not bring the other work under
 | 
			
		||||
the scope of this License.
 | 
			
		||||
 | 
			
		||||
  3. You may copy and distribute the Program (or a work based on it,
 | 
			
		||||
under Section 2) in object code or executable form under the terms of
 | 
			
		||||
Sections 1 and 2 above provided that you also do one of the following:
 | 
			
		||||
 | 
			
		||||
    a) Accompany it with the complete corresponding machine-readable
 | 
			
		||||
    source code, which must be distributed under the terms of Sections
 | 
			
		||||
    1 and 2 above on a medium customarily used for software interchange; or,
 | 
			
		||||
 | 
			
		||||
    b) Accompany it with a written offer, valid for at least three
 | 
			
		||||
    years, to give any third party, for a charge no more than your
 | 
			
		||||
    cost of physically performing source distribution, a complete
 | 
			
		||||
    machine-readable copy of the corresponding source code, to be
 | 
			
		||||
    distributed under the terms of Sections 1 and 2 above on a medium
 | 
			
		||||
    customarily used for software interchange; or,
 | 
			
		||||
 | 
			
		||||
    c) Accompany it with the information you received as to the offer
 | 
			
		||||
    to distribute corresponding source code.  (This alternative is
 | 
			
		||||
    allowed only for noncommercial distribution and only if you
 | 
			
		||||
    received the program in object code or executable form with such
 | 
			
		||||
    an offer, in accord with Subsection b above.)
 | 
			
		||||
 | 
			
		||||
The source code for a work means the preferred form of the work for
 | 
			
		||||
making modifications to it.  For an executable work, complete source
 | 
			
		||||
code means all the source code for all modules it contains, plus any
 | 
			
		||||
associated interface definition files, plus the scripts used to
 | 
			
		||||
control compilation and installation of the executable.  However, as a
 | 
			
		||||
special exception, the source code distributed need not include
 | 
			
		||||
anything that is normally distributed (in either source or binary
 | 
			
		||||
form) with the major components (compiler, kernel, and so on) of the
 | 
			
		||||
operating system on which the executable runs, unless that component
 | 
			
		||||
itself accompanies the executable.
 | 
			
		||||
 | 
			
		||||
If distribution of executable or object code is made by offering
 | 
			
		||||
access to copy from a designated place, then offering equivalent
 | 
			
		||||
access to copy the source code from the same place counts as
 | 
			
		||||
distribution of the source code, even though third parties are not
 | 
			
		||||
compelled to copy the source along with the object code.
 | 
			
		||||
 | 
			
		||||
  4. You may not copy, modify, sublicense, or distribute the Program
 | 
			
		||||
except as expressly provided under this License.  Any attempt
 | 
			
		||||
otherwise to copy, modify, sublicense or distribute the Program is
 | 
			
		||||
void, and will automatically terminate your rights under this License.
 | 
			
		||||
However, parties who have received copies, or rights, from you under
 | 
			
		||||
this License will not have their licenses terminated so long as such
 | 
			
		||||
parties remain in full compliance.
 | 
			
		||||
 | 
			
		||||
  5. You are not required to accept this License, since you have not
 | 
			
		||||
signed it.  However, nothing else grants you permission to modify or
 | 
			
		||||
distribute the Program or its derivative works.  These actions are
 | 
			
		||||
prohibited by law if you do not accept this License.  Therefore, by
 | 
			
		||||
modifying or distributing the Program (or any work based on the
 | 
			
		||||
Program), you indicate your acceptance of this License to do so, and
 | 
			
		||||
all its terms and conditions for copying, distributing or modifying
 | 
			
		||||
the Program or works based on it.
 | 
			
		||||
 | 
			
		||||
  6. Each time you redistribute the Program (or any work based on the
 | 
			
		||||
Program), the recipient automatically receives a license from the
 | 
			
		||||
original licensor to copy, distribute or modify the Program subject to
 | 
			
		||||
these terms and conditions.  You may not impose any further
 | 
			
		||||
restrictions on the recipients' exercise of the rights granted herein.
 | 
			
		||||
You are not responsible for enforcing compliance by third parties to
 | 
			
		||||
this License.
 | 
			
		||||
 | 
			
		||||
  7. If, as a consequence of a court judgment or allegation of patent
 | 
			
		||||
infringement or for any other reason (not limited to patent issues),
 | 
			
		||||
conditions are imposed on you (whether by court order, agreement or
 | 
			
		||||
otherwise) that contradict the conditions of this License, they do not
 | 
			
		||||
excuse you from the conditions of this License.  If you cannot
 | 
			
		||||
distribute so as to satisfy simultaneously your obligations under this
 | 
			
		||||
License and any other pertinent obligations, then as a consequence you
 | 
			
		||||
may not distribute the Program at all.  For example, if a patent
 | 
			
		||||
license would not permit royalty-free redistribution of the Program by
 | 
			
		||||
all those who receive copies directly or indirectly through you, then
 | 
			
		||||
the only way you could satisfy both it and this License would be to
 | 
			
		||||
refrain entirely from distribution of the Program.
 | 
			
		||||
 | 
			
		||||
If any portion of this section is held invalid or unenforceable under
 | 
			
		||||
any particular circumstance, the balance of the section is intended to
 | 
			
		||||
apply and the section as a whole is intended to apply in other
 | 
			
		||||
circumstances.
 | 
			
		||||
 | 
			
		||||
It is not the purpose of this section to induce you to infringe any
 | 
			
		||||
patents or other property right claims or to contest validity of any
 | 
			
		||||
such claims; this section has the sole purpose of protecting the
 | 
			
		||||
integrity of the free software distribution system, which is
 | 
			
		||||
implemented by public license practices.  Many people have made
 | 
			
		||||
generous contributions to the wide range of software distributed
 | 
			
		||||
through that system in reliance on consistent application of that
 | 
			
		||||
system; it is up to the author/donor to decide if he or she is willing
 | 
			
		||||
to distribute software through any other system and a licensee cannot
 | 
			
		||||
impose that choice.
 | 
			
		||||
 | 
			
		||||
This section is intended to make thoroughly clear what is believed to
 | 
			
		||||
be a consequence of the rest of this License.
 | 
			
		||||
 | 
			
		||||
  8. If the distribution and/or use of the Program is restricted in
 | 
			
		||||
certain countries either by patents or by copyrighted interfaces, the
 | 
			
		||||
original copyright holder who places the Program under this License
 | 
			
		||||
may add an explicit geographical distribution limitation excluding
 | 
			
		||||
those countries, so that distribution is permitted only in or among
 | 
			
		||||
countries not thus excluded.  In such case, this License incorporates
 | 
			
		||||
the limitation as if written in the body of this License.
 | 
			
		||||
 | 
			
		||||
  9. The Free Software Foundation may publish revised and/or new versions
 | 
			
		||||
of the General Public License from time to time.  Such new versions will
 | 
			
		||||
be similar in spirit to the present version, but may differ in detail to
 | 
			
		||||
address new problems or concerns.
 | 
			
		||||
 | 
			
		||||
Each version is given a distinguishing version number.  If the Program
 | 
			
		||||
specifies a version number of this License which applies to it and "any
 | 
			
		||||
later version", you have the option of following the terms and conditions
 | 
			
		||||
either of that version or of any later version published by the Free
 | 
			
		||||
Software Foundation.  If the Program does not specify a version number of
 | 
			
		||||
this License, you may choose any version ever published by the Free Software
 | 
			
		||||
Foundation.
 | 
			
		||||
 | 
			
		||||
  10. If you wish to incorporate parts of the Program into other free
 | 
			
		||||
programs whose distribution conditions are different, write to the author
 | 
			
		||||
to ask for permission.  For software which is copyrighted by the Free
 | 
			
		||||
Software Foundation, write to the Free Software Foundation; we sometimes
 | 
			
		||||
make exceptions for this.  Our decision will be guided by the two goals
 | 
			
		||||
of preserving the free status of all derivatives of our free software and
 | 
			
		||||
of promoting the sharing and reuse of software generally.
 | 
			
		||||
 | 
			
		||||
                            NO WARRANTY
 | 
			
		||||
 | 
			
		||||
  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
 | 
			
		||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
 | 
			
		||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
 | 
			
		||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
 | 
			
		||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 | 
			
		||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
 | 
			
		||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
 | 
			
		||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
 | 
			
		||||
REPAIR OR CORRECTION.
 | 
			
		||||
 | 
			
		||||
  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
 | 
			
		||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
 | 
			
		||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
 | 
			
		||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
 | 
			
		||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
 | 
			
		||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
 | 
			
		||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
 | 
			
		||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 | 
			
		||||
POSSIBILITY OF SUCH DAMAGES.
 | 
			
		||||
 | 
			
		||||
                     END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
            How to Apply These Terms to Your New Programs
 | 
			
		||||
 | 
			
		||||
  If you develop a new program, and you want it to be of the greatest
 | 
			
		||||
possible use to the public, the best way to achieve this is to make it
 | 
			
		||||
free software which everyone can redistribute and change under these terms.
 | 
			
		||||
 | 
			
		||||
  To do so, attach the following notices to the program.  It is safest
 | 
			
		||||
to attach them to the start of each source file to most effectively
 | 
			
		||||
convey the exclusion of warranty; and each file should have at least
 | 
			
		||||
the "copyright" line and a pointer to where the full notice is found.
 | 
			
		||||
 | 
			
		||||
    <one line to give the program's name and a brief idea of what it does.>
 | 
			
		||||
    Copyright (C) <year>  <name of author>
 | 
			
		||||
 | 
			
		||||
    This program is free software; you can redistribute it and/or modify
 | 
			
		||||
    it under the terms of the GNU General Public License as published by
 | 
			
		||||
    the Free Software Foundation; either version 2 of the License, or
 | 
			
		||||
    (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
    This program is distributed in the hope that it will be useful,
 | 
			
		||||
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
    GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
    You should have received a copy of the GNU General Public License along
 | 
			
		||||
    with this program; if not, write to the Free Software Foundation, Inc.,
 | 
			
		||||
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
			
		||||
 | 
			
		||||
Also add information on how to contact you by electronic and paper mail.
 | 
			
		||||
 | 
			
		||||
If the program is interactive, make it output a short notice like this
 | 
			
		||||
when it starts in an interactive mode:
 | 
			
		||||
 | 
			
		||||
    Gnomovision version 69, Copyright (C) year name of author
 | 
			
		||||
    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
 | 
			
		||||
    This is free software, and you are welcome to redistribute it
 | 
			
		||||
    under certain conditions; type `show c' for details.
 | 
			
		||||
 | 
			
		||||
The hypothetical commands `show w' and `show c' should show the appropriate
 | 
			
		||||
parts of the General Public License.  Of course, the commands you use may
 | 
			
		||||
be called something other than `show w' and `show c'; they could even be
 | 
			
		||||
mouse-clicks or menu items--whatever suits your program.
 | 
			
		||||
 | 
			
		||||
You should also get your employer (if you work as a programmer) or your
 | 
			
		||||
school, if any, to sign a "copyright disclaimer" for the program, if
 | 
			
		||||
necessary.  Here is a sample; alter the names:
 | 
			
		||||
 | 
			
		||||
  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
 | 
			
		||||
  `Gnomovision' (which makes passes at compilers) written by James Hacker.
 | 
			
		||||
 | 
			
		||||
  <signature of Ty Coon>, 1 April 1989
 | 
			
		||||
  Ty Coon, President of Vice
 | 
			
		||||
 | 
			
		||||
This General Public License does not permit incorporating your program into
 | 
			
		||||
proprietary programs.  If your program is a subroutine library, you may
 | 
			
		||||
consider it more useful to permit linking proprietary applications with the
 | 
			
		||||
library.  If this is what you want to do, use the GNU Lesser General
 | 
			
		||||
Public License instead of this License.
 | 
			
		||||
							
								
								
									
										14
									
								
								lib/plugins/ckgedit/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,14 @@
 | 
			
		||||
ckgedit is a WYSIWYG editor for Dokuwiki.  It is an implementation of fckgLite which replaces the
 | 
			
		||||
FCKEditor with the more current CKEditor. Whereas the base directory for fckgLite is named fckg, the 
 | 
			
		||||
base directory for this version is ckgedit. However, only one of the two can
 | 
			
		||||
be enabled at any one time.  
 | 
			
		||||
 | 
			
		||||
This version of ckgeditor should work with Linux, Windows, and versions of Dokuwiki installed with the 
 | 
			
		||||
Ubuntu/Debian package manager.
 | 
			
		||||
 | 
			
		||||
This branch uses CKEditor 4.11.4
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										29
									
								
								lib/plugins/ckgedit/action/delete.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,29 @@
 | 
			
		||||
<?php
 | 
			
		||||
if(!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__).'/../../../').'/');
 | 
			
		||||
if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
 | 
			
		||||
require_once(DOKU_PLUGIN.'action.php');
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 * @author     Pierre Spring <pierre.spring@liip.ch>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
class action_plugin_ckgedit_delete extends DokuWiki_Action_Plugin {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    function register(Doku_Event_Handler $controller) {
 | 
			
		||||
        $controller->register_hook('DOKUWIKI_STARTED', 'BEFORE', $this, 'ckgedit_delete_preprocess');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    function ckgedit_delete_preprocess(Doku_Event $event){
 | 
			
		||||
        global $ACT;
 | 
			
		||||
        if (! is_array($ACT) || !(isset($ACT['delete']))) return;
 | 
			
		||||
        global $TEXT;
 | 
			
		||||
        $TEXT = NULL;
 | 
			
		||||
        unset($ACT['delete']);
 | 
			
		||||
        $ACT['save'] = "Speichern";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
} //end of action class
 | 
			
		||||
?>
 | 
			
		||||
							
								
								
									
										1357
									
								
								lib/plugins/ckgedit/action/edit.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1
									
								
								lib/plugins/ckgedit/action/ent.ser
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										55
									
								
								lib/plugins/ckgedit/action/entities/ENTITIES.HOWTO
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,55 @@
 | 
			
		||||
Adding Entities to the Entities Defintions Array.
 | 
			
		||||
 | 
			
		||||
You create an Entity definition file with the format illustrated below, and then run the php
 | 
			
		||||
script  ents_seri.php
 | 
			
		||||
 | 
			
		||||
Name your definitions file add.ent
 | 
			
		||||
 | 
			
		||||
Then at the command line type:
 | 
			
		||||
    php ents_seri.php
 | 
			
		||||
 | 
			
		||||
Alternatively, you can give your entity definition file any name you want and feed
 | 
			
		||||
the file name to the script at the command line:
 | 
			
		||||
         php ents_seri.php  your_entity_file     
 | 
			
		||||
 | 
			
		||||
This creates a new entities file called ent.ser, which must then be copied to
 | 
			
		||||
the fckg/action subdirectory.  You would be wise to first back up the original ent.ser 
 | 
			
		||||
before over-writing it.
 | 
			
		||||
 | 
			
		||||
There are two definition files in the action/entities:  ents.data  and fcked-ents.data.
 | 
			
		||||
These are required and must not be removed from the directory.
 | 
			
		||||
 | 
			
		||||
The definition file has the following format:
 | 
			
		||||
 | 
			
		||||
character
 | 
			
		||||
entity numeric code
 | 
			
		||||
entity character code
 | 
			
		||||
 | 
			
		||||
character
 | 
			
		||||
entity numeric code
 | 
			
		||||
entity character code
 | 
			
		||||
 | 
			
		||||
etc.
 | 
			
		||||
 | 
			
		||||
There is one empty line between each definition.  Here is an actual example.
 | 
			
		||||
 
 | 
			
		||||
<
 | 
			
		||||
<
 | 
			
		||||
<
 | 
			
		||||
 | 
			
		||||
>
 | 
			
		||||
>
 | 
			
		||||
>
 | 
			
		||||
 | 
			
		||||
<EFBFBD>
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
 | 
			
		||||
<EFBFBD>
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
 | 
			
		||||
<EFBFBD>
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										1
									
								
								lib/plugins/ckgedit/action/entities/ent.ser
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										948
									
								
								lib/plugins/ckgedit/action/entities/ents.data
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,948 @@
 | 
			
		||||
∀
 | 
			
		||||
∀
 | 
			
		||||
∀
 | 
			
		||||
 | 
			
		||||
∂
 | 
			
		||||
∂
 | 
			
		||||
∂
 | 
			
		||||
 | 
			
		||||
∃
 | 
			
		||||
∃
 | 
			
		||||
∃
 | 
			
		||||
 | 
			
		||||
∅
 | 
			
		||||
∅
 | 
			
		||||
∅
 | 
			
		||||
 | 
			
		||||
∇
 | 
			
		||||
∇
 | 
			
		||||
∇
 | 
			
		||||
 | 
			
		||||
∈
 | 
			
		||||
∈
 | 
			
		||||
∈
 | 
			
		||||
 | 
			
		||||
∉
 | 
			
		||||
∉
 | 
			
		||||
∉
 | 
			
		||||
 | 
			
		||||
∋
 | 
			
		||||
∋
 | 
			
		||||
∋
 | 
			
		||||
 | 
			
		||||
∏
 | 
			
		||||
∏
 | 
			
		||||
∏
 | 
			
		||||
 | 
			
		||||
∑
 | 
			
		||||
∑
 | 
			
		||||
∑
 | 
			
		||||
 | 
			
		||||
−
 | 
			
		||||
−
 | 
			
		||||
−
 | 
			
		||||
 | 
			
		||||
∗
 | 
			
		||||
∗
 | 
			
		||||
∗
 | 
			
		||||
 | 
			
		||||
√
 | 
			
		||||
√
 | 
			
		||||
√
 | 
			
		||||
 | 
			
		||||
∝
 | 
			
		||||
∝
 | 
			
		||||
∝
 | 
			
		||||
 | 
			
		||||
∞
 | 
			
		||||
∞
 | 
			
		||||
∞
 | 
			
		||||
 | 
			
		||||
∠
 | 
			
		||||
∠
 | 
			
		||||
∠
 | 
			
		||||
 | 
			
		||||
∧
 | 
			
		||||
∧
 | 
			
		||||
∧
 | 
			
		||||
 | 
			
		||||
∨
 | 
			
		||||
∨
 | 
			
		||||
∨
 | 
			
		||||
 | 
			
		||||
∩
 | 
			
		||||
∩
 | 
			
		||||
∩
 | 
			
		||||
 | 
			
		||||
∪
 | 
			
		||||
∪
 | 
			
		||||
∪
 | 
			
		||||
 | 
			
		||||
∫
 | 
			
		||||
∫
 | 
			
		||||
∫
 | 
			
		||||
 | 
			
		||||
∴
 | 
			
		||||
∴
 | 
			
		||||
∴
 | 
			
		||||
 | 
			
		||||
∼
 | 
			
		||||
∼
 | 
			
		||||
∼
 | 
			
		||||
 | 
			
		||||
≅
 | 
			
		||||
≅
 | 
			
		||||
≅
 | 
			
		||||
 | 
			
		||||
≈
 | 
			
		||||
≈
 | 
			
		||||
≈
 | 
			
		||||
 | 
			
		||||
≠
 | 
			
		||||
≠
 | 
			
		||||
≠
 | 
			
		||||
 | 
			
		||||
≡
 | 
			
		||||
≡
 | 
			
		||||
≡
 | 
			
		||||
 | 
			
		||||
≤
 | 
			
		||||
≤
 | 
			
		||||
≤
 | 
			
		||||
 | 
			
		||||
≥
 | 
			
		||||
≥
 | 
			
		||||
≥
 | 
			
		||||
 | 
			
		||||
⊂
 | 
			
		||||
⊂
 | 
			
		||||
⊂
 | 
			
		||||
 | 
			
		||||
⊃
 | 
			
		||||
⊃
 | 
			
		||||
⊃
 | 
			
		||||
 | 
			
		||||
⊄
 | 
			
		||||
⊄
 | 
			
		||||
⊄
 | 
			
		||||
 | 
			
		||||
⊆
 | 
			
		||||
⊆
 | 
			
		||||
⊆
 | 
			
		||||
 | 
			
		||||
⊇
 | 
			
		||||
⊇
 | 
			
		||||
⊇
 | 
			
		||||
 | 
			
		||||
⊕
 | 
			
		||||
⊕
 | 
			
		||||
⊕
 | 
			
		||||
 | 
			
		||||
⊗
 | 
			
		||||
⊗
 | 
			
		||||
⊗
 | 
			
		||||
 | 
			
		||||
⊥
 | 
			
		||||
⊥
 | 
			
		||||
⊥
 | 
			
		||||
 | 
			
		||||
⋅
 | 
			
		||||
⋅
 | 
			
		||||
⋅
 | 
			
		||||
 | 
			
		||||
Α
 | 
			
		||||
Α
 | 
			
		||||
Α
 | 
			
		||||
 | 
			
		||||
Β
 | 
			
		||||
Β
 | 
			
		||||
Β
 | 
			
		||||
 | 
			
		||||
Γ
 | 
			
		||||
Γ
 | 
			
		||||
Γ
 | 
			
		||||
 | 
			
		||||
Δ
 | 
			
		||||
Δ
 | 
			
		||||
Δ
 | 
			
		||||
 | 
			
		||||
Ε
 | 
			
		||||
Ε
 | 
			
		||||
Ε
 | 
			
		||||
 | 
			
		||||
Ζ
 | 
			
		||||
Ζ
 | 
			
		||||
Ζ
 | 
			
		||||
 | 
			
		||||
Η
 | 
			
		||||
Η
 | 
			
		||||
Η
 | 
			
		||||
 | 
			
		||||
Θ
 | 
			
		||||
Θ
 | 
			
		||||
Θ
 | 
			
		||||
 | 
			
		||||
Ι
 | 
			
		||||
Ι
 | 
			
		||||
Ι
 | 
			
		||||
 | 
			
		||||
Κ
 | 
			
		||||
Κ
 | 
			
		||||
Κ
 | 
			
		||||
 | 
			
		||||
Λ
 | 
			
		||||
Λ
 | 
			
		||||
Λ
 | 
			
		||||
 | 
			
		||||
Μ
 | 
			
		||||
Μ
 | 
			
		||||
Μ
 | 
			
		||||
 | 
			
		||||
Ν
 | 
			
		||||
Ν
 | 
			
		||||
Ν
 | 
			
		||||
 | 
			
		||||
Ξ
 | 
			
		||||
Ξ
 | 
			
		||||
Ξ
 | 
			
		||||
 | 
			
		||||
Ο
 | 
			
		||||
Ο
 | 
			
		||||
Ο
 | 
			
		||||
 | 
			
		||||
Π
 | 
			
		||||
Π
 | 
			
		||||
Π
 | 
			
		||||
 | 
			
		||||
Ρ
 | 
			
		||||
Ρ
 | 
			
		||||
Ρ
 | 
			
		||||
 | 
			
		||||
Σ
 | 
			
		||||
Σ
 | 
			
		||||
Σ
 | 
			
		||||
 | 
			
		||||
Τ
 | 
			
		||||
Τ
 | 
			
		||||
Τ
 | 
			
		||||
 | 
			
		||||
Υ
 | 
			
		||||
Υ
 | 
			
		||||
Υ
 | 
			
		||||
 | 
			
		||||
Φ
 | 
			
		||||
Φ
 | 
			
		||||
Φ
 | 
			
		||||
 | 
			
		||||
Χ
 | 
			
		||||
Χ
 | 
			
		||||
Χ
 | 
			
		||||
 | 
			
		||||
Ψ
 | 
			
		||||
Ψ
 | 
			
		||||
Ψ
 | 
			
		||||
 | 
			
		||||
Ω
 | 
			
		||||
Ω
 | 
			
		||||
Ω
 | 
			
		||||
 | 
			
		||||
α
 | 
			
		||||
α
 | 
			
		||||
α
 | 
			
		||||
 | 
			
		||||
β
 | 
			
		||||
β
 | 
			
		||||
β
 | 
			
		||||
 | 
			
		||||
γ
 | 
			
		||||
γ
 | 
			
		||||
γ
 | 
			
		||||
 | 
			
		||||
δ
 | 
			
		||||
δ
 | 
			
		||||
δ
 | 
			
		||||
 | 
			
		||||
ε
 | 
			
		||||
ε
 | 
			
		||||
ε
 | 
			
		||||
 | 
			
		||||
ζ
 | 
			
		||||
ζ
 | 
			
		||||
ζ
 | 
			
		||||
 | 
			
		||||
η
 | 
			
		||||
η
 | 
			
		||||
η
 | 
			
		||||
 | 
			
		||||
θ
 | 
			
		||||
θ
 | 
			
		||||
θ
 | 
			
		||||
 | 
			
		||||
ι
 | 
			
		||||
ι
 | 
			
		||||
ι
 | 
			
		||||
 | 
			
		||||
κ
 | 
			
		||||
κ
 | 
			
		||||
κ
 | 
			
		||||
 | 
			
		||||
λ
 | 
			
		||||
λ
 | 
			
		||||
λ
 | 
			
		||||
 | 
			
		||||
μ
 | 
			
		||||
μ
 | 
			
		||||
μ
 | 
			
		||||
 | 
			
		||||
ν
 | 
			
		||||
ν
 | 
			
		||||
ν
 | 
			
		||||
 | 
			
		||||
ξ
 | 
			
		||||
ξ
 | 
			
		||||
ξ
 | 
			
		||||
 | 
			
		||||
ο
 | 
			
		||||
ο
 | 
			
		||||
ο
 | 
			
		||||
 | 
			
		||||
π
 | 
			
		||||
π
 | 
			
		||||
π
 | 
			
		||||
 | 
			
		||||
ρ
 | 
			
		||||
ρ
 | 
			
		||||
ρ
 | 
			
		||||
 | 
			
		||||
ς
 | 
			
		||||
ς
 | 
			
		||||
ς
 | 
			
		||||
 | 
			
		||||
σ
 | 
			
		||||
σ
 | 
			
		||||
σ
 | 
			
		||||
 | 
			
		||||
τ
 | 
			
		||||
τ
 | 
			
		||||
τ
 | 
			
		||||
 | 
			
		||||
υ
 | 
			
		||||
υ
 | 
			
		||||
υ
 | 
			
		||||
 | 
			
		||||
φ
 | 
			
		||||
φ
 | 
			
		||||
φ
 | 
			
		||||
 | 
			
		||||
χ
 | 
			
		||||
χ
 | 
			
		||||
χ
 | 
			
		||||
 | 
			
		||||
ψ
 | 
			
		||||
ψ
 | 
			
		||||
ψ
 | 
			
		||||
 | 
			
		||||
ω
 | 
			
		||||
ω
 | 
			
		||||
ω
 | 
			
		||||
 | 
			
		||||
ϑ
 | 
			
		||||
ϑ
 | 
			
		||||
ϑ
 | 
			
		||||
 | 
			
		||||
ϒ
 | 
			
		||||
ϒ
 | 
			
		||||
ϒ
 | 
			
		||||
 | 
			
		||||
ϖ
 | 
			
		||||
ϖ
 | 
			
		||||
ϖ
 | 
			
		||||
 | 
			
		||||
Œ
 | 
			
		||||
Œ
 | 
			
		||||
Œ
 | 
			
		||||
 | 
			
		||||
œ
 | 
			
		||||
œ
 | 
			
		||||
œ
 | 
			
		||||
 | 
			
		||||
Š
 | 
			
		||||
Š
 | 
			
		||||
Š
 | 
			
		||||
 | 
			
		||||
š
 | 
			
		||||
š
 | 
			
		||||
š
 | 
			
		||||
 | 
			
		||||
Ÿ
 | 
			
		||||
Ÿ
 | 
			
		||||
Ÿ
 | 
			
		||||
 | 
			
		||||
ƒ
 | 
			
		||||
ƒ
 | 
			
		||||
ƒ
 | 
			
		||||
 | 
			
		||||
ˆ
 | 
			
		||||
ˆ
 | 
			
		||||
ˆ
 | 
			
		||||
 | 
			
		||||
˜
 | 
			
		||||
˜
 | 
			
		||||
˜
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
‌
 | 
			
		||||
‌
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
‍
 | 
			
		||||
‍
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
‎
 | 
			
		||||
‎
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
‏
 | 
			
		||||
‏
 | 
			
		||||
 | 
			
		||||
–
 | 
			
		||||
–
 | 
			
		||||
–
 | 
			
		||||
 | 
			
		||||
—
 | 
			
		||||
—
 | 
			
		||||
—
 | 
			
		||||
 | 
			
		||||
‘
 | 
			
		||||
‘
 | 
			
		||||
‘
 | 
			
		||||
 | 
			
		||||
’
 | 
			
		||||
’
 | 
			
		||||
’
 | 
			
		||||
 | 
			
		||||
‚
 | 
			
		||||
‚
 | 
			
		||||
‚
 | 
			
		||||
 | 
			
		||||
“
 | 
			
		||||
“
 | 
			
		||||
“
 | 
			
		||||
 | 
			
		||||
”
 | 
			
		||||
”
 | 
			
		||||
”
 | 
			
		||||
 | 
			
		||||
„
 | 
			
		||||
„
 | 
			
		||||
„
 | 
			
		||||
 | 
			
		||||
†
 | 
			
		||||
†
 | 
			
		||||
†
 | 
			
		||||
 | 
			
		||||
‡
 | 
			
		||||
‡
 | 
			
		||||
‡
 | 
			
		||||
 | 
			
		||||
•
 | 
			
		||||
•
 | 
			
		||||
•
 | 
			
		||||
 | 
			
		||||
…
 | 
			
		||||
…
 | 
			
		||||
…
 | 
			
		||||
 | 
			
		||||
‰
 | 
			
		||||
‰
 | 
			
		||||
‰
 | 
			
		||||
 | 
			
		||||
′
 | 
			
		||||
′
 | 
			
		||||
′
 | 
			
		||||
 | 
			
		||||
″
 | 
			
		||||
″
 | 
			
		||||
″
 | 
			
		||||
 | 
			
		||||
‹
 | 
			
		||||
‹
 | 
			
		||||
‹
 | 
			
		||||
 | 
			
		||||
›
 | 
			
		||||
›
 | 
			
		||||
›
 | 
			
		||||
 | 
			
		||||
‾
 | 
			
		||||
‾
 | 
			
		||||
‾
 | 
			
		||||
 | 
			
		||||
€
 | 
			
		||||
€
 | 
			
		||||
€
 | 
			
		||||
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
or
 | 
			
		||||
 | 
			
		||||
←
 | 
			
		||||
←
 | 
			
		||||
←
 | 
			
		||||
 | 
			
		||||
↑
 | 
			
		||||
↑
 | 
			
		||||
↑
 | 
			
		||||
 | 
			
		||||
→
 | 
			
		||||
→
 | 
			
		||||
→
 | 
			
		||||
 | 
			
		||||
↓
 | 
			
		||||
↓
 | 
			
		||||
↓
 | 
			
		||||
 | 
			
		||||
↔
 | 
			
		||||
↔
 | 
			
		||||
↔
 | 
			
		||||
 | 
			
		||||
↵
 | 
			
		||||
↵
 | 
			
		||||
↵
 | 
			
		||||
 | 
			
		||||
⌈
 | 
			
		||||
⌈
 | 
			
		||||
⌈
 | 
			
		||||
 | 
			
		||||
⌉
 | 
			
		||||
⌉
 | 
			
		||||
⌉
 | 
			
		||||
 | 
			
		||||
⌊
 | 
			
		||||
⌊
 | 
			
		||||
⌊
 | 
			
		||||
 | 
			
		||||
⌋
 | 
			
		||||
⌋
 | 
			
		||||
⌋
 | 
			
		||||
 | 
			
		||||
◊
 | 
			
		||||
◊
 | 
			
		||||
◊
 | 
			
		||||
 | 
			
		||||
♠
 | 
			
		||||
♠
 | 
			
		||||
♠
 | 
			
		||||
 | 
			
		||||
♣
 | 
			
		||||
♣
 | 
			
		||||
♣
 | 
			
		||||
 | 
			
		||||
♥
 | 
			
		||||
♥
 | 
			
		||||
♥
 | 
			
		||||
 | 
			
		||||
♦
 | 
			
		||||
♦
 | 
			
		||||
♦
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
 | 
			
		||||
¤
 | 
			
		||||
¤
 | 
			
		||||
¤
 | 
			
		||||
 | 
			
		||||
¥
 | 
			
		||||
¥
 | 
			
		||||
¥
 | 
			
		||||
 | 
			
		||||
¦
 | 
			
		||||
¦
 | 
			
		||||
¦
 | 
			
		||||
 | 
			
		||||
§
 | 
			
		||||
§
 | 
			
		||||
§
 | 
			
		||||
 | 
			
		||||
¨
 | 
			
		||||
¨
 | 
			
		||||
¨
 | 
			
		||||
 | 
			
		||||
©
 | 
			
		||||
©
 | 
			
		||||
©
 | 
			
		||||
 | 
			
		||||
ª
 | 
			
		||||
ª
 | 
			
		||||
ª
 | 
			
		||||
 | 
			
		||||
«
 | 
			
		||||
«
 | 
			
		||||
«
 | 
			
		||||
 | 
			
		||||
¬
 | 
			
		||||
¬
 | 
			
		||||
¬
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
­
 | 
			
		||||
­
 | 
			
		||||
 | 
			
		||||
®
 | 
			
		||||
®
 | 
			
		||||
®
 | 
			
		||||
 | 
			
		||||
¯
 | 
			
		||||
¯
 | 
			
		||||
¯
 | 
			
		||||
 | 
			
		||||
°
 | 
			
		||||
°
 | 
			
		||||
°
 | 
			
		||||
 | 
			
		||||
±
 | 
			
		||||
±
 | 
			
		||||
±
 | 
			
		||||
 | 
			
		||||
²
 | 
			
		||||
²
 | 
			
		||||
²
 | 
			
		||||
 | 
			
		||||
³
 | 
			
		||||
³
 | 
			
		||||
³
 | 
			
		||||
 | 
			
		||||
´
 | 
			
		||||
´
 | 
			
		||||
´
 | 
			
		||||
 | 
			
		||||
µ
 | 
			
		||||
µ
 | 
			
		||||
µ
 | 
			
		||||
 | 
			
		||||
¶
 | 
			
		||||
¶
 | 
			
		||||
¶
 | 
			
		||||
 | 
			
		||||
·
 | 
			
		||||
·
 | 
			
		||||
·
 | 
			
		||||
 | 
			
		||||
¸
 | 
			
		||||
¸
 | 
			
		||||
¸
 | 
			
		||||
 | 
			
		||||
¹
 | 
			
		||||
¹
 | 
			
		||||
¹
 | 
			
		||||
 | 
			
		||||
º
 | 
			
		||||
º
 | 
			
		||||
º
 | 
			
		||||
 | 
			
		||||
»
 | 
			
		||||
»
 | 
			
		||||
»
 | 
			
		||||
 | 
			
		||||
¼
 | 
			
		||||
¼
 | 
			
		||||
¼
 | 
			
		||||
 | 
			
		||||
½
 | 
			
		||||
½
 | 
			
		||||
½
 | 
			
		||||
 | 
			
		||||
¾
 | 
			
		||||
¾
 | 
			
		||||
¾
 | 
			
		||||
 | 
			
		||||
¿
 | 
			
		||||
¿
 | 
			
		||||
¿
 | 
			
		||||
 | 
			
		||||
×
 | 
			
		||||
×
 | 
			
		||||
×
 | 
			
		||||
 | 
			
		||||
÷
 | 
			
		||||
÷
 | 
			
		||||
÷
 | 
			
		||||
 | 
			
		||||
À
 | 
			
		||||
À
 | 
			
		||||
À
 | 
			
		||||
 | 
			
		||||
Á
 | 
			
		||||
Á
 | 
			
		||||
Á
 | 
			
		||||
 | 
			
		||||
Â
 | 
			
		||||
Â
 | 
			
		||||
Â
 | 
			
		||||
 | 
			
		||||
Ã
 | 
			
		||||
Ã
 | 
			
		||||
Ã
 | 
			
		||||
 | 
			
		||||
Ä
 | 
			
		||||
Ä
 | 
			
		||||
Ä
 | 
			
		||||
 | 
			
		||||
Å
 | 
			
		||||
Å
 | 
			
		||||
Å
 | 
			
		||||
 | 
			
		||||
Æ
 | 
			
		||||
Æ
 | 
			
		||||
Æ
 | 
			
		||||
 | 
			
		||||
Ç
 | 
			
		||||
Ç
 | 
			
		||||
Ç
 | 
			
		||||
 | 
			
		||||
È
 | 
			
		||||
È
 | 
			
		||||
È
 | 
			
		||||
 | 
			
		||||
É
 | 
			
		||||
É
 | 
			
		||||
É
 | 
			
		||||
 | 
			
		||||
Ê
 | 
			
		||||
Ê
 | 
			
		||||
Ê
 | 
			
		||||
 | 
			
		||||
Ë
 | 
			
		||||
Ë
 | 
			
		||||
Ë
 | 
			
		||||
 | 
			
		||||
Ì
 | 
			
		||||
Ì
 | 
			
		||||
Ì
 | 
			
		||||
 | 
			
		||||
Í
 | 
			
		||||
Í
 | 
			
		||||
Í
 | 
			
		||||
 | 
			
		||||
Î
 | 
			
		||||
Î
 | 
			
		||||
Î
 | 
			
		||||
 | 
			
		||||
Ï
 | 
			
		||||
Ï
 | 
			
		||||
Ï
 | 
			
		||||
 | 
			
		||||
Ð
 | 
			
		||||
Ð
 | 
			
		||||
Ð
 | 
			
		||||
 | 
			
		||||
Ñ
 | 
			
		||||
Ñ
 | 
			
		||||
Ñ
 | 
			
		||||
 | 
			
		||||
Ò
 | 
			
		||||
Ò
 | 
			
		||||
Ò
 | 
			
		||||
 | 
			
		||||
Ó
 | 
			
		||||
Ó
 | 
			
		||||
Ó
 | 
			
		||||
 | 
			
		||||
Ô
 | 
			
		||||
Ô
 | 
			
		||||
Ô
 | 
			
		||||
 | 
			
		||||
Õ
 | 
			
		||||
Õ
 | 
			
		||||
Õ
 | 
			
		||||
 | 
			
		||||
Ö
 | 
			
		||||
Ö
 | 
			
		||||
Ö
 | 
			
		||||
 | 
			
		||||
Ø
 | 
			
		||||
Ø
 | 
			
		||||
Ø
 | 
			
		||||
 | 
			
		||||
Ù
 | 
			
		||||
Ù
 | 
			
		||||
Ù
 | 
			
		||||
 | 
			
		||||
Ú
 | 
			
		||||
Ú
 | 
			
		||||
Ú
 | 
			
		||||
 | 
			
		||||
Û
 | 
			
		||||
Û
 | 
			
		||||
Û
 | 
			
		||||
 | 
			
		||||
Ü
 | 
			
		||||
Ü
 | 
			
		||||
Ü
 | 
			
		||||
 | 
			
		||||
Ý
 | 
			
		||||
Ý
 | 
			
		||||
Ý
 | 
			
		||||
 | 
			
		||||
Þ
 | 
			
		||||
Þ
 | 
			
		||||
Þ
 | 
			
		||||
 | 
			
		||||
ß
 | 
			
		||||
ß
 | 
			
		||||
ß
 | 
			
		||||
 | 
			
		||||
à
 | 
			
		||||
à
 | 
			
		||||
à
 | 
			
		||||
 | 
			
		||||
á
 | 
			
		||||
á
 | 
			
		||||
á
 | 
			
		||||
 | 
			
		||||
â
 | 
			
		||||
â
 | 
			
		||||
â
 | 
			
		||||
 | 
			
		||||
ã
 | 
			
		||||
ã
 | 
			
		||||
ã
 | 
			
		||||
 | 
			
		||||
ä
 | 
			
		||||
ä
 | 
			
		||||
ä
 | 
			
		||||
 | 
			
		||||
å
 | 
			
		||||
å
 | 
			
		||||
å
 | 
			
		||||
 | 
			
		||||
æ
 | 
			
		||||
æ
 | 
			
		||||
æ
 | 
			
		||||
 | 
			
		||||
ç
 | 
			
		||||
ç
 | 
			
		||||
ç
 | 
			
		||||
 | 
			
		||||
è
 | 
			
		||||
è
 | 
			
		||||
è
 | 
			
		||||
 | 
			
		||||
é
 | 
			
		||||
é
 | 
			
		||||
é
 | 
			
		||||
 | 
			
		||||
ê
 | 
			
		||||
ê
 | 
			
		||||
ê
 | 
			
		||||
 | 
			
		||||
ë
 | 
			
		||||
ë
 | 
			
		||||
ë
 | 
			
		||||
 | 
			
		||||
ì
 | 
			
		||||
ì
 | 
			
		||||
ì
 | 
			
		||||
 | 
			
		||||
í
 | 
			
		||||
í
 | 
			
		||||
í
 | 
			
		||||
 | 
			
		||||
î
 | 
			
		||||
î
 | 
			
		||||
î
 | 
			
		||||
 | 
			
		||||
ï
 | 
			
		||||
ï
 | 
			
		||||
ï
 | 
			
		||||
 | 
			
		||||
ð
 | 
			
		||||
ð
 | 
			
		||||
ð
 | 
			
		||||
 | 
			
		||||
ñ
 | 
			
		||||
ñ
 | 
			
		||||
ñ
 | 
			
		||||
 | 
			
		||||
ò
 | 
			
		||||
ò
 | 
			
		||||
ò
 | 
			
		||||
 | 
			
		||||
ó
 | 
			
		||||
ó
 | 
			
		||||
ó
 | 
			
		||||
 | 
			
		||||
ô
 | 
			
		||||
ô
 | 
			
		||||
ô
 | 
			
		||||
 | 
			
		||||
õ
 | 
			
		||||
õ
 | 
			
		||||
õ
 | 
			
		||||
 | 
			
		||||
ö
 | 
			
		||||
ö
 | 
			
		||||
ö
 | 
			
		||||
 | 
			
		||||
ø
 | 
			
		||||
ø
 | 
			
		||||
ø
 | 
			
		||||
 | 
			
		||||
ù
 | 
			
		||||
ù
 | 
			
		||||
ù
 | 
			
		||||
 | 
			
		||||
ú
 | 
			
		||||
ú
 | 
			
		||||
ú
 | 
			
		||||
 | 
			
		||||
û
 | 
			
		||||
û
 | 
			
		||||
û
 | 
			
		||||
 | 
			
		||||
ü
 | 
			
		||||
ü
 | 
			
		||||
ü
 | 
			
		||||
 | 
			
		||||
ý
 | 
			
		||||
ý
 | 
			
		||||
ý
 | 
			
		||||
 | 
			
		||||
þ
 | 
			
		||||
þ
 | 
			
		||||
þ
 | 
			
		||||
 | 
			
		||||
ÿ
 | 
			
		||||
ÿ
 | 
			
		||||
ÿ
 | 
			
		||||
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										61
									
								
								lib/plugins/ckgedit/action/entities/ents_seri.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,61 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
define('FCK_ACTION_SUBDIR', realpath(dirname(__FILE__)) . '/');
 | 
			
		||||
 | 
			
		||||
$entities = array();
 | 
			
		||||
serialize_ents('ents.data');
 | 
			
		||||
serialize_ents('fcked-ents.data');
 | 
			
		||||
serialize_ents('ents.merge.data');
 | 
			
		||||
$file = "";
 | 
			
		||||
 | 
			
		||||
if(isset($argv[1])) {
 | 
			
		||||
     $f = $argv[1];
 | 
			
		||||
     if ($f && file_exists($f)) $file = $f;
 | 
			
		||||
}
 | 
			
		||||
elseif(file_exists('add.ent')) {
 | 
			
		||||
  $file = 'add.ent';
 | 
			
		||||
 
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if($file && file_exists($file)) {
 | 
			
		||||
   echo "adding entities from $file\n";
 | 
			
		||||
   serialize_ents($file);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
$serialized = FCK_ACTION_SUBDIR . 'ent.ser';
 | 
			
		||||
file_put_contents($serialized,serialize($entities));
 | 
			
		||||
//$ents = unserialize(file_get_contents($serialized));
 | 
			
		||||
//print_r($ents);
 | 
			
		||||
exit;
 | 
			
		||||
 | 
			
		||||
function serialize_ents($file) {
 | 
			
		||||
global $entities;
 | 
			
		||||
 | 
			
		||||
    $entities_file = FCK_ACTION_SUBDIR . $file;
 | 
			
		||||
    if(!file_exists($entities_file)) return;
 | 
			
		||||
    $lines = file_get_contents($entities_file);
 | 
			
		||||
    $lines_array=preg_split('/^\n/ms',$lines);
 | 
			
		||||
  
 | 
			
		||||
    foreach ($lines_array as $line) {
 | 
			
		||||
        if(isset($line) && strlen($line)) { 
 | 
			
		||||
            list($icon, $numeric,$character) = @preg_split('/\s+/',$line);      
 | 
			
		||||
            if(!$icon || !$numeric || !$character) continue;
 | 
			
		||||
            $numeric = trim($numeric,'&#;'); 
 | 
			
		||||
            $character=trim($character,'&;');     
 | 
			
		||||
            $entities[$numeric] = $icon;
 | 
			
		||||
            $entities[$character] = $icon;  
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
     $entities[32] = ' ';
 | 
			
		||||
     $entities['nbsp'] = ' ';
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
?>
 | 
			
		||||
							
								
								
									
										842
									
								
								lib/plugins/ckgedit/action/entities/fcked-ents.data
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,842 @@
 | 
			
		||||
¡
 | 
			
		||||
iexcl
 | 
			
		||||
161
 | 
			
		||||
 | 
			
		||||
¢
 | 
			
		||||
cent
 | 
			
		||||
162
 | 
			
		||||
 | 
			
		||||
£
 | 
			
		||||
pound
 | 
			
		||||
163
 | 
			
		||||
 | 
			
		||||
¤
 | 
			
		||||
curren
 | 
			
		||||
164
 | 
			
		||||
 | 
			
		||||
¥
 | 
			
		||||
yen
 | 
			
		||||
165
 | 
			
		||||
 | 
			
		||||
¦
 | 
			
		||||
brvbar
 | 
			
		||||
166
 | 
			
		||||
 | 
			
		||||
§
 | 
			
		||||
sect
 | 
			
		||||
167
 | 
			
		||||
 | 
			
		||||
¨
 | 
			
		||||
uml
 | 
			
		||||
168
 | 
			
		||||
 | 
			
		||||
©
 | 
			
		||||
copy
 | 
			
		||||
169
 | 
			
		||||
 | 
			
		||||
ª
 | 
			
		||||
ordf
 | 
			
		||||
170
 | 
			
		||||
 | 
			
		||||
«
 | 
			
		||||
laquo
 | 
			
		||||
171
 | 
			
		||||
 | 
			
		||||
¬
 | 
			
		||||
not
 | 
			
		||||
172
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
shy
 | 
			
		||||
173
 | 
			
		||||
 | 
			
		||||
®
 | 
			
		||||
reg
 | 
			
		||||
174
 | 
			
		||||
 | 
			
		||||
¯
 | 
			
		||||
macr
 | 
			
		||||
175
 | 
			
		||||
 | 
			
		||||
°
 | 
			
		||||
deg
 | 
			
		||||
176
 | 
			
		||||
 | 
			
		||||
±
 | 
			
		||||
plusmn
 | 
			
		||||
177
 | 
			
		||||
 | 
			
		||||
²
 | 
			
		||||
sup2
 | 
			
		||||
178
 | 
			
		||||
 | 
			
		||||
³
 | 
			
		||||
sup3
 | 
			
		||||
179
 | 
			
		||||
 | 
			
		||||
´
 | 
			
		||||
acute
 | 
			
		||||
180
 | 
			
		||||
 | 
			
		||||
µ
 | 
			
		||||
micro
 | 
			
		||||
181
 | 
			
		||||
 | 
			
		||||
¶
 | 
			
		||||
para
 | 
			
		||||
182
 | 
			
		||||
 | 
			
		||||
·
 | 
			
		||||
middot
 | 
			
		||||
183
 | 
			
		||||
 | 
			
		||||
¸
 | 
			
		||||
cedil
 | 
			
		||||
184
 | 
			
		||||
 | 
			
		||||
¹
 | 
			
		||||
sup1
 | 
			
		||||
185
 | 
			
		||||
 | 
			
		||||
º
 | 
			
		||||
ordm
 | 
			
		||||
186
 | 
			
		||||
 | 
			
		||||
»
 | 
			
		||||
raquo
 | 
			
		||||
187
 | 
			
		||||
 | 
			
		||||
¼
 | 
			
		||||
frac14
 | 
			
		||||
188
 | 
			
		||||
 | 
			
		||||
½
 | 
			
		||||
frac12
 | 
			
		||||
189
 | 
			
		||||
 | 
			
		||||
¾
 | 
			
		||||
frac34
 | 
			
		||||
190
 | 
			
		||||
 | 
			
		||||
¿
 | 
			
		||||
iquest
 | 
			
		||||
191
 | 
			
		||||
 | 
			
		||||
à
 | 
			
		||||
agrave
 | 
			
		||||
192
 | 
			
		||||
 | 
			
		||||
á
 | 
			
		||||
aacute
 | 
			
		||||
193
 | 
			
		||||
 | 
			
		||||
â
 | 
			
		||||
acirc
 | 
			
		||||
194
 | 
			
		||||
 | 
			
		||||
ã
 | 
			
		||||
atilde
 | 
			
		||||
195
 | 
			
		||||
 | 
			
		||||
Ä
 | 
			
		||||
Auml
 | 
			
		||||
196
 | 
			
		||||
 | 
			
		||||
å
 | 
			
		||||
aring
 | 
			
		||||
197
 | 
			
		||||
 | 
			
		||||
æ
 | 
			
		||||
aelig
 | 
			
		||||
198
 | 
			
		||||
 | 
			
		||||
ç
 | 
			
		||||
ccedil
 | 
			
		||||
199
 | 
			
		||||
 | 
			
		||||
è
 | 
			
		||||
egrave
 | 
			
		||||
200
 | 
			
		||||
 | 
			
		||||
é
 | 
			
		||||
eacute
 | 
			
		||||
201
 | 
			
		||||
 | 
			
		||||
ê
 | 
			
		||||
ecirc
 | 
			
		||||
202
 | 
			
		||||
 | 
			
		||||
Ë	
 | 
			
		||||
203
 | 
			
		||||
Euml;
 | 
			
		||||
 | 
			
		||||
ì
 | 
			
		||||
igrave
 | 
			
		||||
204
 | 
			
		||||
 | 
			
		||||
í
 | 
			
		||||
iacute
 | 
			
		||||
205
 | 
			
		||||
 | 
			
		||||
î
 | 
			
		||||
icirc
 | 
			
		||||
206
 | 
			
		||||
 | 
			
		||||
ï
 | 
			
		||||
iuml
 | 
			
		||||
207
 | 
			
		||||
 | 
			
		||||
ð
 | 
			
		||||
eth
 | 
			
		||||
208
 | 
			
		||||
 | 
			
		||||
ñ
 | 
			
		||||
ntilde
 | 
			
		||||
209
 | 
			
		||||
 | 
			
		||||
ò
 | 
			
		||||
ograve
 | 
			
		||||
210
 | 
			
		||||
 | 
			
		||||
ó
 | 
			
		||||
oacute
 | 
			
		||||
211
 | 
			
		||||
 | 
			
		||||
ô
 | 
			
		||||
ocirc
 | 
			
		||||
212
 | 
			
		||||
 | 
			
		||||
õ
 | 
			
		||||
otilde
 | 
			
		||||
213
 | 
			
		||||
 | 
			
		||||
Ö
 | 
			
		||||
Ouml
 | 
			
		||||
214
 | 
			
		||||
 | 
			
		||||
×
 | 
			
		||||
times
 | 
			
		||||
215
 | 
			
		||||
 | 
			
		||||
ø
 | 
			
		||||
oslash
 | 
			
		||||
216
 | 
			
		||||
 | 
			
		||||
ù
 | 
			
		||||
ugrave
 | 
			
		||||
217
 | 
			
		||||
 | 
			
		||||
ú
 | 
			
		||||
uacute
 | 
			
		||||
218
 | 
			
		||||
 | 
			
		||||
û
 | 
			
		||||
ucirc
 | 
			
		||||
219
 | 
			
		||||
 | 
			
		||||
Ü
 | 
			
		||||
Uuml
 | 
			
		||||
220
 | 
			
		||||
 | 
			
		||||
ý
 | 
			
		||||
yacute
 | 
			
		||||
221
 | 
			
		||||
 | 
			
		||||
þ
 | 
			
		||||
thorn
 | 
			
		||||
222
 | 
			
		||||
 | 
			
		||||
ß
 | 
			
		||||
szlig
 | 
			
		||||
223
 | 
			
		||||
 | 
			
		||||
à
 | 
			
		||||
agrave
 | 
			
		||||
224
 | 
			
		||||
 | 
			
		||||
á
 | 
			
		||||
aacute
 | 
			
		||||
225
 | 
			
		||||
 | 
			
		||||
â
 | 
			
		||||
acirc
 | 
			
		||||
226
 | 
			
		||||
 | 
			
		||||
ã
 | 
			
		||||
atilde
 | 
			
		||||
227
 | 
			
		||||
 | 
			
		||||
ä
 | 
			
		||||
auml
 | 
			
		||||
228
 | 
			
		||||
 | 
			
		||||
å
 | 
			
		||||
aring
 | 
			
		||||
229
 | 
			
		||||
 | 
			
		||||
æ
 | 
			
		||||
aelig
 | 
			
		||||
230
 | 
			
		||||
 | 
			
		||||
ç
 | 
			
		||||
ccedil
 | 
			
		||||
231
 | 
			
		||||
 | 
			
		||||
è
 | 
			
		||||
egrave
 | 
			
		||||
232
 | 
			
		||||
 | 
			
		||||
é
 | 
			
		||||
eacute
 | 
			
		||||
233
 | 
			
		||||
 | 
			
		||||
ê
 | 
			
		||||
ecirc
 | 
			
		||||
234
 | 
			
		||||
 | 
			
		||||
ë
 | 
			
		||||
euml
 | 
			
		||||
235
 | 
			
		||||
 | 
			
		||||
ì
 | 
			
		||||
igrave
 | 
			
		||||
236
 | 
			
		||||
 | 
			
		||||
í
 | 
			
		||||
iacute
 | 
			
		||||
237
 | 
			
		||||
 | 
			
		||||
î
 | 
			
		||||
icirc
 | 
			
		||||
238
 | 
			
		||||
 | 
			
		||||
ï
 | 
			
		||||
iuml
 | 
			
		||||
239
 | 
			
		||||
 | 
			
		||||
ð
 | 
			
		||||
eth
 | 
			
		||||
240
 | 
			
		||||
 | 
			
		||||
ñ
 | 
			
		||||
ntilde
 | 
			
		||||
241
 | 
			
		||||
 | 
			
		||||
ò
 | 
			
		||||
ograve
 | 
			
		||||
242
 | 
			
		||||
 | 
			
		||||
ó
 | 
			
		||||
oacute
 | 
			
		||||
243
 | 
			
		||||
 | 
			
		||||
ô
 | 
			
		||||
ocirc
 | 
			
		||||
244
 | 
			
		||||
 | 
			
		||||
õ
 | 
			
		||||
otilde
 | 
			
		||||
245
 | 
			
		||||
 | 
			
		||||
ö
 | 
			
		||||
ouml
 | 
			
		||||
246
 | 
			
		||||
 | 
			
		||||
÷
 | 
			
		||||
divide
 | 
			
		||||
247
 | 
			
		||||
 | 
			
		||||
ø
 | 
			
		||||
oslash
 | 
			
		||||
248
 | 
			
		||||
 | 
			
		||||
ù
 | 
			
		||||
ugrave
 | 
			
		||||
249
 | 
			
		||||
 | 
			
		||||
ú
 | 
			
		||||
uacute
 | 
			
		||||
250
 | 
			
		||||
 | 
			
		||||
û
 | 
			
		||||
ucirc
 | 
			
		||||
251
 | 
			
		||||
 | 
			
		||||
ü
 | 
			
		||||
uuml
 | 
			
		||||
252
 | 
			
		||||
 | 
			
		||||
ý
 | 
			
		||||
yacute
 | 
			
		||||
253
 | 
			
		||||
 | 
			
		||||
þ
 | 
			
		||||
thorn
 | 
			
		||||
254
 | 
			
		||||
 | 
			
		||||
ÿ
 | 
			
		||||
yuml
 | 
			
		||||
255
 | 
			
		||||
 | 
			
		||||
"
 | 
			
		||||
quot
 | 
			
		||||
34
 | 
			
		||||
 | 
			
		||||
&
 | 
			
		||||
amp
 | 
			
		||||
38
 | 
			
		||||
 | 
			
		||||
<
 | 
			
		||||
lt
 | 
			
		||||
60
 | 
			
		||||
 | 
			
		||||
>
 | 
			
		||||
gt
 | 
			
		||||
62
 | 
			
		||||
 | 
			
		||||
œ
 | 
			
		||||
oelig
 | 
			
		||||
338
 | 
			
		||||
 | 
			
		||||
œ
 | 
			
		||||
oelig
 | 
			
		||||
339
 | 
			
		||||
 | 
			
		||||
š
 | 
			
		||||
scaron
 | 
			
		||||
352
 | 
			
		||||
 | 
			
		||||
š
 | 
			
		||||
scaron
 | 
			
		||||
353
 | 
			
		||||
 | 
			
		||||
ÿ
 | 
			
		||||
yuml
 | 
			
		||||
376
 | 
			
		||||
 | 
			
		||||
ˆ
 | 
			
		||||
circ
 | 
			
		||||
710
 | 
			
		||||
 | 
			
		||||
˜
 | 
			
		||||
tilde
 | 
			
		||||
732
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
ensp
 | 
			
		||||
8194
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
emsp
 | 
			
		||||
8195
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
thinsp
 | 
			
		||||
8201
 | 
			
		||||
 | 
			
		||||
–
 | 
			
		||||
ndash
 | 
			
		||||
8211
 | 
			
		||||
 | 
			
		||||
—
 | 
			
		||||
mdash
 | 
			
		||||
8212
 | 
			
		||||
 | 
			
		||||
‘
 | 
			
		||||
lsquo
 | 
			
		||||
8216
 | 
			
		||||
 | 
			
		||||
’
 | 
			
		||||
rsquo
 | 
			
		||||
8217
 | 
			
		||||
 | 
			
		||||
‚
 | 
			
		||||
sbquo
 | 
			
		||||
8218
 | 
			
		||||
 | 
			
		||||
“
 | 
			
		||||
ldquo
 | 
			
		||||
8220
 | 
			
		||||
 | 
			
		||||
”
 | 
			
		||||
rdquo
 | 
			
		||||
8221
 | 
			
		||||
 | 
			
		||||
„
 | 
			
		||||
bdquo
 | 
			
		||||
8222
 | 
			
		||||
 | 
			
		||||
†
 | 
			
		||||
dagger
 | 
			
		||||
8224
 | 
			
		||||
 | 
			
		||||
†
 | 
			
		||||
dagger
 | 
			
		||||
8225
 | 
			
		||||
 | 
			
		||||
‰
 | 
			
		||||
permil
 | 
			
		||||
8240
 | 
			
		||||
 | 
			
		||||
‹
 | 
			
		||||
lsaquo
 | 
			
		||||
8249
 | 
			
		||||
 | 
			
		||||
›
 | 
			
		||||
rsaquo
 | 
			
		||||
8250
 | 
			
		||||
 | 
			
		||||
€
 | 
			
		||||
euro
 | 
			
		||||
8364
 | 
			
		||||
 | 
			
		||||
ƒ
 | 
			
		||||
fnof
 | 
			
		||||
402
 | 
			
		||||
 | 
			
		||||
α
 | 
			
		||||
alpha
 | 
			
		||||
913
 | 
			
		||||
 | 
			
		||||
β
 | 
			
		||||
beta
 | 
			
		||||
914
 | 
			
		||||
 | 
			
		||||
γ
 | 
			
		||||
gamma
 | 
			
		||||
915
 | 
			
		||||
 | 
			
		||||
δ
 | 
			
		||||
delta
 | 
			
		||||
916
 | 
			
		||||
 | 
			
		||||
ε
 | 
			
		||||
epsilon
 | 
			
		||||
917
 | 
			
		||||
 | 
			
		||||
ζ
 | 
			
		||||
zeta
 | 
			
		||||
918
 | 
			
		||||
 | 
			
		||||
η
 | 
			
		||||
eta
 | 
			
		||||
919
 | 
			
		||||
 | 
			
		||||
θ
 | 
			
		||||
theta
 | 
			
		||||
920
 | 
			
		||||
 | 
			
		||||
ι
 | 
			
		||||
iota
 | 
			
		||||
921
 | 
			
		||||
 | 
			
		||||
κ
 | 
			
		||||
kappa
 | 
			
		||||
922
 | 
			
		||||
 | 
			
		||||
λ
 | 
			
		||||
lambda
 | 
			
		||||
923
 | 
			
		||||
 | 
			
		||||
μ
 | 
			
		||||
mu
 | 
			
		||||
924
 | 
			
		||||
 | 
			
		||||
ν
 | 
			
		||||
nu
 | 
			
		||||
925
 | 
			
		||||
 | 
			
		||||
ξ
 | 
			
		||||
xi
 | 
			
		||||
926
 | 
			
		||||
 | 
			
		||||
ο
 | 
			
		||||
omicron
 | 
			
		||||
927
 | 
			
		||||
 | 
			
		||||
π
 | 
			
		||||
pi
 | 
			
		||||
928
 | 
			
		||||
 | 
			
		||||
ρ
 | 
			
		||||
rho
 | 
			
		||||
929
 | 
			
		||||
 | 
			
		||||
σ
 | 
			
		||||
sigma
 | 
			
		||||
931
 | 
			
		||||
 | 
			
		||||
τ
 | 
			
		||||
tau
 | 
			
		||||
932
 | 
			
		||||
 | 
			
		||||
υ
 | 
			
		||||
upsilon
 | 
			
		||||
933
 | 
			
		||||
 | 
			
		||||
φ
 | 
			
		||||
phi
 | 
			
		||||
934
 | 
			
		||||
 | 
			
		||||
χ
 | 
			
		||||
chi
 | 
			
		||||
935
 | 
			
		||||
 | 
			
		||||
ψ
 | 
			
		||||
psi
 | 
			
		||||
936
 | 
			
		||||
 | 
			
		||||
ω
 | 
			
		||||
omega
 | 
			
		||||
937
 | 
			
		||||
 | 
			
		||||
α
 | 
			
		||||
alpha
 | 
			
		||||
945
 | 
			
		||||
 | 
			
		||||
β
 | 
			
		||||
beta
 | 
			
		||||
946
 | 
			
		||||
 | 
			
		||||
γ
 | 
			
		||||
gamma
 | 
			
		||||
947
 | 
			
		||||
 | 
			
		||||
δ
 | 
			
		||||
delta
 | 
			
		||||
948
 | 
			
		||||
 | 
			
		||||
ε
 | 
			
		||||
epsilon
 | 
			
		||||
949
 | 
			
		||||
 | 
			
		||||
ζ
 | 
			
		||||
zeta
 | 
			
		||||
950
 | 
			
		||||
 | 
			
		||||
η
 | 
			
		||||
eta
 | 
			
		||||
951
 | 
			
		||||
 | 
			
		||||
θ
 | 
			
		||||
theta
 | 
			
		||||
952
 | 
			
		||||
 | 
			
		||||
ι
 | 
			
		||||
iota
 | 
			
		||||
953
 | 
			
		||||
 | 
			
		||||
κ
 | 
			
		||||
kappa
 | 
			
		||||
954
 | 
			
		||||
 | 
			
		||||
λ
 | 
			
		||||
lambda
 | 
			
		||||
955
 | 
			
		||||
 | 
			
		||||
μ
 | 
			
		||||
mu
 | 
			
		||||
956
 | 
			
		||||
 | 
			
		||||
ν
 | 
			
		||||
nu
 | 
			
		||||
957
 | 
			
		||||
 | 
			
		||||
ξ
 | 
			
		||||
xi
 | 
			
		||||
958
 | 
			
		||||
 | 
			
		||||
ο
 | 
			
		||||
omicron
 | 
			
		||||
959
 | 
			
		||||
 | 
			
		||||
π
 | 
			
		||||
pi
 | 
			
		||||
960
 | 
			
		||||
 | 
			
		||||
ρ
 | 
			
		||||
rho
 | 
			
		||||
961
 | 
			
		||||
 | 
			
		||||
ς
 | 
			
		||||
sigmaf
 | 
			
		||||
962
 | 
			
		||||
 | 
			
		||||
σ
 | 
			
		||||
sigma
 | 
			
		||||
963
 | 
			
		||||
 | 
			
		||||
τ
 | 
			
		||||
tau
 | 
			
		||||
964
 | 
			
		||||
 | 
			
		||||
υ
 | 
			
		||||
upsilon
 | 
			
		||||
965
 | 
			
		||||
 | 
			
		||||
φ
 | 
			
		||||
phi
 | 
			
		||||
966
 | 
			
		||||
 | 
			
		||||
χ
 | 
			
		||||
chi
 | 
			
		||||
967
 | 
			
		||||
 | 
			
		||||
ψ
 | 
			
		||||
psi
 | 
			
		||||
968
 | 
			
		||||
 | 
			
		||||
ω
 | 
			
		||||
omega
 | 
			
		||||
969
 | 
			
		||||
 | 
			
		||||
•
 | 
			
		||||
bull
 | 
			
		||||
8226
 | 
			
		||||
 | 
			
		||||
…
 | 
			
		||||
hellip
 | 
			
		||||
8230
 | 
			
		||||
 | 
			
		||||
′
 | 
			
		||||
prime
 | 
			
		||||
8242
 | 
			
		||||
 | 
			
		||||
′
 | 
			
		||||
prime
 | 
			
		||||
8243
 | 
			
		||||
 | 
			
		||||
‾
 | 
			
		||||
oline
 | 
			
		||||
8254
 | 
			
		||||
 | 
			
		||||
⁄
 | 
			
		||||
frasl
 | 
			
		||||
8260
 | 
			
		||||
 | 
			
		||||
←
 | 
			
		||||
larr
 | 
			
		||||
8592
 | 
			
		||||
 | 
			
		||||
↑
 | 
			
		||||
uarr
 | 
			
		||||
8593
 | 
			
		||||
 | 
			
		||||
→
 | 
			
		||||
rarr
 | 
			
		||||
8594
 | 
			
		||||
 | 
			
		||||
↓
 | 
			
		||||
darr
 | 
			
		||||
8595
 | 
			
		||||
 | 
			
		||||
↔
 | 
			
		||||
harr
 | 
			
		||||
8596
 | 
			
		||||
 | 
			
		||||
←
 | 
			
		||||
larr
 | 
			
		||||
8656
 | 
			
		||||
 | 
			
		||||
↑
 | 
			
		||||
uarr
 | 
			
		||||
8657
 | 
			
		||||
 | 
			
		||||
→
 | 
			
		||||
rarr
 | 
			
		||||
8658
 | 
			
		||||
 | 
			
		||||
↓
 | 
			
		||||
darr
 | 
			
		||||
8659
 | 
			
		||||
 | 
			
		||||
↔
 | 
			
		||||
harr
 | 
			
		||||
8660
 | 
			
		||||
 | 
			
		||||
∂
 | 
			
		||||
part
 | 
			
		||||
8706
 | 
			
		||||
 | 
			
		||||
∏
 | 
			
		||||
prod
 | 
			
		||||
8719
 | 
			
		||||
 | 
			
		||||
∑
 | 
			
		||||
sum
 | 
			
		||||
8721
 | 
			
		||||
 | 
			
		||||
−
 | 
			
		||||
minus
 | 
			
		||||
8722
 | 
			
		||||
 | 
			
		||||
√
 | 
			
		||||
radic
 | 
			
		||||
8730
 | 
			
		||||
 | 
			
		||||
∞
 | 
			
		||||
infin
 | 
			
		||||
8734
 | 
			
		||||
 | 
			
		||||
∩
 | 
			
		||||
cap
 | 
			
		||||
8745
 | 
			
		||||
 | 
			
		||||
∫
 | 
			
		||||
int
 | 
			
		||||
8747
 | 
			
		||||
 | 
			
		||||
≈
 | 
			
		||||
asymp
 | 
			
		||||
8776
 | 
			
		||||
 | 
			
		||||
≠
 | 
			
		||||
ne
 | 
			
		||||
8800
 | 
			
		||||
 | 
			
		||||
≡
 | 
			
		||||
equiv
 | 
			
		||||
8801
 | 
			
		||||
 | 
			
		||||
≤
 | 
			
		||||
le
 | 
			
		||||
8804
 | 
			
		||||
 | 
			
		||||
≥
 | 
			
		||||
ge
 | 
			
		||||
8805
 | 
			
		||||
 | 
			
		||||
◊
 | 
			
		||||
loz
 | 
			
		||||
9674
 | 
			
		||||
 | 
			
		||||
♠
 | 
			
		||||
spades
 | 
			
		||||
9824
 | 
			
		||||
 | 
			
		||||
♣
 | 
			
		||||
clubs
 | 
			
		||||
9827
 | 
			
		||||
 | 
			
		||||
♥
 | 
			
		||||
hearts
 | 
			
		||||
9829
 | 
			
		||||
 | 
			
		||||
♦
 | 
			
		||||
diams
 | 
			
		||||
9830
 | 
			
		||||
 | 
			
		||||
⇔
 | 
			
		||||
8660
 | 
			
		||||
hArr
 | 
			
		||||
 | 
			
		||||
⇒
 | 
			
		||||
8658
 | 
			
		||||
rArr
 | 
			
		||||
 | 
			
		||||
⇐
 | 
			
		||||
8656
 | 
			
		||||
lArr
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										27
									
								
								lib/plugins/ckgedit/action/entities/utils/entities.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,27 @@
 | 
			
		||||
# Typography replacements
 | 
			
		||||
#
 | 
			
		||||
# Order does matter!
 | 
			
		||||
#
 | 
			
		||||
# You can use HTML entities here, but it is not recommended because it may break
 | 
			
		||||
# non-HTML renderers. Use UTF-8 chars directly instead.
 | 
			
		||||
# This adds four entities that are needed by the ckgeditor.  Before substituting this file for
 | 
			
		||||
# Dokuwiki's make sure all of the entities in Dokuwiki's entities.conf are listed here.
 | 
			
		||||
<->  ↔
 | 
			
		||||
<-   ←
 | 
			
		||||
<=>  ⇔
 | 
			
		||||
<=   ⇐
 | 
			
		||||
<->     ↔
 | 
			
		||||
->      →
 | 
			
		||||
<-      ←
 | 
			
		||||
<=>     ⇔
 | 
			
		||||
=>      ⇒
 | 
			
		||||
<=      ⇐
 | 
			
		||||
>>      »
 | 
			
		||||
<<      «
 | 
			
		||||
---     —
 | 
			
		||||
--      –
 | 
			
		||||
(c)     ©
 | 
			
		||||
(tm)    ™
 | 
			
		||||
(r)     ®
 | 
			
		||||
...     …
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										52
									
								
								lib/plugins/ckgedit/action/entities/utils/entities.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,52 @@
 | 
			
		||||
 | 
			
		||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 | 
			
		||||
<html xmlns="http://www.w3.org/1999/xhtml">
 | 
			
		||||
<head>
 | 
			
		||||
<script type="text/javascript">	
 | 
			
		||||
var arr1 = new Array(' ','¡','¢','£','¤','¥','¦','§','¨','©','ª','«','¬','­','®','¯','°','±','²','³','´','µ','¶','·','¸','¹','º','»','¼','½','¾','¿','à','á','â','ã','Ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ','ò','ó','ô','õ','Ö','×','ø','ù','ú','û','Ü','ý','þ','ß','à','á','â','ã','ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ','ò','ó','ô','õ','ö','÷','ø','ù','ú','û','ü','ý','þ','ÿ','"','&','<','>','œ','œ','š','š','ÿ','ˆ','˜',' ',' ',' ','‌','‍','‎','‏','–','—','‘','’','‚','“','”','„','†','†','‰','‹','›','€','ƒ','α','β','γ','δ','ε','ζ','η','θ','ι','κ','λ','μ','ν','ξ','ο','π','ρ','σ','τ','υ','φ','χ','ψ','ω','α','β','γ','δ','ε','ζ','η','θ','ι','κ','λ','μ','ν','ξ','ο','π','ρ','ς','σ','τ','υ','φ','χ','ψ','ω','ϑ','ϒ','ϖ','•','…','′','′','‾','⁄','℘','ℑ','ℜ','™','ℵ','←','↑','→','↓','↔','↵','←','↑','→','↓','↔','∀','∂','∃','∅','∇','∈','∉','∋','∏','∑','−','∗','√','∝','∞','∠','∧','∨','∩','∪','∫','∴','∼','≅','≈','≠','≡','≤','≥','⊂','⊃','⊄','⊆','⊇','⊕','⊗','⊥','⋅','⌈','⌉','⌊','⌋','⟨','⟩','◊','♠','♣','♥','♦');
 | 
			
		||||
var arr2 = new Array(' ','¡','¢','£','¤','¥','¦','§','¨','©','ª','«','¬','­','®','¯','°','±','²','³','´','µ','¶','·','¸','¹','º','»','¼','½','¾','¿','À','Á','Â','Ã','Ä','Å','Æ','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ð','Ñ','Ò','Ó','Ô','Õ','Ö','×','Ø','Ù','Ú','Û','Ü','Ý','Þ','ß','à','á','â','ã','ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ','ò','ó','ô','õ','ö','÷','ø','ù','ú','û','ü','ý','þ','ÿ','"','&','<','>','Œ','œ','Š','š','Ÿ','ˆ','˜',' ',' ',' ','‌','‍','‎','‏','–','—','‘','’','‚','“','”','„','†','‡','‰','‹','›','€','ƒ','Α','Β','Γ','Δ','Ε','Ζ','Η','Θ','Ι','Κ','Λ','Μ','Ν','Ξ','Ο','Π','Ρ','Σ','Τ','Υ','Φ','Χ','Ψ','Ω','α','β','γ','δ','ε','ζ','η','θ','ι','κ','λ','μ','ν','ξ','ο','π','ρ','ς','σ','τ','υ','φ','χ','ψ','ω','ϑ','ϒ','ϖ','•','…','′','″','‾','⁄','℘','ℑ','ℜ','™','ℵ','←','↑','→','↓','↔','↵','⇐','⇑','⇒','⇓','⇔','∀','∂','∃','∅','∇','∈','∉','∋','∏','∑','−','∗','√','∝','∞','∠','∧','∨','∩','∪','∫','∴','∼','≅','≈','≠','≡','≤','≥','⊂','⊃','⊄','⊆','⊇','⊕','⊗','⊥','⋅','⌈','⌉','⌊','⌋','〈','〉','◊','♠','♣','♥','♦');
 | 
			
		||||
 | 
			
		||||
var arr_c = new Array('nbsp','iexcl','cent','pound','curren','yen','brvbar','sect','uml','copy','ordf','laquo','not','shy','reg','macr','deg','plusmn','sup2','sup3','acute','micro','para','middot','cedil','sup1','ordm','raquo','frac14','frac12','frac34','iquest','agrave','aacute','acirc','atilde','Auml','aring','aelig','ccedil','egrave','eacute','ecirc','euml','igrave','iacute','icirc','iuml','eth','ntilde','ograve','oacute','ocirc','otilde','Ouml','times','oslash','ugrave','uacute','ucirc','Uuml','yacute','thorn','szlig','agrave','aacute','acirc','atilde','auml','aring','aelig','ccedil','egrave','eacute','ecirc','euml','igrave','iacute','icirc','iuml','eth','ntilde','ograve','oacute','ocirc','otilde','ouml','divide','oslash','ugrave','uacute','ucirc','uuml','yacute','thorn','yuml','quot','amp','lt','gt','oelig','oelig','scaron','scaron','yuml','circ','tilde','ensp','emsp','thinsp','zwnj','zwj','lrm','rlm','ndash','mdash','lsquo','rsquo','sbquo','ldquo','rdquo','bdquo','dagger','dagger','permil','lsaquo','rsaquo','euro','fnof','alpha','beta','gamma','delta','epsilon','zeta','eta','theta','iota','kappa','lambda','mu','nu','xi','omicron','pi','rho','sigma','tau','upsilon','phi','chi','psi','omega','alpha','beta','gamma','delta','epsilon','zeta','eta','theta','iota','kappa','lambda','mu','nu','xi','omicron','pi','rho','sigmaf','sigma','tau','upsilon','phi','chi','psi','omega','thetasym','upsih','piv','bull','hellip','prime','prime','oline','frasl','weierp','image','real','trade','alefsym','larr','uarr','rarr','darr','harr','crarr','larr','uarr','rarr','darr','harr','forall','part','exist','empty','nabla','isin','notin','ni','prod','sum','minus','lowast','radic','prop','infin','ang','and','or','cap','cup','int','there4','sim','cong','asymp','ne','equiv','le','ge','sub','sup','nsub','sube','supe','oplus','otimes','perp','sdot','lceil','rceil','lfloor','rfloor','lang','rang','loz','spades','clubs','hearts','diams')
 | 
			
		||||
var arr_n = new Array('160','161','162','163','164','165','166','167','168','169','170','171','172','173','174','175','176','177','178','179','180','181','182','183','184','185','186','187','188','189','190','191','192','193','194','195','196','197','198','199','200','201','202','203','204','205','206','207','208','209','210','211','212','213','214','215','216','217','218','219','220','221','222','223','224','225','226','227','228','229','230','231','232','233','234','235','236','237','238','239','240','241','242','243','244','245','246','247','248','249','250','251','252','253','254','255','34','38','60','62','338','339','352','353','376','710','732','8194','8195','8201','8204','8205','8206','8207','8211','8212','8216','8217','8218','8220','8221','8222','8224','8225','8240','8249','8250','8364','402','913','914','915','916','917','918','919','920','921','922','923','924','925','926','927','928','929','931','932','933','934','935','936','937','945','946','947','948','949','950','951','952','953','954','955','956','957','958','959','960','961','962','963','964','965','966','967','968','969','977','978','982','8226','8230','8242','8243','8254','8260','8472','8465','8476','8482','8501','8592','8593','8594','8595','8596','8629','8656','8657','8658','8659','8660','8704','8706','8707','8709','8711','8712','8713','8715','8719','8721','8722','8727','8730','8733','8734','8736','8743','8744','8745','8746','8747','8756','8764','8773','8776','8800','8801','8804','8805','8834','8835','8836','8838','8839','8853','8855','8869','8901','8968','8969','8970','8971','9001','9002','9674','9824','9827','9829','9830')
 | 
			
		||||
 | 
			
		||||
</script>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<Table border=0>
 | 
			
		||||
<script type="text/javascript">	
 | 
			
		||||
var cols = 1 ;
 | 
			
		||||
 | 
			
		||||
var i = 0 ;
 | 
			
		||||
while (i < arr1.length)
 | 
			
		||||
{
 | 
			
		||||
	document.write("<TR>") ;
 | 
			
		||||
	for(var j = 0 ; j < cols ; j++)
 | 
			
		||||
	{
 | 
			
		||||
		if (arr1[i])
 | 
			
		||||
		{
 | 
			
		||||
			document.write('<TD width="1%"align="center" style="font-size: 11pt; font-weight:bold;">') ;
 | 
			
		||||
		    	    document.write(arr1[i]) ;
 | 
			
		||||
            document.write("<\/TD>") ;
 | 
			
		||||
 | 
			
		||||
            document.write('<TD width="1%" align="center" style="font-size: 10pt; ">') ;
 | 
			
		||||
		    	    document.write(arr_c[i]) ;
 | 
			
		||||
            document.write("<\/TD>") ;
 | 
			
		||||
		    	   
 | 
			
		||||
            document.write('<TD width="1%" align="center" style="font-size: 10pt;">') ;
 | 
			
		||||
                 document.write(arr_n[i]) ;
 | 
			
		||||
            document.write("<\/TD>") ;
 | 
			
		||||
	        document.write("<TD> <\/TD>");
 | 
			
		||||
		}   
 | 
			
		||||
		else
 | 
			
		||||
			document.write("<TD> <\/TD><TD> <\/TD><TD> <\/TD><TD style='font-size: 10pt; border-right:blue;'> <\/TD>") ;
 | 
			
		||||
		
 | 
			
		||||
		i++ ;
 | 
			
		||||
	}
 | 
			
		||||
	document.write("<\/TR>") ;
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
</table>
 | 
			
		||||
</body>
 | 
			
		||||
<html>
 | 
			
		||||
 | 
			
		||||
	
 | 
			
		||||
							
								
								
									
										711
									
								
								lib/plugins/ckgedit/action/entities/utils/entities.pl
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,711 @@
 | 
			
		||||
use strict;
 | 
			
		||||
 | 
			
		||||
my $count = 0;
 | 
			
		||||
my $skip = 0;
 | 
			
		||||
 | 
			
		||||
while(<DATA>) {
 | 
			
		||||
    next if /^\s+/;
 | 
			
		||||
    
 | 
			
		||||
    if ($skip) {
 | 
			
		||||
       $skip=0;
 | 
			
		||||
       next;
 | 
			
		||||
    }
 | 
			
		||||
        
 | 
			
		||||
    $count++ if /^&#/;        
 | 
			
		||||
    $count++ if /^&\w/;
 | 
			
		||||
    # print "$count: ";             
 | 
			
		||||
    print;
 | 
			
		||||
    if($count == 2) {
 | 
			
		||||
       $count = 0;
 | 
			
		||||
       print "\n";
 | 
			
		||||
       $skip = 1;          
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
}
 | 
			
		||||
# print $count, "\n";
 | 
			
		||||
 | 
			
		||||
__DATA__
 | 
			
		||||
"
 | 
			
		||||
"
 | 
			
		||||
"
 | 
			
		||||
quotation mark
 | 
			
		||||
 | 
			
		||||
'
 | 
			
		||||
'
 | 
			
		||||
' 
 | 
			
		||||
apostrophe 
 | 
			
		||||
 | 
			
		||||
&
 | 
			
		||||
&
 | 
			
		||||
&
 | 
			
		||||
ampersand
 | 
			
		||||
 | 
			
		||||
<
 | 
			
		||||
<
 | 
			
		||||
<
 | 
			
		||||
less-than
 | 
			
		||||
 | 
			
		||||
>
 | 
			
		||||
>
 | 
			
		||||
>
 | 
			
		||||
greater-than
 | 
			
		||||
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
inverted exclamation mark
 | 
			
		||||
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
cent
 | 
			
		||||
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
pound
 | 
			
		||||
 | 
			
		||||
¤
 | 
			
		||||
¤
 | 
			
		||||
¤
 | 
			
		||||
currency
 | 
			
		||||
 | 
			
		||||
¥
 | 
			
		||||
¥
 | 
			
		||||
¥
 | 
			
		||||
yen
 | 
			
		||||
 | 
			
		||||
¦
 | 
			
		||||
¦
 | 
			
		||||
¦
 | 
			
		||||
broken vertical bar
 | 
			
		||||
 | 
			
		||||
§
 | 
			
		||||
§
 | 
			
		||||
§
 | 
			
		||||
section
 | 
			
		||||
 | 
			
		||||
¨
 | 
			
		||||
¨
 | 
			
		||||
¨
 | 
			
		||||
spacing diaeresis
 | 
			
		||||
 | 
			
		||||
©
 | 
			
		||||
©
 | 
			
		||||
©
 | 
			
		||||
copyright
 | 
			
		||||
 | 
			
		||||
ª
 | 
			
		||||
ª
 | 
			
		||||
ª
 | 
			
		||||
feminine ordinal indicator
 | 
			
		||||
 | 
			
		||||
«
 | 
			
		||||
«
 | 
			
		||||
«
 | 
			
		||||
angle quotation mark (left)
 | 
			
		||||
 | 
			
		||||
¬
 | 
			
		||||
¬
 | 
			
		||||
¬
 | 
			
		||||
negation
 | 
			
		||||
 | 
			
		||||
­
 | 
			
		||||
­
 | 
			
		||||
soft hyphen
 | 
			
		||||
 | 
			
		||||
®
 | 
			
		||||
®
 | 
			
		||||
®
 | 
			
		||||
registered trademark
 | 
			
		||||
 | 
			
		||||
¯
 | 
			
		||||
¯
 | 
			
		||||
¯
 | 
			
		||||
spacing macron
 | 
			
		||||
 | 
			
		||||
°
 | 
			
		||||
°
 | 
			
		||||
°
 | 
			
		||||
degree
 | 
			
		||||
 | 
			
		||||
±
 | 
			
		||||
±
 | 
			
		||||
±
 | 
			
		||||
plus-or-minus 
 | 
			
		||||
 | 
			
		||||
²
 | 
			
		||||
²
 | 
			
		||||
²
 | 
			
		||||
superscript 2
 | 
			
		||||
 | 
			
		||||
³
 | 
			
		||||
³
 | 
			
		||||
³
 | 
			
		||||
superscript 3
 | 
			
		||||
 | 
			
		||||
´
 | 
			
		||||
´
 | 
			
		||||
´
 | 
			
		||||
spacing acute
 | 
			
		||||
 | 
			
		||||
µ
 | 
			
		||||
µ
 | 
			
		||||
µ
 | 
			
		||||
micro
 | 
			
		||||
 | 
			
		||||
¶
 | 
			
		||||
¶
 | 
			
		||||
¶
 | 
			
		||||
paragraph
 | 
			
		||||
 | 
			
		||||
·
 | 
			
		||||
·
 | 
			
		||||
·
 | 
			
		||||
middle dot
 | 
			
		||||
 | 
			
		||||
¸
 | 
			
		||||
¸
 | 
			
		||||
¸
 | 
			
		||||
spacing cedilla
 | 
			
		||||
 | 
			
		||||
¹
 | 
			
		||||
¹
 | 
			
		||||
¹
 | 
			
		||||
superscript 1
 | 
			
		||||
 | 
			
		||||
º
 | 
			
		||||
º
 | 
			
		||||
º
 | 
			
		||||
masculine ordinal indicator
 | 
			
		||||
 | 
			
		||||
»
 | 
			
		||||
»
 | 
			
		||||
»
 | 
			
		||||
angle quotation mark (right)
 | 
			
		||||
 | 
			
		||||
¼
 | 
			
		||||
¼
 | 
			
		||||
¼
 | 
			
		||||
fraction 1/4
 | 
			
		||||
 | 
			
		||||
½
 | 
			
		||||
½
 | 
			
		||||
½
 | 
			
		||||
fraction 1/2
 | 
			
		||||
 | 
			
		||||
¾
 | 
			
		||||
¾
 | 
			
		||||
¾
 | 
			
		||||
fraction 3/4
 | 
			
		||||
 | 
			
		||||
¿
 | 
			
		||||
¿
 | 
			
		||||
¿
 | 
			
		||||
inverted question mark
 | 
			
		||||
 | 
			
		||||
×
 | 
			
		||||
×
 | 
			
		||||
×
 | 
			
		||||
multiplication
 | 
			
		||||
 | 
			
		||||
÷
 | 
			
		||||
÷
 | 
			
		||||
÷
 | 
			
		||||
division
 | 
			
		||||
 | 
			
		||||
∀
 | 
			
		||||
∀
 | 
			
		||||
for all
 | 
			
		||||
 | 
			
		||||
∂
 | 
			
		||||
∂
 | 
			
		||||
∂
 | 
			
		||||
part
 | 
			
		||||
 | 
			
		||||
∏
 | 
			
		||||
∏
 | 
			
		||||
∏
 | 
			
		||||
prod
 | 
			
		||||
 | 
			
		||||
∑
 | 
			
		||||
∑
 | 
			
		||||
∑
 | 
			
		||||
sum
 | 
			
		||||
 | 
			
		||||
−
 | 
			
		||||
−
 | 
			
		||||
−
 | 
			
		||||
minus
 | 
			
		||||
 | 
			
		||||
∞
 | 
			
		||||
∞
 | 
			
		||||
∞
 | 
			
		||||
infinity
 | 
			
		||||
 | 
			
		||||
∩
 | 
			
		||||
∩
 | 
			
		||||
∩
 | 
			
		||||
cap
 | 
			
		||||
 | 
			
		||||
∫
 | 
			
		||||
∫
 | 
			
		||||
∫
 | 
			
		||||
integral
 | 
			
		||||
 | 
			
		||||
≈
 | 
			
		||||
≈
 | 
			
		||||
≈
 | 
			
		||||
almost equal
 | 
			
		||||
 | 
			
		||||
≠
 | 
			
		||||
≠
 | 
			
		||||
≠
 | 
			
		||||
not equal
 | 
			
		||||
≡
 | 
			
		||||
≡
 | 
			
		||||
≡
 | 
			
		||||
equivalent
 | 
			
		||||
≤
 | 
			
		||||
≤
 | 
			
		||||
≤
 | 
			
		||||
less or equal
 | 
			
		||||
≥
 | 
			
		||||
≥
 | 
			
		||||
≥
 | 
			
		||||
greater or equal
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Α
 | 
			
		||||
Α
 | 
			
		||||
Α
 | 
			
		||||
Alpha
 | 
			
		||||
 | 
			
		||||
Β
 | 
			
		||||
Β
 | 
			
		||||
Β
 | 
			
		||||
Beta
 | 
			
		||||
 | 
			
		||||
Γ
 | 
			
		||||
Γ
 | 
			
		||||
Γ
 | 
			
		||||
Gamma
 | 
			
		||||
 | 
			
		||||
Δ
 | 
			
		||||
Δ
 | 
			
		||||
Δ
 | 
			
		||||
Delta
 | 
			
		||||
 | 
			
		||||
Ε
 | 
			
		||||
Ε
 | 
			
		||||
Ε
 | 
			
		||||
Epsilon
 | 
			
		||||
 | 
			
		||||
Ζ
 | 
			
		||||
Ζ
 | 
			
		||||
Ζ
 | 
			
		||||
Zeta
 | 
			
		||||
 | 
			
		||||
Η
 | 
			
		||||
Η
 | 
			
		||||
Η
 | 
			
		||||
Eta
 | 
			
		||||
 | 
			
		||||
Θ
 | 
			
		||||
Θ
 | 
			
		||||
Θ
 | 
			
		||||
Theta
 | 
			
		||||
 | 
			
		||||
Ι
 | 
			
		||||
Ι
 | 
			
		||||
Ι
 | 
			
		||||
Iota
 | 
			
		||||
 | 
			
		||||
Κ
 | 
			
		||||
Κ
 | 
			
		||||
Κ
 | 
			
		||||
Kappa
 | 
			
		||||
 | 
			
		||||
Λ
 | 
			
		||||
Λ
 | 
			
		||||
Λ
 | 
			
		||||
Lambda
 | 
			
		||||
 | 
			
		||||
Μ
 | 
			
		||||
Μ
 | 
			
		||||
Μ
 | 
			
		||||
Mu
 | 
			
		||||
 | 
			
		||||
Ν
 | 
			
		||||
Ν
 | 
			
		||||
Ν
 | 
			
		||||
Nu
 | 
			
		||||
 | 
			
		||||
Ξ
 | 
			
		||||
Ξ
 | 
			
		||||
Ξ
 | 
			
		||||
Xi
 | 
			
		||||
 | 
			
		||||
Ο
 | 
			
		||||
Ο
 | 
			
		||||
Ο
 | 
			
		||||
Omicron
 | 
			
		||||
 | 
			
		||||
Π
 | 
			
		||||
Π
 | 
			
		||||
Π
 | 
			
		||||
Pi
 | 
			
		||||
 | 
			
		||||
Ρ
 | 
			
		||||
Ρ
 | 
			
		||||
Ρ
 | 
			
		||||
Rho
 | 
			
		||||
 | 
			
		||||
Σ
 | 
			
		||||
Σ
 | 
			
		||||
Σ
 | 
			
		||||
Sigma
 | 
			
		||||
 | 
			
		||||
Τ
 | 
			
		||||
Τ
 | 
			
		||||
Τ
 | 
			
		||||
Tau
 | 
			
		||||
 | 
			
		||||
Υ
 | 
			
		||||
Υ
 | 
			
		||||
Υ
 | 
			
		||||
Upsilon
 | 
			
		||||
 | 
			
		||||
Φ
 | 
			
		||||
Φ
 | 
			
		||||
Φ
 | 
			
		||||
Phi
 | 
			
		||||
 | 
			
		||||
Χ
 | 
			
		||||
Χ
 | 
			
		||||
Χ
 | 
			
		||||
Chi
 | 
			
		||||
 | 
			
		||||
Ψ
 | 
			
		||||
Ψ
 | 
			
		||||
Ψ
 | 
			
		||||
Psi
 | 
			
		||||
 | 
			
		||||
Ω
 | 
			
		||||
Ω
 | 
			
		||||
Ω
 | 
			
		||||
Omega
 | 
			
		||||
 
 | 
			
		||||
α
 | 
			
		||||
α
 | 
			
		||||
α
 | 
			
		||||
alpha
 | 
			
		||||
 | 
			
		||||
β
 | 
			
		||||
β
 | 
			
		||||
β
 | 
			
		||||
beta
 | 
			
		||||
 | 
			
		||||
γ
 | 
			
		||||
γ
 | 
			
		||||
γ
 | 
			
		||||
gamma
 | 
			
		||||
 | 
			
		||||
δ
 | 
			
		||||
δ
 | 
			
		||||
δ
 | 
			
		||||
delta
 | 
			
		||||
 | 
			
		||||
ε
 | 
			
		||||
ε
 | 
			
		||||
ε
 | 
			
		||||
epsilon
 | 
			
		||||
 | 
			
		||||
ζ
 | 
			
		||||
ζ
 | 
			
		||||
ζ
 | 
			
		||||
zeta
 | 
			
		||||
 | 
			
		||||
η
 | 
			
		||||
η
 | 
			
		||||
η
 | 
			
		||||
eta
 | 
			
		||||
 | 
			
		||||
θ
 | 
			
		||||
θ
 | 
			
		||||
θ
 | 
			
		||||
theta
 | 
			
		||||
 | 
			
		||||
ι
 | 
			
		||||
ι
 | 
			
		||||
ι
 | 
			
		||||
iota
 | 
			
		||||
 | 
			
		||||
κ
 | 
			
		||||
κ
 | 
			
		||||
κ
 | 
			
		||||
kappa
 | 
			
		||||
 | 
			
		||||
λ
 | 
			
		||||
λ
 | 
			
		||||
λ
 | 
			
		||||
lambda
 | 
			
		||||
 | 
			
		||||
μ
 | 
			
		||||
μ
 | 
			
		||||
μ
 | 
			
		||||
mu
 | 
			
		||||
ν
 | 
			
		||||
ν
 | 
			
		||||
ν
 | 
			
		||||
nu
 | 
			
		||||
ξ
 | 
			
		||||
ξ
 | 
			
		||||
ξ
 | 
			
		||||
xi
 | 
			
		||||
ο
 | 
			
		||||
ο
 | 
			
		||||
ο
 | 
			
		||||
omicron
 | 
			
		||||
π
 | 
			
		||||
π
 | 
			
		||||
π
 | 
			
		||||
pi
 | 
			
		||||
ρ
 | 
			
		||||
ρ
 | 
			
		||||
ρ
 | 
			
		||||
rho
 | 
			
		||||
ς
 | 
			
		||||
ς
 | 
			
		||||
ς
 | 
			
		||||
sigmaf
 | 
			
		||||
σ
 | 
			
		||||
σ
 | 
			
		||||
σ
 | 
			
		||||
sigma
 | 
			
		||||
τ
 | 
			
		||||
τ
 | 
			
		||||
τ
 | 
			
		||||
tau
 | 
			
		||||
υ
 | 
			
		||||
υ
 | 
			
		||||
υ
 | 
			
		||||
upsilon
 | 
			
		||||
φ
 | 
			
		||||
φ
 | 
			
		||||
φ
 | 
			
		||||
phi
 | 
			
		||||
χ
 | 
			
		||||
χ
 | 
			
		||||
χ
 | 
			
		||||
chi
 | 
			
		||||
ψ
 | 
			
		||||
ψ
 | 
			
		||||
ψ
 | 
			
		||||
psi
 | 
			
		||||
ω
 | 
			
		||||
ω
 | 
			
		||||
ω
 | 
			
		||||
omega
 | 
			
		||||
 | 
			
		||||
Œ
 | 
			
		||||
Œ
 | 
			
		||||
Œ
 | 
			
		||||
capital ligature OE
 | 
			
		||||
œ
 | 
			
		||||
œ
 | 
			
		||||
œ
 | 
			
		||||
small ligature oe
 | 
			
		||||
Š
 | 
			
		||||
Š
 | 
			
		||||
Š
 | 
			
		||||
capital S with caron
 | 
			
		||||
š
 | 
			
		||||
š
 | 
			
		||||
š
 | 
			
		||||
small S with caron
 | 
			
		||||
Ÿ
 | 
			
		||||
Ÿ
 | 
			
		||||
Ÿ
 | 
			
		||||
capital Y with diaeres
 | 
			
		||||
ƒ
 | 
			
		||||
ƒ
 | 
			
		||||
ƒ
 | 
			
		||||
f with hook
 | 
			
		||||
ˆ
 | 
			
		||||
ˆ
 | 
			
		||||
ˆ
 | 
			
		||||
modifier letter circumflex accent
 | 
			
		||||
˜
 | 
			
		||||
˜
 | 
			
		||||
˜
 | 
			
		||||
small tilde
 | 
			
		||||
 | 
			
		||||
‌
 | 
			
		||||
‌
 | 
			
		||||
zero width non-joiner
 | 
			
		||||
 | 
			
		||||
‍
 | 
			
		||||
‍
 | 
			
		||||
zero width joiner
 | 
			
		||||
 | 
			
		||||
‎
 | 
			
		||||
‎
 | 
			
		||||
left-to-right mark
 | 
			
		||||
 | 
			
		||||
‏
 | 
			
		||||
‏
 | 
			
		||||
right-to-left mark
 | 
			
		||||
 | 
			
		||||
–
 | 
			
		||||
–
 | 
			
		||||
–
 | 
			
		||||
en dash
 | 
			
		||||
 | 
			
		||||
—
 | 
			
		||||
—
 | 
			
		||||
—
 | 
			
		||||
em dash
 | 
			
		||||
 | 
			
		||||
‘
 | 
			
		||||
‘
 | 
			
		||||
‘
 | 
			
		||||
left single quotation mark
 | 
			
		||||
 | 
			
		||||
’
 | 
			
		||||
’
 | 
			
		||||
’
 | 
			
		||||
right single quotation mark
 | 
			
		||||
 | 
			
		||||
‚
 | 
			
		||||
‚
 | 
			
		||||
‚
 | 
			
		||||
single low-9 quotation mark
 | 
			
		||||
 | 
			
		||||
“
 | 
			
		||||
“
 | 
			
		||||
“
 | 
			
		||||
left double quotation mark
 | 
			
		||||
 | 
			
		||||
”
 | 
			
		||||
”
 | 
			
		||||
”
 | 
			
		||||
right double quotation mark
 | 
			
		||||
 | 
			
		||||
„
 | 
			
		||||
„
 | 
			
		||||
„
 | 
			
		||||
double low-9 quotation mark
 | 
			
		||||
 | 
			
		||||
†
 | 
			
		||||
†
 | 
			
		||||
†
 | 
			
		||||
dagger
 | 
			
		||||
 | 
			
		||||
‡
 | 
			
		||||
‡
 | 
			
		||||
‡
 | 
			
		||||
double dagger
 | 
			
		||||
 | 
			
		||||
•
 | 
			
		||||
•
 | 
			
		||||
•
 | 
			
		||||
bullet
 | 
			
		||||
 | 
			
		||||
…
 | 
			
		||||
…
 | 
			
		||||
…
 | 
			
		||||
horizontal ellipsis
 | 
			
		||||
 | 
			
		||||
‰
 | 
			
		||||
‰
 | 
			
		||||
‰
 | 
			
		||||
per mille 
 | 
			
		||||
 | 
			
		||||
′
 | 
			
		||||
′
 | 
			
		||||
′
 | 
			
		||||
minutes
 | 
			
		||||
 | 
			
		||||
″
 | 
			
		||||
″
 | 
			
		||||
″
 | 
			
		||||
seconds
 | 
			
		||||
 | 
			
		||||
‹
 | 
			
		||||
‹
 | 
			
		||||
‹
 | 
			
		||||
single left angle quotation
 | 
			
		||||
 | 
			
		||||
›
 | 
			
		||||
›
 | 
			
		||||
›
 | 
			
		||||
single right angle quotation
 | 
			
		||||
 | 
			
		||||
‾
 | 
			
		||||
‾
 | 
			
		||||
‾
 | 
			
		||||
overline
 | 
			
		||||
 | 
			
		||||
€
 | 
			
		||||
€
 | 
			
		||||
€
 | 
			
		||||
euro
 | 
			
		||||
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
trademark
 | 
			
		||||
 | 
			
		||||
←
 | 
			
		||||
←
 | 
			
		||||
←
 | 
			
		||||
left arrow
 | 
			
		||||
 | 
			
		||||
↑
 | 
			
		||||
↑
 | 
			
		||||
↑
 | 
			
		||||
up arrow
 | 
			
		||||
 | 
			
		||||
→
 | 
			
		||||
→
 | 
			
		||||
→
 | 
			
		||||
right arrow
 | 
			
		||||
 | 
			
		||||
↓
 | 
			
		||||
↓
 | 
			
		||||
↓
 | 
			
		||||
down arrow
 | 
			
		||||
 | 
			
		||||
↔
 | 
			
		||||
↔
 | 
			
		||||
↔
 | 
			
		||||
left right arrow
 | 
			
		||||
 | 
			
		||||
◊
 | 
			
		||||
◊
 | 
			
		||||
◊
 | 
			
		||||
lozenge
 | 
			
		||||
 | 
			
		||||
♠
 | 
			
		||||
♠
 | 
			
		||||
♠
 | 
			
		||||
spade
 | 
			
		||||
 | 
			
		||||
♣
 | 
			
		||||
♣
 | 
			
		||||
♣
 | 
			
		||||
club
 | 
			
		||||
 | 
			
		||||
♥
 | 
			
		||||
♥
 | 
			
		||||
♥
 | 
			
		||||
heart
 | 
			
		||||
 | 
			
		||||
♦
 | 
			
		||||
♦
 | 
			
		||||
♦
 | 
			
		||||
diamond
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										718
									
								
								lib/plugins/ckgedit/action/entities/utils/entities.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,718 @@
 | 
			
		||||
"
 | 
			
		||||
"
 | 
			
		||||
"
 | 
			
		||||
quotation mark
 | 
			
		||||
 | 
			
		||||
'
 | 
			
		||||
'
 | 
			
		||||
' (does not work in IE)
 | 
			
		||||
apostrophe 
 | 
			
		||||
 | 
			
		||||
&
 | 
			
		||||
&
 | 
			
		||||
&
 | 
			
		||||
ampersand
 | 
			
		||||
 | 
			
		||||
<
 | 
			
		||||
<
 | 
			
		||||
<
 | 
			
		||||
less-than
 | 
			
		||||
 | 
			
		||||
>
 | 
			
		||||
>
 | 
			
		||||
>
 | 
			
		||||
greater-than
 | 
			
		||||
Note: Entity names are case sensitive!
 | 
			
		||||
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
¡
 | 
			
		||||
inverted exclamation mark
 | 
			
		||||
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
¢
 | 
			
		||||
cent
 | 
			
		||||
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
£
 | 
			
		||||
pound
 | 
			
		||||
 | 
			
		||||
¤
 | 
			
		||||
¤
 | 
			
		||||
¤
 | 
			
		||||
currency
 | 
			
		||||
 | 
			
		||||
¥
 | 
			
		||||
¥
 | 
			
		||||
¥
 | 
			
		||||
yen
 | 
			
		||||
 | 
			
		||||
¦
 | 
			
		||||
¦
 | 
			
		||||
¦
 | 
			
		||||
broken vertical bar
 | 
			
		||||
 | 
			
		||||
§
 | 
			
		||||
§
 | 
			
		||||
§
 | 
			
		||||
section
 | 
			
		||||
 | 
			
		||||
¨
 | 
			
		||||
¨
 | 
			
		||||
¨
 | 
			
		||||
spacing diaeresis
 | 
			
		||||
 | 
			
		||||
©
 | 
			
		||||
©
 | 
			
		||||
©
 | 
			
		||||
copyright
 | 
			
		||||
 | 
			
		||||
ª
 | 
			
		||||
ª
 | 
			
		||||
ª
 | 
			
		||||
feminine ordinal indicator
 | 
			
		||||
 | 
			
		||||
«
 | 
			
		||||
«
 | 
			
		||||
«
 | 
			
		||||
angle quotation mark (left)
 | 
			
		||||
 | 
			
		||||
¬
 | 
			
		||||
¬
 | 
			
		||||
¬
 | 
			
		||||
negation
 | 
			
		||||
 | 
			
		||||
­
 | 
			
		||||
­
 | 
			
		||||
soft hyphen
 | 
			
		||||
 | 
			
		||||
®
 | 
			
		||||
®
 | 
			
		||||
®
 | 
			
		||||
registered trademark
 | 
			
		||||
 | 
			
		||||
¯
 | 
			
		||||
¯
 | 
			
		||||
¯
 | 
			
		||||
spacing macron
 | 
			
		||||
 | 
			
		||||
°
 | 
			
		||||
°
 | 
			
		||||
°
 | 
			
		||||
degree
 | 
			
		||||
 | 
			
		||||
±
 | 
			
		||||
±
 | 
			
		||||
±
 | 
			
		||||
plus-or-minus 
 | 
			
		||||
 | 
			
		||||
²
 | 
			
		||||
²
 | 
			
		||||
²
 | 
			
		||||
superscript 2
 | 
			
		||||
 | 
			
		||||
³
 | 
			
		||||
³
 | 
			
		||||
³
 | 
			
		||||
superscript 3
 | 
			
		||||
 | 
			
		||||
´
 | 
			
		||||
´
 | 
			
		||||
´
 | 
			
		||||
spacing acute
 | 
			
		||||
 | 
			
		||||
µ
 | 
			
		||||
µ
 | 
			
		||||
µ
 | 
			
		||||
micro
 | 
			
		||||
 | 
			
		||||
¶
 | 
			
		||||
¶
 | 
			
		||||
¶
 | 
			
		||||
paragraph
 | 
			
		||||
 | 
			
		||||
·
 | 
			
		||||
·
 | 
			
		||||
·
 | 
			
		||||
middle dot
 | 
			
		||||
 | 
			
		||||
¸
 | 
			
		||||
¸
 | 
			
		||||
¸
 | 
			
		||||
spacing cedilla
 | 
			
		||||
 | 
			
		||||
¹
 | 
			
		||||
¹
 | 
			
		||||
¹
 | 
			
		||||
superscript 1
 | 
			
		||||
 | 
			
		||||
º
 | 
			
		||||
º
 | 
			
		||||
º
 | 
			
		||||
masculine ordinal indicator
 | 
			
		||||
 | 
			
		||||
»
 | 
			
		||||
»
 | 
			
		||||
»
 | 
			
		||||
angle quotation mark (right)
 | 
			
		||||
 | 
			
		||||
¼
 | 
			
		||||
¼
 | 
			
		||||
¼
 | 
			
		||||
fraction 1/4
 | 
			
		||||
 | 
			
		||||
½
 | 
			
		||||
½
 | 
			
		||||
½
 | 
			
		||||
fraction 1/2
 | 
			
		||||
 | 
			
		||||
¾
 | 
			
		||||
¾
 | 
			
		||||
¾
 | 
			
		||||
fraction 3/4
 | 
			
		||||
 | 
			
		||||
¿
 | 
			
		||||
¿
 | 
			
		||||
¿
 | 
			
		||||
inverted question mark
 | 
			
		||||
 | 
			
		||||
×
 | 
			
		||||
×
 | 
			
		||||
×
 | 
			
		||||
multiplication
 | 
			
		||||
 | 
			
		||||
÷
 | 
			
		||||
÷
 | 
			
		||||
÷
 | 
			
		||||
division
 | 
			
		||||
 | 
			
		||||
∀
 | 
			
		||||
∀
 | 
			
		||||
for all
 | 
			
		||||
 | 
			
		||||
∂
 | 
			
		||||
∂
 | 
			
		||||
∂
 | 
			
		||||
part
 | 
			
		||||
 | 
			
		||||
∏
 | 
			
		||||
∏
 | 
			
		||||
∏
 | 
			
		||||
prod
 | 
			
		||||
 | 
			
		||||
∑
 | 
			
		||||
∑
 | 
			
		||||
∑
 | 
			
		||||
sum
 | 
			
		||||
 | 
			
		||||
−
 | 
			
		||||
−
 | 
			
		||||
−
 | 
			
		||||
minus
 | 
			
		||||
 | 
			
		||||
∞
 | 
			
		||||
∞
 | 
			
		||||
∞
 | 
			
		||||
infinity
 | 
			
		||||
 | 
			
		||||
∩
 | 
			
		||||
∩
 | 
			
		||||
∩
 | 
			
		||||
cap
 | 
			
		||||
 | 
			
		||||
∫
 | 
			
		||||
∫
 | 
			
		||||
∫
 | 
			
		||||
integral
 | 
			
		||||
 | 
			
		||||
≈
 | 
			
		||||
≈
 | 
			
		||||
≈
 | 
			
		||||
almost equal
 | 
			
		||||
≠
 | 
			
		||||
≠
 | 
			
		||||
≠
 | 
			
		||||
not equal
 | 
			
		||||
≡
 | 
			
		||||
≡
 | 
			
		||||
≡
 | 
			
		||||
equivalent
 | 
			
		||||
≤
 | 
			
		||||
≤
 | 
			
		||||
≤
 | 
			
		||||
less or equal
 | 
			
		||||
≥
 | 
			
		||||
≥
 | 
			
		||||
≥
 | 
			
		||||
greater or equal
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Α
 | 
			
		||||
Α
 | 
			
		||||
Α
 | 
			
		||||
Alpha
 | 
			
		||||
 | 
			
		||||
Β
 | 
			
		||||
Β
 | 
			
		||||
Β
 | 
			
		||||
Beta
 | 
			
		||||
 | 
			
		||||
Γ
 | 
			
		||||
Γ
 | 
			
		||||
Γ
 | 
			
		||||
Gamma
 | 
			
		||||
 | 
			
		||||
Δ
 | 
			
		||||
Δ
 | 
			
		||||
Δ
 | 
			
		||||
Delta
 | 
			
		||||
 | 
			
		||||
Ε
 | 
			
		||||
Ε
 | 
			
		||||
Ε
 | 
			
		||||
Epsilon
 | 
			
		||||
 | 
			
		||||
Ζ
 | 
			
		||||
Ζ
 | 
			
		||||
Ζ
 | 
			
		||||
Zeta
 | 
			
		||||
 | 
			
		||||
Η
 | 
			
		||||
Η
 | 
			
		||||
Η
 | 
			
		||||
Eta
 | 
			
		||||
 | 
			
		||||
Θ
 | 
			
		||||
Θ
 | 
			
		||||
Θ
 | 
			
		||||
Theta
 | 
			
		||||
 | 
			
		||||
Ι
 | 
			
		||||
Ι
 | 
			
		||||
Ι
 | 
			
		||||
Iota
 | 
			
		||||
 | 
			
		||||
Κ
 | 
			
		||||
Κ
 | 
			
		||||
Κ
 | 
			
		||||
Kappa
 | 
			
		||||
 | 
			
		||||
Λ
 | 
			
		||||
Λ
 | 
			
		||||
Λ
 | 
			
		||||
Lambda
 | 
			
		||||
 | 
			
		||||
Μ
 | 
			
		||||
Μ
 | 
			
		||||
Μ
 | 
			
		||||
Mu
 | 
			
		||||
 | 
			
		||||
Ν
 | 
			
		||||
Ν
 | 
			
		||||
Ν
 | 
			
		||||
Nu
 | 
			
		||||
 | 
			
		||||
Ξ
 | 
			
		||||
Ξ
 | 
			
		||||
Ξ
 | 
			
		||||
Xi
 | 
			
		||||
 | 
			
		||||
Ο
 | 
			
		||||
Ο
 | 
			
		||||
Ο
 | 
			
		||||
Omicron
 | 
			
		||||
 | 
			
		||||
Π
 | 
			
		||||
Π
 | 
			
		||||
Π
 | 
			
		||||
Pi
 | 
			
		||||
 | 
			
		||||
Ρ
 | 
			
		||||
Ρ
 | 
			
		||||
Ρ
 | 
			
		||||
Rho
 | 
			
		||||
 | 
			
		||||
Σ
 | 
			
		||||
Σ
 | 
			
		||||
Σ
 | 
			
		||||
Sigma
 | 
			
		||||
 | 
			
		||||
Τ
 | 
			
		||||
Τ
 | 
			
		||||
Τ
 | 
			
		||||
Tau
 | 
			
		||||
 | 
			
		||||
Υ
 | 
			
		||||
Υ
 | 
			
		||||
Υ
 | 
			
		||||
Upsilon
 | 
			
		||||
 | 
			
		||||
Φ
 | 
			
		||||
Φ
 | 
			
		||||
Φ
 | 
			
		||||
Phi
 | 
			
		||||
 | 
			
		||||
Χ
 | 
			
		||||
Χ
 | 
			
		||||
Χ
 | 
			
		||||
Chi
 | 
			
		||||
 | 
			
		||||
Ψ
 | 
			
		||||
Ψ
 | 
			
		||||
Ψ
 | 
			
		||||
Psi
 | 
			
		||||
 | 
			
		||||
Ω
 | 
			
		||||
Ω
 | 
			
		||||
Ω
 | 
			
		||||
Omega
 | 
			
		||||
 
 | 
			
		||||
α
 | 
			
		||||
α
 | 
			
		||||
α
 | 
			
		||||
alpha
 | 
			
		||||
 | 
			
		||||
β
 | 
			
		||||
β
 | 
			
		||||
β
 | 
			
		||||
beta
 | 
			
		||||
 | 
			
		||||
γ
 | 
			
		||||
γ
 | 
			
		||||
γ
 | 
			
		||||
gamma
 | 
			
		||||
 | 
			
		||||
δ
 | 
			
		||||
δ
 | 
			
		||||
δ
 | 
			
		||||
delta
 | 
			
		||||
 | 
			
		||||
ε
 | 
			
		||||
ε
 | 
			
		||||
ε
 | 
			
		||||
epsilon
 | 
			
		||||
 | 
			
		||||
ζ
 | 
			
		||||
ζ
 | 
			
		||||
ζ
 | 
			
		||||
zeta
 | 
			
		||||
 | 
			
		||||
η
 | 
			
		||||
η
 | 
			
		||||
η
 | 
			
		||||
eta
 | 
			
		||||
 | 
			
		||||
θ
 | 
			
		||||
θ
 | 
			
		||||
θ
 | 
			
		||||
theta
 | 
			
		||||
 | 
			
		||||
ι
 | 
			
		||||
ι
 | 
			
		||||
ι
 | 
			
		||||
iota
 | 
			
		||||
 | 
			
		||||
κ
 | 
			
		||||
κ
 | 
			
		||||
κ
 | 
			
		||||
kappa
 | 
			
		||||
 | 
			
		||||
λ
 | 
			
		||||
λ
 | 
			
		||||
λ
 | 
			
		||||
lambda
 | 
			
		||||
 | 
			
		||||
μ
 | 
			
		||||
μ
 | 
			
		||||
μ
 | 
			
		||||
mu
 | 
			
		||||
ν
 | 
			
		||||
ν
 | 
			
		||||
ν
 | 
			
		||||
nu
 | 
			
		||||
ξ
 | 
			
		||||
ξ
 | 
			
		||||
ξ
 | 
			
		||||
xi
 | 
			
		||||
ο
 | 
			
		||||
ο
 | 
			
		||||
ο
 | 
			
		||||
omicron
 | 
			
		||||
π
 | 
			
		||||
π
 | 
			
		||||
π
 | 
			
		||||
pi
 | 
			
		||||
ρ
 | 
			
		||||
ρ
 | 
			
		||||
ρ
 | 
			
		||||
rho
 | 
			
		||||
ς
 | 
			
		||||
ς
 | 
			
		||||
ς
 | 
			
		||||
sigmaf
 | 
			
		||||
σ
 | 
			
		||||
σ
 | 
			
		||||
σ
 | 
			
		||||
sigma
 | 
			
		||||
τ
 | 
			
		||||
τ
 | 
			
		||||
τ
 | 
			
		||||
tau
 | 
			
		||||
υ
 | 
			
		||||
υ
 | 
			
		||||
υ
 | 
			
		||||
upsilon
 | 
			
		||||
φ
 | 
			
		||||
φ
 | 
			
		||||
φ
 | 
			
		||||
phi
 | 
			
		||||
χ
 | 
			
		||||
χ
 | 
			
		||||
χ
 | 
			
		||||
chi
 | 
			
		||||
ψ
 | 
			
		||||
ψ
 | 
			
		||||
ψ
 | 
			
		||||
psi
 | 
			
		||||
ω
 | 
			
		||||
ω
 | 
			
		||||
ω
 | 
			
		||||
omega
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
ϑ
 | 
			
		||||
ϑ
 | 
			
		||||
ϑ
 | 
			
		||||
theta symbol
 | 
			
		||||
ϒ
 | 
			
		||||
ϒ
 | 
			
		||||
ϒ
 | 
			
		||||
upsilon symbol
 | 
			
		||||
ϖ
 | 
			
		||||
ϖ
 | 
			
		||||
ϖ
 | 
			
		||||
pi symbol
 | 
			
		||||
Other Entities Supported by HTML
 | 
			
		||||
Character
 | 
			
		||||
Entity Number
 | 
			
		||||
Entity Name
 | 
			
		||||
Description
 | 
			
		||||
Œ
 | 
			
		||||
Œ
 | 
			
		||||
Œ
 | 
			
		||||
capital ligature OE
 | 
			
		||||
œ
 | 
			
		||||
œ
 | 
			
		||||
œ
 | 
			
		||||
small ligature oe
 | 
			
		||||
Š
 | 
			
		||||
Š
 | 
			
		||||
Š
 | 
			
		||||
capital S with caron
 | 
			
		||||
š
 | 
			
		||||
š
 | 
			
		||||
š
 | 
			
		||||
small S with caron
 | 
			
		||||
Ÿ
 | 
			
		||||
Ÿ
 | 
			
		||||
Ÿ
 | 
			
		||||
capital Y with diaeres
 | 
			
		||||
ƒ
 | 
			
		||||
ƒ
 | 
			
		||||
ƒ
 | 
			
		||||
f with hook
 | 
			
		||||
ˆ
 | 
			
		||||
ˆ
 | 
			
		||||
ˆ
 | 
			
		||||
modifier letter circumflex accent
 | 
			
		||||
˜
 | 
			
		||||
˜
 | 
			
		||||
˜
 | 
			
		||||
small tilde
 | 
			
		||||
 | 
			
		||||
‌
 | 
			
		||||
‌
 | 
			
		||||
zero width non-joiner
 | 
			
		||||
 | 
			
		||||
‍
 | 
			
		||||
‍
 | 
			
		||||
zero width joiner
 | 
			
		||||
 | 
			
		||||
‎
 | 
			
		||||
‎
 | 
			
		||||
left-to-right mark
 | 
			
		||||
 | 
			
		||||
‏
 | 
			
		||||
‏
 | 
			
		||||
right-to-left mark
 | 
			
		||||
 | 
			
		||||
–
 | 
			
		||||
–
 | 
			
		||||
–
 | 
			
		||||
en dash
 | 
			
		||||
 | 
			
		||||
—
 | 
			
		||||
—
 | 
			
		||||
—
 | 
			
		||||
em dash
 | 
			
		||||
 | 
			
		||||
‘
 | 
			
		||||
‘
 | 
			
		||||
‘
 | 
			
		||||
left single quotation mark
 | 
			
		||||
 | 
			
		||||
’
 | 
			
		||||
’
 | 
			
		||||
’
 | 
			
		||||
right single quotation mark
 | 
			
		||||
 | 
			
		||||
‚
 | 
			
		||||
‚
 | 
			
		||||
‚
 | 
			
		||||
single low-9 quotation mark
 | 
			
		||||
 | 
			
		||||
“
 | 
			
		||||
“
 | 
			
		||||
“
 | 
			
		||||
left double quotation mark
 | 
			
		||||
 | 
			
		||||
”
 | 
			
		||||
”
 | 
			
		||||
”
 | 
			
		||||
right double quotation mark
 | 
			
		||||
 | 
			
		||||
„
 | 
			
		||||
„
 | 
			
		||||
„
 | 
			
		||||
double low-9 quotation mark
 | 
			
		||||
 | 
			
		||||
†
 | 
			
		||||
†
 | 
			
		||||
†
 | 
			
		||||
dagger
 | 
			
		||||
 | 
			
		||||
‡
 | 
			
		||||
‡
 | 
			
		||||
‡
 | 
			
		||||
double dagger
 | 
			
		||||
 | 
			
		||||
•
 | 
			
		||||
•
 | 
			
		||||
•
 | 
			
		||||
bullet
 | 
			
		||||
 | 
			
		||||
…
 | 
			
		||||
…
 | 
			
		||||
…
 | 
			
		||||
horizontal ellipsis
 | 
			
		||||
 | 
			
		||||
‰
 | 
			
		||||
‰
 | 
			
		||||
‰
 | 
			
		||||
per mille 
 | 
			
		||||
 | 
			
		||||
′
 | 
			
		||||
′
 | 
			
		||||
′
 | 
			
		||||
minutes
 | 
			
		||||
 | 
			
		||||
″
 | 
			
		||||
″
 | 
			
		||||
″
 | 
			
		||||
seconds
 | 
			
		||||
 | 
			
		||||
‹
 | 
			
		||||
‹
 | 
			
		||||
‹
 | 
			
		||||
single left angle quotation
 | 
			
		||||
 | 
			
		||||
›
 | 
			
		||||
›
 | 
			
		||||
›
 | 
			
		||||
single right angle quotation
 | 
			
		||||
 | 
			
		||||
‾
 | 
			
		||||
‾
 | 
			
		||||
‾
 | 
			
		||||
overline
 | 
			
		||||
 | 
			
		||||
€
 | 
			
		||||
€
 | 
			
		||||
€
 | 
			
		||||
euro
 | 
			
		||||
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
™
 | 
			
		||||
trademark
 | 
			
		||||
 | 
			
		||||
←
 | 
			
		||||
←
 | 
			
		||||
←
 | 
			
		||||
left arrow
 | 
			
		||||
 | 
			
		||||
↑
 | 
			
		||||
↑
 | 
			
		||||
↑
 | 
			
		||||
up arrow
 | 
			
		||||
 | 
			
		||||
→
 | 
			
		||||
→
 | 
			
		||||
→
 | 
			
		||||
right arrow
 | 
			
		||||
 | 
			
		||||
↓
 | 
			
		||||
↓
 | 
			
		||||
↓
 | 
			
		||||
down arrow
 | 
			
		||||
 | 
			
		||||
↔
 | 
			
		||||
↔
 | 
			
		||||
↔
 | 
			
		||||
left right arrow
 | 
			
		||||
 | 
			
		||||
◊
 | 
			
		||||
◊
 | 
			
		||||
◊
 | 
			
		||||
lozenge
 | 
			
		||||
 | 
			
		||||
♠
 | 
			
		||||
♠
 | 
			
		||||
♠
 | 
			
		||||
spade
 | 
			
		||||
 | 
			
		||||
♣
 | 
			
		||||
♣
 | 
			
		||||
♣
 | 
			
		||||
club
 | 
			
		||||
 | 
			
		||||
♥
 | 
			
		||||
♥
 | 
			
		||||
♥
 | 
			
		||||
heart
 | 
			
		||||
 | 
			
		||||
♦
 | 
			
		||||
♦
 | 
			
		||||
♦
 | 
			
		||||
diamond
 | 
			
		||||
 | 
			
		||||
⇔
 | 
			
		||||
⇔
 | 
			
		||||
⇔
 | 
			
		||||
 | 
			
		||||
⇒
 | 
			
		||||
⇒
 | 
			
		||||
⇒
 | 
			
		||||
 | 
			
		||||
⇐
 | 
			
		||||
⇐
 | 
			
		||||
⇐
 | 
			
		||||
 | 
			
		||||
←
 | 
			
		||||
&8592;
 | 
			
		||||
←
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										231
									
								
								lib/plugins/ckgedit/action/entities/utils/fcked-ents.pl
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,231 @@
 | 
			
		||||
use strict;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
while(<DATA>) {
 | 
			
		||||
 chomp;
 | 
			
		||||
 my($icon, $num, $character) = split;
 | 
			
		||||
 next if !$icon || !$num || ! $character;
 | 
			
		||||
# $icon = trim($icon);
 | 
			
		||||
# $num = trim($num);
 | 
			
		||||
# $character=trim($character);
 | 
			
		||||
 print "$icon\n$num\n$character\n\n";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sub trim {
 | 
			
		||||
 my $str = shift;
 | 
			
		||||
 $str =~ s/^\s+//;
 | 
			
		||||
 $str =~ s/\s+$//;
 | 
			
		||||
 return $str;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
__DATA__
 | 
			
		||||
  nbsp 160   
 | 
			
		||||
¡ iexcl 161   
 | 
			
		||||
¢ cent 162   
 | 
			
		||||
£ pound 163   
 | 
			
		||||
¤ curren 164   
 | 
			
		||||
¥ yen 165   
 | 
			
		||||
¦ brvbar 166   
 | 
			
		||||
§ sect 167   
 | 
			
		||||
¨ uml 168   
 | 
			
		||||
© copy 169   
 | 
			
		||||
ª ordf 170   
 | 
			
		||||
« laquo 171   
 | 
			
		||||
¬ not 172   
 | 
			
		||||
 shy 173   
 | 
			
		||||
® reg 174   
 | 
			
		||||
¯ macr 175   
 | 
			
		||||
° deg 176   
 | 
			
		||||
± plusmn 177   
 | 
			
		||||
² sup2 178   
 | 
			
		||||
³ sup3 179   
 | 
			
		||||
´ acute 180   
 | 
			
		||||
µ micro 181   
 | 
			
		||||
¶ para 182   
 | 
			
		||||
· middot 183   
 | 
			
		||||
¸ cedil 184   
 | 
			
		||||
¹ sup1 185   
 | 
			
		||||
º ordm 186   
 | 
			
		||||
» raquo 187   
 | 
			
		||||
¼ frac14 188   
 | 
			
		||||
½ frac12 189   
 | 
			
		||||
¾ frac34 190   
 | 
			
		||||
¿ iquest 191   
 | 
			
		||||
à agrave 192   
 | 
			
		||||
á aacute 193   
 | 
			
		||||
â acirc 194   
 | 
			
		||||
ã atilde 195   
 | 
			
		||||
Ä Auml 196   
 | 
			
		||||
å aring 197   
 | 
			
		||||
æ aelig 198   
 | 
			
		||||
ç ccedil 199   
 | 
			
		||||
è egrave 200   
 | 
			
		||||
é eacute 201   
 | 
			
		||||
ê ecirc 202   
 | 
			
		||||
ë euml 203   
 | 
			
		||||
ì igrave 204   
 | 
			
		||||
í iacute 205   
 | 
			
		||||
î icirc 206   
 | 
			
		||||
ï iuml 207   
 | 
			
		||||
ð eth 208   
 | 
			
		||||
ñ ntilde 209   
 | 
			
		||||
ò ograve 210   
 | 
			
		||||
ó oacute 211   
 | 
			
		||||
ô ocirc 212   
 | 
			
		||||
õ otilde 213   
 | 
			
		||||
Ö Ouml 214   
 | 
			
		||||
× times 215   
 | 
			
		||||
ø oslash 216   
 | 
			
		||||
ù ugrave 217   
 | 
			
		||||
ú uacute 218   
 | 
			
		||||
û ucirc 219   
 | 
			
		||||
Ü Uuml 220   
 | 
			
		||||
ý yacute 221   
 | 
			
		||||
þ thorn 222   
 | 
			
		||||
ß szlig 223   
 | 
			
		||||
à agrave 224   
 | 
			
		||||
á aacute 225   
 | 
			
		||||
â acirc 226   
 | 
			
		||||
ã atilde 227   
 | 
			
		||||
ä auml 228   
 | 
			
		||||
å aring 229   
 | 
			
		||||
æ aelig 230   
 | 
			
		||||
ç ccedil 231   
 | 
			
		||||
è egrave 232   
 | 
			
		||||
é eacute 233   
 | 
			
		||||
ê ecirc 234   
 | 
			
		||||
ë euml 235   
 | 
			
		||||
ì igrave 236   
 | 
			
		||||
í iacute 237   
 | 
			
		||||
î icirc 238   
 | 
			
		||||
ï iuml 239   
 | 
			
		||||
ð eth 240   
 | 
			
		||||
ñ ntilde 241   
 | 
			
		||||
ò ograve 242   
 | 
			
		||||
ó oacute 243   
 | 
			
		||||
ô ocirc 244   
 | 
			
		||||
õ otilde 245   
 | 
			
		||||
ö ouml 246   
 | 
			
		||||
÷ divide 247   
 | 
			
		||||
ø oslash 248   
 | 
			
		||||
ù ugrave 249   
 | 
			
		||||
ú uacute 250   
 | 
			
		||||
û ucirc 251   
 | 
			
		||||
ü uuml 252   
 | 
			
		||||
ý yacute 253   
 | 
			
		||||
þ thorn 254   
 | 
			
		||||
ÿ yuml 255   
 | 
			
		||||
" quot 34   
 | 
			
		||||
& amp 38   
 | 
			
		||||
< lt 60   
 | 
			
		||||
> gt 62   
 | 
			
		||||
œ oelig 338   
 | 
			
		||||
œ oelig 339   
 | 
			
		||||
š scaron 352   
 | 
			
		||||
š scaron 353   
 | 
			
		||||
ÿ yuml 376   
 | 
			
		||||
ˆ circ 710   
 | 
			
		||||
˜ tilde 732   
 | 
			
		||||
  ensp 8194   
 | 
			
		||||
  emsp 8195   
 | 
			
		||||
  thinsp 8201    
 | 
			
		||||
– ndash 8211   
 | 
			
		||||
— mdash 8212   
 | 
			
		||||
‘ lsquo 8216   
 | 
			
		||||
’ rsquo 8217   
 | 
			
		||||
‚ sbquo 8218   
 | 
			
		||||
“ ldquo 8220   
 | 
			
		||||
” rdquo 8221   
 | 
			
		||||
„ bdquo 8222   
 | 
			
		||||
† dagger 8224   
 | 
			
		||||
† dagger 8225   
 | 
			
		||||
‰ permil 8240   
 | 
			
		||||
‹ lsaquo 8249   
 | 
			
		||||
› rsaquo 8250   
 | 
			
		||||
€ euro 8364   
 | 
			
		||||
ƒ fnof 402   
 | 
			
		||||
α alpha 913   
 | 
			
		||||
β beta 914   
 | 
			
		||||
γ gamma 915   
 | 
			
		||||
δ delta 916   
 | 
			
		||||
ε epsilon 917   
 | 
			
		||||
ζ zeta 918   
 | 
			
		||||
η eta 919   
 | 
			
		||||
θ theta 920   
 | 
			
		||||
ι iota 921   
 | 
			
		||||
κ kappa 922   
 | 
			
		||||
λ lambda 923   
 | 
			
		||||
μ mu 924   
 | 
			
		||||
ν nu 925   
 | 
			
		||||
ξ xi 926   
 | 
			
		||||
ο omicron 927   
 | 
			
		||||
π pi 928   
 | 
			
		||||
ρ rho 929   
 | 
			
		||||
σ sigma 931   
 | 
			
		||||
τ tau 932   
 | 
			
		||||
υ upsilon 933   
 | 
			
		||||
φ phi 934   
 | 
			
		||||
χ chi 935   
 | 
			
		||||
ψ psi 936   
 | 
			
		||||
ω omega 937   
 | 
			
		||||
α alpha 945   
 | 
			
		||||
β beta 946   
 | 
			
		||||
γ gamma 947   
 | 
			
		||||
δ delta 948   
 | 
			
		||||
ε epsilon 949   
 | 
			
		||||
ζ zeta 950   
 | 
			
		||||
η eta 951   
 | 
			
		||||
θ theta 952   
 | 
			
		||||
ι iota 953   
 | 
			
		||||
κ kappa 954   
 | 
			
		||||
λ lambda 955   
 | 
			
		||||
μ mu 956   
 | 
			
		||||
ν nu 957   
 | 
			
		||||
ξ xi 958   
 | 
			
		||||
ο omicron 959   
 | 
			
		||||
π pi 960   
 | 
			
		||||
ρ rho 961   
 | 
			
		||||
ς sigmaf 962   
 | 
			
		||||
σ sigma 963   
 | 
			
		||||
τ tau 964   
 | 
			
		||||
υ upsilon 965   
 | 
			
		||||
φ phi 966   
 | 
			
		||||
χ chi 967   
 | 
			
		||||
ψ psi 968   
 | 
			
		||||
ω omega 969    
 | 
			
		||||
• bull 8226   
 | 
			
		||||
… hellip 8230   
 | 
			
		||||
′ prime 8242   
 | 
			
		||||
′ prime 8243   
 | 
			
		||||
‾ oline 8254   
 | 
			
		||||
⁄ frasl 8260 
 | 
			
		||||
← larr 8592   
 | 
			
		||||
↑ uarr 8593   
 | 
			
		||||
→ rarr 8594   
 | 
			
		||||
↓ darr 8595   
 | 
			
		||||
↔ harr 8596   
 | 
			
		||||
← larr 8656   
 | 
			
		||||
↑ uarr 8657   
 | 
			
		||||
→ rarr 8658   
 | 
			
		||||
↓ darr 8659   
 | 
			
		||||
↔ harr 8660      
 | 
			
		||||
∂ part 8706      
 | 
			
		||||
∏ prod 8719   
 | 
			
		||||
∑ sum 8721   
 | 
			
		||||
− minus 8722   
 | 
			
		||||
√ radic 8730   
 | 
			
		||||
∞ infin 8734     
 | 
			
		||||
∩ cap 8745      
 | 
			
		||||
∫ int 8747      
 | 
			
		||||
≈ asymp 8776   
 | 
			
		||||
≠ ne 8800   
 | 
			
		||||
≡ equiv 8801   
 | 
			
		||||
≤ le 8804   
 | 
			
		||||
≥ ge 8805      
 | 
			
		||||
◊ loz 9674   
 | 
			
		||||
♠ spades 9824   
 | 
			
		||||
♣ clubs 9827   
 | 
			
		||||
♥ hearts 9829   
 | 
			
		||||
♦ diams 9830   
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										209
									
								
								lib/plugins/ckgedit/action/entities/utils/fcked-ents.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,209 @@
 | 
			
		||||
  nbsp 160   
 | 
			
		||||
¡ iexcl 161   
 | 
			
		||||
¢ cent 162   
 | 
			
		||||
£ pound 163   
 | 
			
		||||
¤ curren 164   
 | 
			
		||||
¥ yen 165   
 | 
			
		||||
¦ brvbar 166   
 | 
			
		||||
§ sect 167   
 | 
			
		||||
¨ uml 168   
 | 
			
		||||
© copy 169   
 | 
			
		||||
ª ordf 170   
 | 
			
		||||
« laquo 171   
 | 
			
		||||
¬ not 172   
 | 
			
		||||
 shy 173   
 | 
			
		||||
® reg 174   
 | 
			
		||||
¯ macr 175   
 | 
			
		||||
° deg 176   
 | 
			
		||||
± plusmn 177   
 | 
			
		||||
² sup2 178   
 | 
			
		||||
³ sup3 179   
 | 
			
		||||
´ acute 180   
 | 
			
		||||
µ micro 181   
 | 
			
		||||
¶ para 182   
 | 
			
		||||
· middot 183   
 | 
			
		||||
¸ cedil 184   
 | 
			
		||||
¹ sup1 185   
 | 
			
		||||
º ordm 186   
 | 
			
		||||
» raquo 187   
 | 
			
		||||
¼ frac14 188   
 | 
			
		||||
½ frac12 189   
 | 
			
		||||
¾ frac34 190   
 | 
			
		||||
¿ iquest 191   
 | 
			
		||||
à agrave 192   
 | 
			
		||||
á aacute 193   
 | 
			
		||||
â acirc 194   
 | 
			
		||||
ã atilde 195   
 | 
			
		||||
Ä Auml 196   
 | 
			
		||||
å aring 197   
 | 
			
		||||
æ aelig 198   
 | 
			
		||||
ç ccedil 199   
 | 
			
		||||
è egrave 200   
 | 
			
		||||
é eacute 201   
 | 
			
		||||
ê ecirc 202   
 | 
			
		||||
ë euml 203   
 | 
			
		||||
ì igrave 204   
 | 
			
		||||
í iacute 205   
 | 
			
		||||
î icirc 206   
 | 
			
		||||
ï iuml 207   
 | 
			
		||||
ð eth 208   
 | 
			
		||||
ñ ntilde 209   
 | 
			
		||||
ò ograve 210   
 | 
			
		||||
ó oacute 211   
 | 
			
		||||
ô ocirc 212   
 | 
			
		||||
õ otilde 213   
 | 
			
		||||
Ö Ouml 214   
 | 
			
		||||
× times 215   
 | 
			
		||||
ø oslash 216   
 | 
			
		||||
ù ugrave 217   
 | 
			
		||||
ú uacute 218   
 | 
			
		||||
û ucirc 219   
 | 
			
		||||
Ü Uuml 220   
 | 
			
		||||
ý yacute 221   
 | 
			
		||||
þ thorn 222   
 | 
			
		||||
ß szlig 223   
 | 
			
		||||
à agrave 224   
 | 
			
		||||
á aacute 225   
 | 
			
		||||
â acirc 226   
 | 
			
		||||
ã atilde 227   
 | 
			
		||||
ä auml 228   
 | 
			
		||||
å aring 229   
 | 
			
		||||
æ aelig 230   
 | 
			
		||||
ç ccedil 231   
 | 
			
		||||
è egrave 232   
 | 
			
		||||
é eacute 233   
 | 
			
		||||
ê ecirc 234   
 | 
			
		||||
ë euml 235   
 | 
			
		||||
ì igrave 236   
 | 
			
		||||
í iacute 237   
 | 
			
		||||
î icirc 238   
 | 
			
		||||
ï iuml 239   
 | 
			
		||||
ð eth 240   
 | 
			
		||||
ñ ntilde 241   
 | 
			
		||||
ò ograve 242   
 | 
			
		||||
ó oacute 243   
 | 
			
		||||
ô ocirc 244   
 | 
			
		||||
õ otilde 245   
 | 
			
		||||
ö ouml 246   
 | 
			
		||||
÷ divide 247   
 | 
			
		||||
ø oslash 248   
 | 
			
		||||
ù ugrave 249   
 | 
			
		||||
ú uacute 250   
 | 
			
		||||
û ucirc 251   
 | 
			
		||||
ü uuml 252   
 | 
			
		||||
ý yacute 253   
 | 
			
		||||
þ thorn 254   
 | 
			
		||||
ÿ yuml 255   
 | 
			
		||||
" quot 34   
 | 
			
		||||
& amp 38   
 | 
			
		||||
< lt 60   
 | 
			
		||||
> gt 62   
 | 
			
		||||
œ oelig 338   
 | 
			
		||||
œ oelig 339   
 | 
			
		||||
š scaron 352   
 | 
			
		||||
š scaron 353   
 | 
			
		||||
ÿ yuml 376   
 | 
			
		||||
ˆ circ 710   
 | 
			
		||||
˜ tilde 732   
 | 
			
		||||
  ensp 8194   
 | 
			
		||||
  emsp 8195   
 | 
			
		||||
  thinsp 8201    
 | 
			
		||||
– ndash 8211   
 | 
			
		||||
— mdash 8212   
 | 
			
		||||
‘ lsquo 8216   
 | 
			
		||||
’ rsquo 8217   
 | 
			
		||||
‚ sbquo 8218   
 | 
			
		||||
“ ldquo 8220   
 | 
			
		||||
” rdquo 8221   
 | 
			
		||||
„ bdquo 8222   
 | 
			
		||||
† dagger 8224   
 | 
			
		||||
† dagger 8225   
 | 
			
		||||
‰ permil 8240   
 | 
			
		||||
‹ lsaquo 8249   
 | 
			
		||||
› rsaquo 8250   
 | 
			
		||||
€ euro 8364   
 | 
			
		||||
ƒ fnof 402   
 | 
			
		||||
α alpha 913   
 | 
			
		||||
β beta 914   
 | 
			
		||||
γ gamma 915   
 | 
			
		||||
δ delta 916   
 | 
			
		||||
ε epsilon 917   
 | 
			
		||||
ζ zeta 918   
 | 
			
		||||
η eta 919   
 | 
			
		||||
θ theta 920   
 | 
			
		||||
ι iota 921   
 | 
			
		||||
κ kappa 922   
 | 
			
		||||
λ lambda 923   
 | 
			
		||||
μ mu 924   
 | 
			
		||||
ν nu 925   
 | 
			
		||||
ξ xi 926   
 | 
			
		||||
ο omicron 927   
 | 
			
		||||
π pi 928   
 | 
			
		||||
ρ rho 929   
 | 
			
		||||
σ sigma 931   
 | 
			
		||||
τ tau 932   
 | 
			
		||||
υ upsilon 933   
 | 
			
		||||
φ phi 934   
 | 
			
		||||
χ chi 935   
 | 
			
		||||
ψ psi 936   
 | 
			
		||||
ω omega 937   
 | 
			
		||||
α alpha 945   
 | 
			
		||||
β beta 946   
 | 
			
		||||
γ gamma 947   
 | 
			
		||||
δ delta 948   
 | 
			
		||||
ε epsilon 949   
 | 
			
		||||
ζ zeta 950   
 | 
			
		||||
η eta 951   
 | 
			
		||||
θ theta 952   
 | 
			
		||||
ι iota 953   
 | 
			
		||||
κ kappa 954   
 | 
			
		||||
λ lambda 955   
 | 
			
		||||
μ mu 956   
 | 
			
		||||
ν nu 957   
 | 
			
		||||
ξ xi 958   
 | 
			
		||||
ο omicron 959   
 | 
			
		||||
π pi 960   
 | 
			
		||||
ρ rho 961   
 | 
			
		||||
ς sigmaf 962   
 | 
			
		||||
σ sigma 963   
 | 
			
		||||
τ tau 964   
 | 
			
		||||
υ upsilon 965   
 | 
			
		||||
φ phi 966   
 | 
			
		||||
χ chi 967   
 | 
			
		||||
ψ psi 968   
 | 
			
		||||
ω omega 969    
 | 
			
		||||
• bull 8226   
 | 
			
		||||
… hellip 8230   
 | 
			
		||||
′ prime 8242   
 | 
			
		||||
′ prime 8243   
 | 
			
		||||
‾ oline 8254   
 | 
			
		||||
⁄ frasl 8260 
 | 
			
		||||
← larr 8592   
 | 
			
		||||
↑ uarr 8593   
 | 
			
		||||
→ rarr 8594   
 | 
			
		||||
↓ darr 8595   
 | 
			
		||||
↔ harr 8596   
 | 
			
		||||
← larr 8656   
 | 
			
		||||
↑ uarr 8657   
 | 
			
		||||
→ rarr 8658   
 | 
			
		||||
↓ darr 8659   
 | 
			
		||||
↔ harr 8660      
 | 
			
		||||
∂ part 8706      
 | 
			
		||||
∏ prod 8719   
 | 
			
		||||
∑ sum 8721   
 | 
			
		||||
− minus 8722   
 | 
			
		||||
√ radic 8730   
 | 
			
		||||
∞ infin 8734     
 | 
			
		||||
∩ cap 8745      
 | 
			
		||||
∫ int 8747      
 | 
			
		||||
≈ asymp 8776   
 | 
			
		||||
≠ ne 8800   
 | 
			
		||||
≡ equiv 8801   
 | 
			
		||||
≤ le 8804   
 | 
			
		||||
≥ ge 8805      
 | 
			
		||||
◊ loz 9674   
 | 
			
		||||
♠ spades 9824   
 | 
			
		||||
♣ clubs 9827   
 | 
			
		||||
♥ hearts 9829   
 | 
			
		||||
♦ diams 9830   
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/action/entities/utils/fckeditor_ents.doc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										45
									
								
								lib/plugins/ckgedit/action/iwiki.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,45 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 *
 | 
			
		||||
 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
 | 
			
		||||
 * @author  
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// must be run within Dokuwiki
 | 
			
		||||
if(!defined('DOKU_INC')) die();
 | 
			
		||||
include_once (DOKU_INC . 'inc/confutils.php');
 | 
			
		||||
class action_plugin_ckgedit_iwiki extends DokuWiki_Action_Plugin {
 | 
			
		||||
  private $interlinks = null;
 | 
			
		||||
    /**
 | 
			
		||||
     * Registers a callback function for a given event
 | 
			
		||||
     *
 | 
			
		||||
     * @param Doku_Event_Handler $controller DokuWiki's event controller object
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function register(Doku_Event_Handler $controller) {
 | 
			
		||||
 | 
			
		||||
       $controller->register_hook('AJAX_CALL_UNKNOWN', 'BEFORE', $this, 'handle_ajax_call_unknown');
 | 
			
		||||
   
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param Doku_Event $event  event object by reference
 | 
			
		||||
     * @param mixed      $param  [the parameters passed as fifth argument to register_hook() when this
 | 
			
		||||
     *                           handler was registered]
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
    public function handle_ajax_call_unknown(Doku_Event &$event, $param) {
 | 
			
		||||
     
 | 
			
		||||
      if ($event->data !== 'iwiki_list') {
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
   
 | 
			
		||||
      $event->stopPropagation();
 | 
			
		||||
      $event->preventDefault();
 | 
			
		||||
      $a = getInterwiki();
 | 
			
		||||
      ksort($a);
 | 
			
		||||
      echo json_encode($a);       
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										50
									
								
								lib/plugins/ckgedit/action/mediamanager.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,50 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
if(!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__).'/../../../').'/');
 | 
			
		||||
if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
 | 
			
		||||
require_once(DOKU_PLUGIN.'action.php');
 | 
			
		||||
require_once(DOKU_PLUGIN.'ckgedit/scripts/setsamesite.php');
 | 
			
		||||
class action_plugin_ckgedit_mediamanager extends DokuWiki_Action_Plugin {
 | 
			
		||||
    function __construct()
 | 
			
		||||
    {
 | 
			
		||||
        $this->setupLocale();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    function register(Doku_Event_Handler $controller)
 | 
			
		||||
    {
 | 
			
		||||
        $controller->register_hook('MEDIAMANAGER_STARTED', 'AFTER', $this, 'mediaman_started');
 | 
			
		||||
        $controller->register_hook('MEDIA_UPLOAD_FINISH', 'BEFORE', $this, 'upload_finish');              
 | 
			
		||||
        $controller->register_hook('TPL_METAHEADER_OUTPUT', 'BEFORE', $this, 'handle_metafile');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    function handle_metafile(Doku_Event $event) {
 | 
			
		||||
          $event->data['script'][] = 
 | 
			
		||||
            array( 
 | 
			
		||||
                'type'=>'text/javascript', 
 | 
			
		||||
                'charset'=>'utf-8', 
 | 
			
		||||
                '_data'=>'',
 | 
			
		||||
                 'src'=>DOKU_BASE.'lib/plugins/ckgedit/scripts/mediamgr.js'
 | 
			
		||||
            ) + ([ 'defer' => 'defer']);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    function upload_finish(Doku_Event $event) {
 | 
			
		||||
        if(!preg_match("#^image/#",$event->data[3]) && $_COOKIE['ckgFbType'] == 'image') {
 | 
			
		||||
            if(!empty($event->data[3]) && strlen($event->data[3]) >30) {
 | 
			
		||||
                $fname = substr($event->data[3],0,29) . '. . .';                 
 | 
			
		||||
            }
 | 
			
		||||
            else $fname = $event->data[3];
 | 
			
		||||
            msg($this->getLang('mediamgr_imgonly') .  $fname);    
 | 
			
		||||
             setcookieSameSite('ckgFbType', 'image',time()-10);
 | 
			
		||||
            $event->preventDefault();
 | 
			
		||||
        }    
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    function mediaman_started(Doku_Event $event) {
 | 
			
		||||
        if ($_GET["onselect"] == "ckg_edit_mediaman_insert") {
 | 
			
		||||
            setcookieSameSite('ckgFbType', 'image');
 | 
			
		||||
        } else if ($_GET["onselect"] == "ckg_edit_mediaman_insertlink") {
 | 
			
		||||
            setcookieSameSite('ckgFbType', 'link');
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1023
									
								
								lib/plugins/ckgedit/action/meta.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										464
									
								
								lib/plugins/ckgedit/action/save.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,464 @@
 | 
			
		||||
<?php
 | 
			
		||||
if(!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__).'/../../../').'/');
 | 
			
		||||
if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
 | 
			
		||||
if(!defined('DOKU_MEDIA')) define('DOKU_MEDIA',DOKU_INC.'data/media/');
 | 
			
		||||
define ('BROKEN_IMAGE', DOKU_BASE . 'lib/plugins/ckgedit/fckeditor/userfiles/blink.jpg?nolink&33x34');
 | 
			
		||||
require_once(DOKU_PLUGIN.'action.php');
 | 
			
		||||
if(!defined('FCK_ACTION_SUBDIR')) define('FCK_ACTION_SUBDIR', realpath(dirname(__FILE__)) . '/');
 | 
			
		||||
/**
 | 
			
		||||
 * @license    GPL 2 (http://www.gnu.org/licenses/gpl.html)
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
class action_plugin_ckgedit_save extends DokuWiki_Action_Plugin {
 | 
			
		||||
     var $helper = false;
 | 
			
		||||
    function register(Doku_Event_Handler $controller) {
 | 
			
		||||
  
 | 
			
		||||
        $controller->register_hook('DOKUWIKI_STARTED', 'BEFORE', $this, 'ckgedit_save_preprocess');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    function ckgedit_save_preprocess(Doku_Event $event){
 | 
			
		||||
        global $ACT,$INPUT;
 | 
			
		||||
        $this->helper = $this->loadhelper('ckgedit');
 | 
			
		||||
        if (!isset($_REQUEST['ckgedit']) || ! is_array($ACT) || !(isset($ACT['save']) || isset($ACT['preview']))) return;
 | 
			
		||||
         if (isset($_REQUEST["fontdel"]) ) {
 | 
			
		||||
             msg($this->getLang("fontdel"),1);           
 | 
			
		||||
         }
 | 
			
		||||
         if (isset($_REQUEST["formatdel"]) ) {
 | 
			
		||||
             msg($this->getLang("formatdel"),1);           
 | 
			
		||||
         }         
 | 
			
		||||
 | 
			
		||||
         $img_size = $INPUT->int('broken_image');
 | 
			
		||||
         if($img_size) msg($this->getLang('broken_image') . $img_size/1000000 . 'M' ); 
 | 
			
		||||
      
 | 
			
		||||
       
 | 
			
		||||
        global $TEXT, $conf;
 | 
			
		||||
             
 | 
			
		||||
        if (!$TEXT) return;
 | 
			
		||||
        $preserve_enc = $this->getConf('preserve_enc');        
 | 
			
		||||
        $deaccent = $conf['deaccent'] == 0 ? false : true;
 | 
			
		||||
        $TEXT = $_REQUEST['fck_wikitext'];
 | 
			
		||||
        
 | 
			
		||||
        if(!preg_match('/^\s+(\-|\*)/',$TEXT)) {    
 | 
			
		||||
              $TEXT = trim($TEXT);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  $TEXT = preg_replace_callback(
 | 
			
		||||
    '|\{\{data:(.*?);base64|ms',
 | 
			
		||||
      create_function(
 | 
			
		||||
        '$matches',
 | 
			
		||||
         'if(!preg_match("/image/",$matches[1])) {
 | 
			
		||||
          return "{{data:image/jpeg;base64";
 | 
			
		||||
         }
 | 
			
		||||
          return $matches[0];'
 | 
			
		||||
     ),$TEXT);
 | 
			
		||||
      
 | 
			
		||||
    if(strpos($TEXT,'data:image') !== false) {
 | 
			
		||||
        $TEXT = preg_replace_callback(
 | 
			
		||||
             '|\{\{(\s*)data:image\/(\w+;base64,\s*)(.*?)\?nolink&(\s*)\}\}|ms',
 | 
			
		||||
             create_function(
 | 
			
		||||
                '$matches',
 | 
			
		||||
                'list($ext,$base) = explode(";",$matches[2]);
 | 
			
		||||
                if($ext == "jpeg" || $ext == "tiff") $ext = "jpg";                    
 | 
			
		||||
                 if(function_exists("imagecreatefromstring") && !imagecreatefromstring (base64_decode($matches[3]))) {
 | 
			
		||||
                     msg("Clipboard paste: invalid $ext image format");
 | 
			
		||||
                     return "{{" . BROKEN_IMAGE .  "}}";
 | 
			
		||||
                 }                 
 | 
			
		||||
                  global $INFO,$conf;                 
 | 
			
		||||
                  $ns = getNS($INFO["id"]);                                    
 | 
			
		||||
                  $ns = trim($ns);
 | 
			
		||||
                  if(!empty($ns)) {                     
 | 
			
		||||
                      $ns = ":$ns:";
 | 
			
		||||
                       $dir = str_replace(":","/",$ns);                     
 | 
			
		||||
                  }
 | 
			
		||||
                  else {  // root namespace
 | 
			
		||||
                      $dir = "/";
 | 
			
		||||
                      $ns = ":";
 | 
			
		||||
                  }
 | 
			
		||||
                 $fn = md5($matches[3]) . ".$ext";
 | 
			
		||||
                 $path = $conf["mediadir"] . $dir .  $fn;   
 | 
			
		||||
                 @io_makeFileDir($path);
 | 
			
		||||
                 if(!file_exists($path)) {
 | 
			
		||||
                    @file_put_contents($path, base64_decode($matches[3]));
 | 
			
		||||
                      global $lang;
 | 
			
		||||
                     $id = $dir .  $fn;
 | 
			
		||||
                     $id = str_replace("/",":",$id);
 | 
			
		||||
                     addMediaLogEntry(time(), $id, DOKU_CHANGE_TYPE_CREATE, $lang["created"],"", null, strlen(base64_decode($matches[3])));
 | 
			
		||||
                 }
 | 
			
		||||
                 else {
 | 
			
		||||
                     msg("file for this image previousely saved",2);
 | 
			
		||||
                 }
 | 
			
		||||
                 $left = "{{";
 | 
			
		||||
                 $right = "}}";
 | 
			
		||||
                 if($matches[1]) $left .= $matches[1];
 | 
			
		||||
                 if($matches[4]) $right = $matches[4] . $right;
 | 
			
		||||
                 
 | 
			
		||||
                $retv = "$left" . $ns. $fn . "$right";              
 | 
			
		||||
                 return $retv;'
 | 
			
		||||
             ),
 | 
			
		||||
             $TEXT
 | 
			
		||||
             );
 | 
			
		||||
        }     
 | 
			
		||||
      $TEXT = str_replace('%%', "FCKGPERCENTESC",  $TEXT);
 | 
			
		||||
     
 | 
			
		||||
        if($deaccent || $preserve_enc) {
 | 
			
		||||
              $TEXT = preg_replace_callback('/^(.*?)(\[\[.*?\]\])*(.*?)$/ms', 
 | 
			
		||||
                   create_function(
 | 
			
		||||
                         '$matches',         
 | 
			
		||||
                         '$matches[1] = preg_replace("/%([A-F0-9]{1,3})/i", "URLENC_PERCENT$1", $matches[1]);
 | 
			
		||||
                         $matches[2] = preg_replace("/%([A-F0-9]{1,3})/i", "URLENC_PERCENT$1", $matches[2]);
 | 
			
		||||
                          $matches[3] = preg_replace("/%([A-F0-9]{1,3})/i", "URLENC_PERCENT$1", $matches[3]);
 | 
			
		||||
                          return $matches[1].$matches[2].$matches[3];'            
 | 
			
		||||
                    ),
 | 
			
		||||
                    $TEXT
 | 
			
		||||
                 );
 | 
			
		||||
        }
 | 
			
		||||
  
 | 
			
		||||
        $TEXT = rawurldecode($TEXT);
 | 
			
		||||
        $TEXT = preg_replace('/NOWIKI_%_NOWIKI_%_/', '%%',$TEXT);
 | 
			
		||||
        $TEXT = preg_replace('/URLENC_PERCENT/', '%',$TEXT); 
 | 
			
		||||
        $TEXT = preg_replace('/NOWIKI_(.)_/', '$1',$TEXT);
 | 
			
		||||
        
 | 
			
		||||
          /* preserve newlines in code blocks */
 | 
			
		||||
          $TEXT = preg_replace_callback(
 | 
			
		||||
            '/(<code>|<file>)(.*?)(<\/code>|<\/file>)/ms',
 | 
			
		||||
            create_function(
 | 
			
		||||
                '$matches',         
 | 
			
		||||
                'return  str_replace("\n", "__code_NL__",$matches[0]);'
 | 
			
		||||
            ),
 | 
			
		||||
            $TEXT
 | 
			
		||||
          );
 | 
			
		||||
 | 
			
		||||
        $TEXT = preg_replace('/^\s*[\r\n]$/ms',"__n__", $TEXT);
 | 
			
		||||
        $TEXT = preg_replace('/oIWIKIo|cIWIKIc/ms',"", $TEXT);
 | 
			
		||||
        $TEXT = preg_replace('/\r/ms',"", $TEXT);
 | 
			
		||||
        $TEXT = preg_replace('/^\s+(?=\^|\|)/ms',"", $TEXT);    
 | 
			
		||||
        $TEXT = preg_replace('/__n__/',"\n", $TEXT);
 | 
			
		||||
        $TEXT = str_replace("__code_NL__","\n", $TEXT);
 | 
			
		||||
        $TEXT = str_replace("FCKGPERCENTESC", '%%',  $TEXT);
 | 
			
		||||
        if($this->getConf('complex_tables')) {
 | 
			
		||||
            $TEXT = str_replace('~~COMPLEX_TABLES~~','',$TEXT);
 | 
			
		||||
        }
 | 
			
		||||
        $TEXT .= "\n";
 | 
			
		||||
        // Removes relics of markup characters left over after acronym markup has been removed
 | 
			
		||||
        //$TEXT = preg_replace('/([\*\/_]{2})\s+\\1\s*([A-Z]+)\s*\\1+/ms',"$2",$TEXT);
 | 
			
		||||
      
 | 
			
		||||
         $pos = strpos($TEXT, 'MULTI_PLUGIN_OPEN');
 | 
			
		||||
         if($pos !== false) {
 | 
			
		||||
            $TEXT = preg_replace_callback(
 | 
			
		||||
             '|MULTI_PLUGIN_OPEN.*?MULTI_PLUGIN_CLOSE|ms',
 | 
			
		||||
             create_function(
 | 
			
		||||
                 '$matches',
 | 
			
		||||
                   'return  preg_replace("/\\\\\\\\/ms","\n",$matches[0]);'
 | 
			
		||||
             ),
 | 
			
		||||
             $TEXT
 | 
			
		||||
           );
 | 
			
		||||
 | 
			
		||||
            $TEXT = preg_replace_callback(
 | 
			
		||||
             '|MULTI_PLUGIN_OPEN.*?MULTI_PLUGIN_CLOSE|ms',
 | 
			
		||||
             create_function(
 | 
			
		||||
                 '$matches',
 | 
			
		||||
                   'return  preg_replace("/^\s+/ms","",$matches[0]);'
 | 
			
		||||
             ),
 | 
			
		||||
             $TEXT
 | 
			
		||||
           );
 | 
			
		||||
          $TEXT = str_replace("~~MULTI_PLUGIN_OPEN~~","~~MULTI_PLUGIN_OPEN~~\n",$TEXT);
 | 
			
		||||
         }
 | 
			
		||||
 | 
			
		||||
       if(strpos($TEXT,'L_PARgr') !== false) {        
 | 
			
		||||
            $TEXT = preg_replace_callback(
 | 
			
		||||
                 '|\(\((.*?)\)\)|ms',
 | 
			
		||||
                 create_function(
 | 
			
		||||
                     '$matches',
 | 
			
		||||
                       'return  "((" . trim($matches[1]) . "))"; '
 | 
			
		||||
                 ),
 | 
			
		||||
                 $TEXT
 | 
			
		||||
             );         
 | 
			
		||||
            $TEXT = str_replace('L_PARgr', '(',$TEXT);
 | 
			
		||||
            $TEXT = str_replace('R_PARgr', ')',$TEXT);
 | 
			
		||||
       } 
 | 
			
		||||
/*
 | 
			
		||||
Restructure numbered syntax highlighting  13/09/2019
 | 
			
		||||
*/
 | 
			
		||||
$TEXT = preg_replace_callback("#<code\s+(\w+)>.*?(\[enable_line_numbers.*?\])\s*\*\/#ms",
 | 
			
		||||
    function($matches) {
 | 
			
		||||
        return '<code ' . $matches[1] .' ' . $matches[2] .'>';
 | 
			
		||||
    }, $TEXT
 | 
			
		||||
) ;
 | 
			
		||||
       
 | 
			
		||||
        $this->replace_entities();
 | 
			
		||||
 /*Remove urls from linkonly images inserted after second and additional saves, resulting in multiple urls  corrupting  HTML output */
 | 
			
		||||
        $TEXT = preg_replace("/\{\{http:\/\/.*?fetch.php\?media=(.*?linkonly.*?)\}\}/",'{{' . "$1" .'}}',$TEXT);
 | 
			
		||||
        $TEXT = str_replace('< nowiki >', '%%<nowiki>%%',$TEXT);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
          $TEXT = preg_replace_callback(
 | 
			
		||||
           '#\[\[(.*?)\]\]#ms',
 | 
			
		||||
               function($matches){ 
 | 
			
		||||
                    if($this->helper->has_plugin('button') && strpos($matches[0], '[[{') === 0) {    
 | 
			
		||||
                        return $matches[0];
 | 
			
		||||
                    }
 | 
			
		||||
                    if(preg_match('/[\w\.]+\s*>/',$matches[0])) {
 | 
			
		||||
                        return $matches[0];
 | 
			
		||||
                    }
 | 
			
		||||
	 	             if(preg_match('/([\w\.\-]+@[\w\.\-]+\.\w{2,3})\?.*?\|\1/i',$matches[0])) {
 | 
			
		||||
                             return $matches[0];
 | 
			
		||||
                     }
 | 
			
		||||
                    global $ID, $conf;      
 | 
			
		||||
                    $qs = "";
 | 
			
		||||
                    if(preg_match("/\[\[http/",$matches[0])) return $matches[0];  //not an internal link
 | 
			
		||||
                      if(preg_match("#\[\[.*?\|\{\{.*?\}\}\]\]#", $matches[0],$matches_1)) {  // media file
 | 
			
		||||
                        if(!$this->getConf('rel_links')) { 
 | 
			
		||||
                            return $matches[0];
 | 
			
		||||
                        }
 | 
			
		||||
                      $link = explode('?',$matches[1]); 
 | 
			
		||||
                      list($link_id,$linktext) = explode('|', $link[0]); 
 | 
			
		||||
                      $current_id = $this->abs2rel($link_id,$ID); 
 | 
			
		||||
                      return preg_replace("#$link_id#",$current_id, $matches[0]);                      
 | 
			
		||||
                   }                
 | 
			
		||||
                
 | 
			
		||||
                   $link = explode('?',$matches[1]);
 | 
			
		||||
                   if($link[1]) {                       
 | 
			
		||||
                       $link_id = $link[0];
 | 
			
		||||
                       list($qs,$linktext) = explode('|', $link[1]);     
 | 
			
		||||
                   }
 | 
			
		||||
                   else list($link_id,$linktext) = explode('|', $link[0]);     
 | 
			
		||||
                   if($this->getConf('rel_links')) 
 | 
			
		||||
                      $current_id = $this->abs2rel($link_id,$ID); 
 | 
			
		||||
                    else  $current_id = $link_id;
 | 
			
		||||
                    if($qs) $current_id .= "?$qs";
 | 
			
		||||
                    
 | 
			
		||||
                   //as in _getLinkTitle in xhtml.php
 | 
			
		||||
                   if(useHeading('content')) {
 | 
			
		||||
                      $tmp_linktext = p_get_first_heading($link_id);
 | 
			
		||||
                      if(trim($linktext) == trim($tmp_linktext)) {
 | 
			
		||||
                          $linktext = "";
 | 
			
		||||
                      }
 | 
			
		||||
                   }  
 | 
			
		||||
                   $tmp_ar = explode(':',$link_id);
 | 
			
		||||
                   $tmp_id = array_pop($tmp_ar);
 | 
			
		||||
                   if(!useHeading('content') && (trim($linktext,'.: ' ) == trim($tmp_id,'.: '))) 
 | 
			
		||||
					   $linktext = "";
 | 
			
		||||
                              
 | 
			
		||||
                   $current_id = $current_id.'|'.$linktext;
 | 
			
		||||
                   return '[[' . $current_id .']]';
 | 
			
		||||
               },
 | 
			
		||||
           $TEXT
 | 
			
		||||
         );      
 | 
			
		||||
      
 | 
			
		||||
        if($this->getConf('rel_links')) {    
 | 
			
		||||
          $TEXT = preg_replace_callback(
 | 
			
		||||
           '#\{\{(\s*)(.*?)(\s*)\}\}#ms',
 | 
			
		||||
           function($matches) {              
 | 
			
		||||
                global $ID;
 | 
			
		||||
               $link = explode('?',$matches[2]);
 | 
			
		||||
               list($link_id,$linktext) = explode('|', $link[0]);          
 | 
			
		||||
               $rel = $this->abs2rel($link_id,$ID);
 | 
			
		||||
               if(!empty($link[1])) $rel .= '?' . $link[1];
 | 
			
		||||
               if(!empty($linktext)) $rel = $rel.'|'.$linktext;
 | 
			
		||||
               return '{{' .$matches[1] . $rel . $matches[3]  .'}}';
 | 
			
		||||
           },
 | 
			
		||||
           $TEXT
 | 
			
		||||
         );               
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
/* 11 Dec 2013 see comment below        
 | 
			
		||||
Remove discarded font syntax    
 | 
			
		||||
*/
 | 
			
		||||
        $TEXT = preg_replace_callback(
 | 
			
		||||
            '|_REMOVE_FONTS_START_(.*?)_REMOVE_FONTS_END_|ms',
 | 
			
		||||
            create_function(
 | 
			
		||||
                '$matches',
 | 
			
		||||
                '$matches[1] = preg_replace("/<font.*?>/ms","",$matches[1]);
 | 
			
		||||
                 return preg_replace("/<\/font>/ms","",$matches[1]);'
 | 
			
		||||
            ),
 | 
			
		||||
            $TEXT
 | 
			
		||||
        );
 | 
			
		||||
 | 
			
		||||
 /* 
 | 
			
		||||
6 April 2013
 | 
			
		||||
Removed newlines and spaces from beginnings and ends of text enclosed by font tags.  Too subtle for javascript. 
 | 
			
		||||
 */
 | 
			
		||||
        $TEXT = preg_replace_callback(
 | 
			
		||||
         '|(<font.*?>)(.*?)(?=</font>)|ms',
 | 
			
		||||
         create_function(
 | 
			
		||||
             '$matches',
 | 
			
		||||
               '$matches[2]=preg_replace("/^\s+/ms","",$matches[2]);
 | 
			
		||||
               $matches[2]=preg_replace("/\s+$/ms","",$matches[2]);              
 | 
			
		||||
               return $matches[1]. $matches[2];'
 | 
			
		||||
         ),
 | 
			
		||||
         $TEXT
 | 
			
		||||
       );
 | 
			
		||||
       /* insure space before and after ckgedit font oprning and closing tags*/
 | 
			
		||||
       $TEXT = preg_replace("/<font.*?>\s+<\/font>/","", $TEXT); 
 | 
			
		||||
       $TEXT = preg_replace("/<font/ms"," <font", $TEXT); // add space
 | 
			
		||||
       $TEXT = preg_replace("/<\/font>/ms","</font> ", $TEXT);
 | 
			
		||||
       $TEXT = preg_replace('/\s{2,}<font/ms',' <font',$TEXT); // remove duplicate spaces
 | 
			
		||||
       $TEXT = preg_replace('/font>{2,}/ms',' font> ',$TEXT);
 | 
			
		||||
       
 | 
			
		||||
       $TEXT = preg_replace('/__QUOTE__/ms',">",$TEXT);
 | 
			
		||||
       $TEXT = preg_replace('/[\t\x20]+$/ms',"",$TEXT);
 | 
			
		||||
       $TEXT = preg_replace('/\n{4,}/ms',"\n\n",$TEXT);
 | 
			
		||||
       $TEXT = preg_replace('/\n{3,}/ms',"\n\n",$TEXT);
 | 
			
		||||
                  
 | 
			
		||||
      /*first pass for blockquotes*/                         
 | 
			
		||||
      $TEXT  = preg_replace_callback(
 | 
			
		||||
      "#^>+(.*?)\\\\\\\\#ms",
 | 
			
		||||
        function($matches) {      
 | 
			
		||||
            return str_replace('\\',"",$matches[0]);
 | 
			
		||||
        },
 | 
			
		||||
        $TEXT 
 | 
			
		||||
    );
 | 
			
		||||
 | 
			
		||||
      /* remove extra line-feeds following in-table code blocks
 | 
			
		||||
         make sure cell-ending pipe not mistaken for a following link divider      
 | 
			
		||||
      */ 
 | 
			
		||||
      $TEXT = preg_replace_callback(
 | 
			
		||||
       '#(/code|/file)\>.*?\n\|#ms',  
 | 
			
		||||
       function($matches) {         
 | 
			
		||||
                $matches[0] = preg_replace("/([\S\s\w\:])\\\\\\\\(\w)/ms","$1@#@$2",$matches[0]); //retain backslashes inside code blocks
 | 
			
		||||
                $matches[0] = preg_replace("/(\w+)\\\\\\\\(\w)/ms","$1@#@",$matches[0]);
 | 
			
		||||
                $matches[0] = preg_replace("/\\\\(\w+)/ms","@!@$1",$matches[0]);
 | 
			
		||||
                $matches[0] = preg_replace("/(\w+)\\\\/ms","@!@$1",$matches[0]);               
 | 
			
		||||
         $matches[0] =  str_replace("\\", "",$matches[0]);              
 | 
			
		||||
                $matches[0] =  str_replace("@!@",'\\',$matches[0]);
 | 
			
		||||
         return str_replace("@#@", "\\\\",$matches[0]);              
 | 
			
		||||
      },
 | 
			
		||||
      $TEXT     
 | 
			
		||||
      );
 | 
			
		||||
      /* reformat table cell after removing extra line-feeds, above */
 | 
			
		||||
    $TEXT = preg_replace_callback(  
 | 
			
		||||
         '#\|[\s\n]+(\<file.*?\>)(.*?)(\<\/file>\s*.*?)\n?\|#ms',   
 | 
			
		||||
         function($matches) {  
 | 
			
		||||
            //$ret =  '</' . $matches[1] . '>' . str_replace('\\',"",$matches[2]) . '|'; 
 | 
			
		||||
             $matches[3]  = preg_replace('/\n+/',"",$matches[3] );
 | 
			
		||||
             $matches[3]  = preg_replace('/\s+$/',"",$matches[3] ) . '|';     
 | 
			
		||||
             return '|' . $matches[1]  . $matches[2]  . str_replace("\\ ","",$matches[3]);
 | 
			
		||||
         },
 | 
			
		||||
         $TEXT     
 | 
			
		||||
    );
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
        /*  Feb 23 2019
 | 
			
		||||
	remove spaces and line feeds between beginning of table cell and start of code block
 | 
			
		||||
	*/
 | 
			
		||||
      $TEXT = preg_replace_callback(
 | 
			
		||||
       '#\|(.*?)[\s\n]+\<(code|file)\>#ms',  
 | 
			
		||||
       function($matches) { 
 | 
			
		||||
	   return '|' . $matches[1] ."\n<". $matches[2] .'>' . "\n";         
 | 
			
		||||
       },$TEXT
 | 
			
		||||
       );
 | 
			
		||||
     /*remove line feeds following block */
 | 
			
		||||
    $TEXT = preg_replace_callback(     
 | 
			
		||||
	   '#\<\/(code|file)\>([^\w\|]+)#ms', 
 | 
			
		||||
       function($matches) {  
 | 
			
		||||
       $matches[2] = str_replace(':\\', '~~WIN__DIR~~',$matches[2]);     
 | 
			
		||||
       $matches[2] = preg_replace('#([\w;.:=\:])\\\\#ms', "$1_bSL_",$matches[2]);  //protect backslashes in Windows paths
 | 
			
		||||
       $ret = '</' . $matches[1] . '>' . str_replace("\\","",$matches[2]);  
 | 
			
		||||
       $ret = str_replace( '_bSL_', '\\',$ret); 
 | 
			
		||||
       $ret = str_replace( '~~WIN__DIR~~', ':\\',$ret); 
 | 
			
		||||
          return "\n" .$ret;  
 | 
			
		||||
       },$TEXT
 | 
			
		||||
       ); 
 | 
			
		||||
	  $TEXT = str_replace('CBL__Bksl','\\',$TEXT);
 | 
			
		||||
	  $TEXT = preg_replace("/<code\s+file/ms",'<code ',$TEXT);
 | 
			
		||||
	  
 | 
			
		||||
        $TEXT = preg_replace('#((\\\\){2}\s*)$#', "",$TEXT);
 | 
			
		||||
        
 | 
			
		||||
         return;
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
function replace_entities() {
 | 
			
		||||
global $TEXT;
 | 
			
		||||
global $ents;
 | 
			
		||||
    $serialized = FCK_ACTION_SUBDIR . 'ent.ser';
 | 
			
		||||
    $ents = unserialize(file_get_contents($serialized));
 | 
			
		||||
 | 
			
		||||
       $TEXT = preg_replace_callback(
 | 
			
		||||
            '|(&(\w+);)|',
 | 
			
		||||
            create_function(         
 | 
			
		||||
                '$matches',
 | 
			
		||||
                'global $ents; return $ents[$matches[2]];'
 | 
			
		||||
            ),
 | 
			
		||||
            $TEXT
 | 
			
		||||
        );
 | 
			
		||||
    
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
function write_debug($data) {
 | 
			
		||||
return;
 | 
			
		||||
  if (!$handle = fopen('save.txt', 'a')) {
 | 
			
		||||
    return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Write $somecontent to our opened file.
 | 
			
		||||
    fwrite($handle, "save.php: $data\n");
 | 
			
		||||
    fclose($handle);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
/* @auth Sergey Kotov */
 | 
			
		||||
//linkPath is the link in the page
 | 
			
		||||
//pagePath is absolute path of the page (ns1:ns2:....:page or :ns1:ns2:....:page)
 | 
			
		||||
function abs2rel($linkPath,$pagePath){
 | 
			
		||||
    if ($linkPath[0]==='.'){
 | 
			
		||||
        // It's already relative
 | 
			
		||||
        return $linkPath;
 | 
			
		||||
    }
 | 
			
		||||
    $aLink=explode(':',$linkPath);
 | 
			
		||||
    $nLink=count($aLink);
 | 
			
		||||
    if ($nLink<2){
 | 
			
		||||
        return $linkPath;
 | 
			
		||||
    }
 | 
			
		||||
    $aPage=explode(':',$pagePath);
 | 
			
		||||
    if(empty($aLink[0])) {
 | 
			
		||||
        // If linkPath is started by ':'
 | 
			
		||||
        // Make canonical absolute path ns1:ns2:.....:pageLink (strip leading :)
 | 
			
		||||
        array_shift($aLink);
 | 
			
		||||
        if (--$nLink<2) {
 | 
			
		||||
            return $linkPath;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    if(empty($aPage[0])) {
 | 
			
		||||
        // If pagePath is started by ':'
 | 
			
		||||
        // Make canonical absolute path ns1:ns2:.....:page (strip leading :)
 | 
			
		||||
        array_shift($aPage);
 | 
			
		||||
    }
 | 
			
		||||
    $nPage=count($aPage);
 | 
			
		||||
    $nslEqual=0; // count of equal namespaces from left to right
 | 
			
		||||
    // Minimal length of these two arrays, page name is not included
 | 
			
		||||
    $nMin=($nLink<$nPage ? $nLink : $nPage)-1 ;
 | 
			
		||||
    for ($i=0;$i<$nMin;++$i){
 | 
			
		||||
        if ($aLink[$i]===$aPage[$i]){
 | 
			
		||||
            ++$nslEqual;
 | 
			
		||||
        }
 | 
			
		||||
        else {
 | 
			
		||||
            break;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    if ($nslEqual==0){
 | 
			
		||||
        // Link and page from different root namespaces
 | 
			
		||||
        return $linkPath;
 | 
			
		||||
    }
 | 
			
		||||
    // Truncate equal lef namespaces
 | 
			
		||||
    $aPageDiff=array_slice($aPage,$nslEqual);
 | 
			
		||||
    $nPageDiff=count($aPageDiff);
 | 
			
		||||
    $aLinkDiff=array_slice($aLink,$nslEqual);
 | 
			
		||||
    
 | 
			
		||||
    // Now we have to go up to nPageDiff-1 levels
 | 
			
		||||
    $aResult=array();
 | 
			
		||||
    if ($nPageDiff>1){
 | 
			
		||||
        $aResult=array_fill(0,$nPageDiff-1,'..');
 | 
			
		||||
    }
 | 
			
		||||
     else if($nPageDiff == 1) {
 | 
			
		||||
        $aResult[] = '.';
 | 
			
		||||
    }
 | 
			
		||||
    $aResult=array_merge($aResult,$aLinkDiff);
 | 
			
		||||
    return implode(':', $aResult);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
} //end of action class
 | 
			
		||||
?>
 | 
			
		||||
							
								
								
									
										73
									
								
								lib/plugins/ckgedit/action/tagapi.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,73 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 *
 | 
			
		||||
 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
 | 
			
		||||
 * @author  Andreas Valder <valder@isf.rwth-aachen.de>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// must be run within Dokuwiki
 | 
			
		||||
if(!defined('DOKU_INC')) die();
 | 
			
		||||
class action_plugin_ckgedit_tagapi extends DokuWiki_Action_Plugin {
 | 
			
		||||
  private $tagplugin = null;
 | 
			
		||||
    /**
 | 
			
		||||
     * Registers a callback function for a given event
 | 
			
		||||
     *
 | 
			
		||||
     * @param Doku_Event_Handler $controller DokuWiki's event controller object
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function register(Doku_Event_Handler $controller) {
 | 
			
		||||
 | 
			
		||||
       $controller->register_hook('AJAX_CALL_UNKNOWN', 'BEFORE', $this, 'handle_ajax_call_unknown');
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param Doku_Event $event  event object by reference
 | 
			
		||||
     * @param mixed      $param  [the parameters passed as fifth argument to register_hook() when this
 | 
			
		||||
     *                           handler was registered]
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
    public function handle_ajax_call_unknown(Doku_Event &$event, $param) {
 | 
			
		||||
      if ($event->data !== 'tagapi_list') {
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
      $event->stopPropagation();
 | 
			
		||||
      $event->preventDefault();
 | 
			
		||||
 | 
			
		||||
      if ($this->tagplugin = $this->loadHelper('tag')) {
 | 
			
		||||
        $tags = $this->tagplugin->tagOccurrences(array(), NULL, true);
 | 
			
		||||
        $a = print_r($tags,true);
 | 
			
		||||
       // file_put_contents(DOKU_INC . 'tags.txt', $a);
 | 
			
		||||
      } else {
 | 
			
		||||
        $tags = array();
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      // sort tags by name ($tags is in the form $tag => $count)
 | 
			
		||||
      ksort($tags);
 | 
			
		||||
      echo '{"tags":[';
 | 
			
		||||
      $firstelement = true;
 | 
			
		||||
      foreach (array_keys($tags) as $tag) {
 | 
			
		||||
        if ($firstelement) {
 | 
			
		||||
          $firstelement = false;
 | 
			
		||||
        } else {
 | 
			
		||||
          echo ',';
 | 
			
		||||
        }
 | 
			
		||||
        echo '{"name":"'.$this->tagToName($tag).'","id":"'.$tag.'"}';
 | 
			
		||||
      }
 | 
			
		||||
      echo']}';
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private function tagToName($t) {
 | 
			
		||||
      $exists = false;
 | 
			
		||||
      $id = $t;
 | 
			
		||||
      resolve_pageID($this->tagplugin->namespace, $id, $exists);
 | 
			
		||||
      $name = p_get_first_heading($id, false);
 | 
			
		||||
      if (empty($name)) {
 | 
			
		||||
        $name = $t;
 | 
			
		||||
      } else {
 | 
			
		||||
        $name = $name;
 | 
			
		||||
      }
 | 
			
		||||
      return $name;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										124
									
								
								lib/plugins/ckgedit/admin.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,124 @@
 | 
			
		||||
<?php
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *   @author Myron Turner <turnermm02@shaw.ca>
 | 
			
		||||
 *   @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
require_once(DOKU_INC . 'lib/plugins/ckgedit/scripts/css6.php');
 | 
			
		||||
class admin_plugin_ckgedit extends DokuWiki_Admin_Plugin {
 | 
			
		||||
 | 
			
		||||
	private $tpl_inc;
 | 
			
		||||
	private $template;	
 | 
			
		||||
	private $alt;
 | 
			
		||||
    function __construct() {      
 | 
			
		||||
	    global $conf;
 | 
			
		||||
        $this->template = $conf['template']; 	
 | 
			
		||||
		$this->tpl_inc = tpl_incdir();         
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
    function handle() {
 | 
			
		||||
 
 | 
			
		||||
      if (!isset($_REQUEST['cmd'])) return;   // first time - nothing to do
 | 
			
		||||
 
 | 
			
		||||
      $this->output = 'invalid';
 | 
			
		||||
	
 | 
			
		||||
      if (!checkSecurityToken()) return;
 | 
			
		||||
      if (!is_array($_REQUEST['cmd'])) return; 
 | 
			
		||||
 
 | 
			
		||||
       switch (key($_REQUEST['cmd'])) {
 | 
			
		||||
	    case 'stylesheet' : {
 | 
			
		||||
			$this->alt = "";
 | 
			
		||||
			$this->output = 'style_sheet_msg';
 | 
			
		||||
			break;
 | 
			
		||||
		}
 | 
			
		||||
	    case 'alt_stylesheet' : {	
 | 
			
		||||
            $this->alt = $_REQUEST['templates'];		
 | 
			
		||||
			$this->output = 'alt_style_sheet_msg';
 | 
			
		||||
			break;
 | 
			
		||||
		}	
 | 
			
		||||
      }    
 | 
			
		||||
 | 
			
		||||
	
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
    /**
 | 
			
		||||
     * output appropriate html
 | 
			
		||||
     */
 | 
			
		||||
    function html() {
 | 
			
		||||
	  ptln('<div id = "ckg_styl_sheet" style = "display:none">');	
 | 
			
		||||
      echo $this->locale_xhtml('style');
 | 
			
		||||
	  ptln('</div>');
 | 
			
		||||
      ptln('<button type = "button" id = "Infobut" onclick="jQuery(\'#ckg_styl_sheet\').toggle(800,ckg_admininfo(this));">');
 | 
			
		||||
	  
 | 
			
		||||
	  echo $this->getLang('stylesheet_oinfo');
 | 
			
		||||
	  ptln('</button>');
 | 
			
		||||
		  
 | 
			
		||||
      ptln('<form action="'.wl($ID).'" method="post">'); 
 | 
			
		||||
      // output hidden values to ensure dokuwiki will return back to this plugin
 | 
			
		||||
      ptln('  <input type="hidden" name="do"   value="admin" />');
 | 
			
		||||
      ptln('  <input type="hidden" name="page" value="'.$this->getPluginName().'" />');
 | 
			
		||||
      formSecurityToken();
 | 
			
		||||
      
 | 
			
		||||
      //Current style sheet
 | 
			
		||||
	  ptln('<p style = "line-height: 200%;">' . $this->getLang('default_stylesheet') . ': (' .$this->template . ')<br />');
 | 
			
		||||
	  ptln('<label for="ckg_save_ss">' .$this->getLang('checkbox').'</label>');
 | 
			
		||||
	  ptln('<input type="checkbox" name="ckg_save_ss">  '); 
 | 
			
		||||
	  ptln('<input type="submit" name="cmd[stylesheet]"  value="'.$this->getLang('style_sheet').'" /></p>');	  
 | 
			
		||||
      
 | 
			
		||||
      // Other style sheet
 | 
			
		||||
	  $alt_val = isset($this->alt)?$this->alt: "" ;
 | 
			
		||||
	  ptln('<p style = "line-height: 200%;">' . $this->getLang('alt_stylesheet') .'<br />');
 | 
			
		||||
      ptln('<select name="templates" style = "line-height:100%">');
 | 
			
		||||
      echo $this->templates( $alt_val );
 | 
			
		||||
      ptln('</select>');
 | 
			
		||||
	  ptln('<input type="submit" name="cmd[alt_stylesheet]"  value="'.$this->getLang('style_sheet').'" />');   
 | 
			
		||||
      ptln('</form></p>');   
 | 
			
		||||
 | 
			
		||||
	  if($this->output && $this->output == 'style_sheet_msg') {	  
 | 
			
		||||
          $path = $this->tpl_inc;     
 | 
			
		||||
		  ptln(htmlspecialchars($this->getLang($this->output)). " " .$this->template);	  
 | 
			
		||||
		  $retv = css_ckg_out($path);
 | 
			
		||||
          $this->message($path, $retv);
 | 
			
		||||
 | 
			
		||||
      }
 | 
			
		||||
 	 else  if($this->output && $this->output == 'alt_style_sheet_msg') {		  
 | 
			
		||||
	    ptln(htmlspecialchars($this->getLang($this->output)). " " .$this->alt);				
 | 
			
		||||
		$path = str_replace('tpl/'.$this->template, 'tpl/'.$this->alt,$this->tpl_inc);
 | 
			
		||||
        $retv = css_ckg_out($path,$this->alt);
 | 
			
		||||
        $this->message($path, $retv);
 | 
			
		||||
	   }
 | 
			
		||||
	  
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
   function message($path, $which) {
 | 
			
		||||
      $messages = array(
 | 
			
		||||
		  "Stylesheet saved to $path" . 'Styles/_style.css',
 | 
			
		||||
		  "Failed to save stylesheet to $path" . 'Styles/_style.css'		
 | 
			
		||||
         );          
 | 
			
		||||
     	  $color = $which == 0? '#333': 'blue';
 | 
			
		||||
		   ptln('<br /><span style = "color:'.$color. ';">'.htmlspecialchars($messages[$which]).'</span>');
 | 
			
		||||
	  
 | 
			
		||||
   }
 | 
			
		||||
   
 | 
			
		||||
   function templates($selected="") {
 | 
			
		||||
   $dir = dirname($this->tpl_inc);
 | 
			
		||||
   $files = scandir($dir);
 | 
			
		||||
   $dir .= '/';
 | 
			
		||||
   $list = "<option value=''  >Select</option>";
 | 
			
		||||
   foreach ($files AS $file) {
 | 
			
		||||
       if($file == '.' || $file == '..' || $file == $this->template) continue;
 | 
			
		||||
       $entry = $dir . $file;
 | 
			
		||||
       if(!is_writable($entry)) continue;
 | 
			
		||||
       if(is_dir ($entry ) ) {
 | 
			
		||||
             if($file == $selected) {
 | 
			
		||||
                 $list .= "<option value='$file'  selected>$file</option>";
 | 
			
		||||
             }
 | 
			
		||||
            else   $list .= "<option value='$file'  >$file</option>";
 | 
			
		||||
       }       
 | 
			
		||||
   }
 | 
			
		||||
 | 
			
		||||
  return $list;
 | 
			
		||||
   } 
 | 
			
		||||
}	
 | 
			
		||||
							
								
								
									
										1703
									
								
								lib/plugins/ckgedit/ckeditor/CHANGES.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1420
									
								
								lib/plugins/ckgedit/ckeditor/LICENSE.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										39
									
								
								lib/plugins/ckgedit/ckeditor/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,39 @@
 | 
			
		||||
CKEditor 4
 | 
			
		||||
==========
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
 | 
			
		||||
http://ckeditor.com - See LICENSE.md for license information.
 | 
			
		||||
 | 
			
		||||
CKEditor is a text editor to be used inside web pages. It's not a replacement
 | 
			
		||||
for desktop text editors like Word or OpenOffice, but a component to be used as
 | 
			
		||||
part of web applications and websites.
 | 
			
		||||
 | 
			
		||||
## Documentation
 | 
			
		||||
 | 
			
		||||
The full editor documentation is available online at the following address:
 | 
			
		||||
http://docs.ckeditor.com
 | 
			
		||||
 | 
			
		||||
## Installation
 | 
			
		||||
 | 
			
		||||
Installing CKEditor is an easy task. Just follow these simple steps:
 | 
			
		||||
 | 
			
		||||
 1. **Download** the latest version from the CKEditor website:
 | 
			
		||||
    http://ckeditor.com. You should have already completed this step, but be
 | 
			
		||||
    sure you have the very latest version.
 | 
			
		||||
 2. **Extract** (decompress) the downloaded file into the root of your website.
 | 
			
		||||
 | 
			
		||||
**Note:** CKEditor is by default installed in the `ckeditor` folder. You can
 | 
			
		||||
place the files in whichever you want though.
 | 
			
		||||
 | 
			
		||||
## Checking Your Installation
 | 
			
		||||
 | 
			
		||||
The editor comes with a few sample pages that can be used to verify that
 | 
			
		||||
installation proceeded properly. Take a look at the `samples` directory.
 | 
			
		||||
 | 
			
		||||
To test your installation, just call the following page at your website:
 | 
			
		||||
 | 
			
		||||
	http://<your site>/<CKEditor installation path>/samples/index.html
 | 
			
		||||
 | 
			
		||||
For example:
 | 
			
		||||
 | 
			
		||||
	http://www.example.com/ckeditor/samples/index.html
 | 
			
		||||
							
								
								
									
										10
									
								
								lib/plugins/ckgedit/ckeditor/adapters/jquery.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,10 @@
 | 
			
		||||
/*
 | 
			
		||||
 Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
 | 
			
		||||
 For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
 | 
			
		||||
*/
 | 
			
		||||
(function(a){if("undefined"==typeof a)throw Error("jQuery should be loaded before CKEditor jQuery adapter.");if("undefined"==typeof CKEDITOR)throw Error("CKEditor should be loaded before CKEditor jQuery adapter.");CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},
 | 
			
		||||
ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g)){var m=d;d=g;g=m}var k=[];d=d||{};this.each(function(){var b=a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,l=new a.Deferred;k.push(l.promise());if(c&&!f)g&&g.apply(c,[this]),l.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),l.resolve()):setTimeout(arguments.callee,100)},0)},
 | 
			
		||||
null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",
 | 
			
		||||
[e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit();return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",
 | 
			
		||||
c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);l.resolve()}else setTimeout(arguments.callee,100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,k).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}});CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var m=
 | 
			
		||||
this,k=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});k.push(f.promise());return!0}return g.call(b,d)});if(k.length){var b=new a.Deferred;a.when.apply(this,k).done(function(){b.resolveWith(m)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}}))})(window.jQuery);
 | 
			
		||||
							
								
								
									
										8
									
								
								lib/plugins/ckgedit/ckeditor/additional.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,8 @@
 | 
			
		||||
 blockquote {
 | 
			
		||||
  border: 1px dotted #ccc;
 | 
			
		||||
  background: #eee url(data:image/gif;base64,R0lGODlhLgAcAMQAAPT09PHx8e7u7unp6ejo6Ofn5+bm5uXl5eTk5OPj4+Li4t/f397e3t3d3dzc3Nvb29ra2v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAABEALAAAAAAuABwAAAW2YCSOJLkgaJqWrKi+ram8dBwJdB03Od3Ehh6MdUgIXwvWcVhyLFEMCEP5tD2WD1tkqY1chT/t0dB1CrNiIVl7OCbTwu722F0Cujzhoa6WG4UObGMBfEtvVEtrLU8qhyOMKIokkCl7IwOUCAWIlJOZCJyQlnOZBCWfCAqPqKesIm2frbEimLMjeZQJnpmhT45BlKMjX5C9RwKLkGiyiTaMqi3AXHA90EDTeD2Bcj1yJSeV3rugXSEAOw==) no-repeat 0.3em 0.3em;
 | 
			
		||||
  padding: 1em;
 | 
			
		||||
  overflow: hidden;
 | 
			
		||||
  margin: 1em auto 1em auto;
 | 
			
		||||
  max-width: 90%;
 | 
			
		||||
}  
 | 
			
		||||
							
								
								
									
										190
									
								
								lib/plugins/ckgedit/ckeditor/build-config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,190 @@
 | 
			
		||||
/**
 | 
			
		||||
 * @license Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
 | 
			
		||||
 * For licensing, see LICENSE.md or https://ckeditor.com/license
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This file was added automatically by CKEditor builder.
 | 
			
		||||
 * You may re-use it at any time to build CKEditor again.
 | 
			
		||||
 *
 | 
			
		||||
 * If you would like to build CKEditor online again
 | 
			
		||||
 * (for example to upgrade), visit one the following links:
 | 
			
		||||
 *
 | 
			
		||||
 * (1) https://ckeditor.com/cke4/builder
 | 
			
		||||
 *     Visit online builder to build CKEditor from scratch.
 | 
			
		||||
 *
 | 
			
		||||
 * (2) https://ckeditor.com/cke4/builder/c3fc0dcaa9c80d707aab3e60fdcddbfb
 | 
			
		||||
 *     Visit online builder to build CKEditor, starting with the same setup as before.
 | 
			
		||||
 *
 | 
			
		||||
 * (3) https://ckeditor.com/cke4/builder/download/c3fc0dcaa9c80d707aab3e60fdcddbfb
 | 
			
		||||
 *     Straight download link to the latest version of CKEditor (Optimized) with the same setup as before.
 | 
			
		||||
 *
 | 
			
		||||
 * NOTE:
 | 
			
		||||
 *    This file is not used by CKEditor, you may remove it.
 | 
			
		||||
 *    Changing this file will not change your CKEditor configuration.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
var CKBUILDER_CONFIG = {
 | 
			
		||||
	skin: 'moono-lisa',
 | 
			
		||||
	preset: 'full',
 | 
			
		||||
	ignore: [
 | 
			
		||||
		'.DS_Store',
 | 
			
		||||
		'.bender',
 | 
			
		||||
		'.editorconfig',
 | 
			
		||||
		'.gitattributes',
 | 
			
		||||
		'.gitignore',
 | 
			
		||||
		'.idea',
 | 
			
		||||
		'.jscsrc',
 | 
			
		||||
		'.jshintignore',
 | 
			
		||||
		'.jshintrc',
 | 
			
		||||
		'.mailmap',
 | 
			
		||||
		'.npm',
 | 
			
		||||
		'.travis.yml',
 | 
			
		||||
		'bender-err.log',
 | 
			
		||||
		'bender-out.log',
 | 
			
		||||
		'bender.ci.js',
 | 
			
		||||
		'bender.js',
 | 
			
		||||
		'dev',
 | 
			
		||||
		'gruntfile.js',
 | 
			
		||||
		'less',
 | 
			
		||||
		'node_modules',
 | 
			
		||||
		'package.json',
 | 
			
		||||
		'tests'
 | 
			
		||||
	],
 | 
			
		||||
	plugins : {
 | 
			
		||||
		'a11yhelp' : 1,
 | 
			
		||||
		'about' : 1,
 | 
			
		||||
		'basicstyles' : 1,
 | 
			
		||||
		'bidi' : 1,
 | 
			
		||||
		'blockquote' : 1,
 | 
			
		||||
		'clipboard' : 1,
 | 
			
		||||
		'colorbutton' : 1,
 | 
			
		||||
		'colordialog' : 1,
 | 
			
		||||
		'contextmenu' : 1,
 | 
			
		||||
		'copyformatting' : 1,
 | 
			
		||||
		'dialogadvtab' : 1,
 | 
			
		||||
		'div' : 1,
 | 
			
		||||
		'elementspath' : 1,
 | 
			
		||||
		'enterkey' : 1,
 | 
			
		||||
		'entities' : 1,
 | 
			
		||||
		'filebrowser' : 1,
 | 
			
		||||
		'find' : 1,
 | 
			
		||||
		'flash' : 1,
 | 
			
		||||
		'floatingspace' : 1,
 | 
			
		||||
		'font' : 1,
 | 
			
		||||
		'format' : 1,
 | 
			
		||||
		'forms' : 1,
 | 
			
		||||
		'horizontalrule' : 1,
 | 
			
		||||
		'htmlwriter' : 1,
 | 
			
		||||
		'iframe' : 1,
 | 
			
		||||
		'image' : 1,
 | 
			
		||||
		'indentblock' : 1,
 | 
			
		||||
		'indentlist' : 1,
 | 
			
		||||
		'justify' : 1,
 | 
			
		||||
		'language' : 1,
 | 
			
		||||
		'link' : 1,
 | 
			
		||||
		'list' : 1,
 | 
			
		||||
		'liststyle' : 1,
 | 
			
		||||
		'magicline' : 1,
 | 
			
		||||
		'maximize' : 1,
 | 
			
		||||
		'newpage' : 1,
 | 
			
		||||
		'pagebreak' : 1,
 | 
			
		||||
		'pastefromword' : 1,
 | 
			
		||||
		'pastetext' : 1,
 | 
			
		||||
		'preview' : 1,
 | 
			
		||||
		'print' : 1,
 | 
			
		||||
		'removeformat' : 1,
 | 
			
		||||
		'resize' : 1,
 | 
			
		||||
		'save' : 1,
 | 
			
		||||
		'scayt' : 1,
 | 
			
		||||
		'selectall' : 1,
 | 
			
		||||
		'showblocks' : 1,
 | 
			
		||||
		'showborders' : 1,
 | 
			
		||||
		'smiley' : 1,
 | 
			
		||||
		'sourcearea' : 1,
 | 
			
		||||
		'specialchar' : 1,
 | 
			
		||||
		'stylescombo' : 1,
 | 
			
		||||
		'tab' : 1,
 | 
			
		||||
		'table' : 1,
 | 
			
		||||
		'tableselection' : 1,
 | 
			
		||||
		'tabletools' : 1,
 | 
			
		||||
		'templates' : 1,
 | 
			
		||||
		'toolbar' : 1,
 | 
			
		||||
		'undo' : 1,
 | 
			
		||||
		'uploadimage' : 1,
 | 
			
		||||
		'wsc' : 1,
 | 
			
		||||
		'wysiwygarea' : 1
 | 
			
		||||
	},
 | 
			
		||||
	languages : {
 | 
			
		||||
		'af' : 1,
 | 
			
		||||
		'ar' : 1,
 | 
			
		||||
		'az' : 1,
 | 
			
		||||
		'bg' : 1,
 | 
			
		||||
		'bn' : 1,
 | 
			
		||||
		'bs' : 1,
 | 
			
		||||
		'ca' : 1,
 | 
			
		||||
		'cs' : 1,
 | 
			
		||||
		'cy' : 1,
 | 
			
		||||
		'da' : 1,
 | 
			
		||||
		'de' : 1,
 | 
			
		||||
		'de-ch' : 1,
 | 
			
		||||
		'el' : 1,
 | 
			
		||||
		'en' : 1,
 | 
			
		||||
		'en-au' : 1,
 | 
			
		||||
		'en-ca' : 1,
 | 
			
		||||
		'en-gb' : 1,
 | 
			
		||||
		'eo' : 1,
 | 
			
		||||
		'es' : 1,
 | 
			
		||||
		'es-mx' : 1,
 | 
			
		||||
		'et' : 1,
 | 
			
		||||
		'eu' : 1,
 | 
			
		||||
		'fa' : 1,
 | 
			
		||||
		'fi' : 1,
 | 
			
		||||
		'fo' : 1,
 | 
			
		||||
		'fr' : 1,
 | 
			
		||||
		'fr-ca' : 1,
 | 
			
		||||
		'gl' : 1,
 | 
			
		||||
		'gu' : 1,
 | 
			
		||||
		'he' : 1,
 | 
			
		||||
		'hi' : 1,
 | 
			
		||||
		'hr' : 1,
 | 
			
		||||
		'hu' : 1,
 | 
			
		||||
		'id' : 1,
 | 
			
		||||
		'is' : 1,
 | 
			
		||||
		'it' : 1,
 | 
			
		||||
		'ja' : 1,
 | 
			
		||||
		'ka' : 1,
 | 
			
		||||
		'km' : 1,
 | 
			
		||||
		'ko' : 1,
 | 
			
		||||
		'ku' : 1,
 | 
			
		||||
		'lt' : 1,
 | 
			
		||||
		'lv' : 1,
 | 
			
		||||
		'mk' : 1,
 | 
			
		||||
		'mn' : 1,
 | 
			
		||||
		'ms' : 1,
 | 
			
		||||
		'nb' : 1,
 | 
			
		||||
		'nl' : 1,
 | 
			
		||||
		'no' : 1,
 | 
			
		||||
		'oc' : 1,
 | 
			
		||||
		'pl' : 1,
 | 
			
		||||
		'pt' : 1,
 | 
			
		||||
		'pt-br' : 1,
 | 
			
		||||
		'ro' : 1,
 | 
			
		||||
		'ru' : 1,
 | 
			
		||||
		'si' : 1,
 | 
			
		||||
		'sk' : 1,
 | 
			
		||||
		'sl' : 1,
 | 
			
		||||
		'sq' : 1,
 | 
			
		||||
		'sr' : 1,
 | 
			
		||||
		'sr-latn' : 1,
 | 
			
		||||
		'sv' : 1,
 | 
			
		||||
		'th' : 1,
 | 
			
		||||
		'tr' : 1,
 | 
			
		||||
		'tt' : 1,
 | 
			
		||||
		'ug' : 1,
 | 
			
		||||
		'uk' : 1,
 | 
			
		||||
		'vi' : 1,
 | 
			
		||||
		'zh' : 1,
 | 
			
		||||
		'zh-cn' : 1
 | 
			
		||||
	}
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										1337
									
								
								lib/plugins/ckgedit/ckeditor/ckeditor.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										26722
									
								
								lib/plugins/ckgedit/ckeditor/ckeditor.js.unc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1
									
								
								lib/plugins/ckgedit/ckeditor/config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										474
									
								
								lib/plugins/ckgedit/ckeditor/config.js.unc
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,474 @@
 | 
			
		||||
/**
 | 
			
		||||
 * @license Copyright (c) 2003-2017, CKSource - Frederico Knabben. All rights reserved.
 | 
			
		||||
 * For licensing, see LICENSE.md or http://ckeditor.com/license
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
CKEDITOR.editorConfig = function( config ) {
 | 
			
		||||
 | 
			
		||||
config.keystrokes = [
 | 
			
		||||
 | 
			
		||||
   // [ CKEDITOR.CTRL + 76, null ],                       // CTRL + L
 | 
			
		||||
      [ CKEDITOR.ALT  + CKEDITOR.SHIFT + 56, 'bulletedlist' ],       // ALT + *    
 | 
			
		||||
      [ CKEDITOR.ALT + 56, 'bulletedlist' ],                                    // ALT + 8
 | 
			
		||||
      [ CKEDITOR.ALT + 173, 'numberedlist' ],                               // ALT + -
 | 
			
		||||
      [ CKEDITOR.CTRL + 48, 'ckgundoheader' ],                               // ALT + 0   
 | 
			
		||||
      [ CKEDITOR.CTRL + 49, 'ckginsheaderone' ],                          // ALT + 1
 | 
			
		||||
      [ CKEDITOR.CTRL + 50, 'ckginsheadertwo' ],                          // ALT + 2
 | 
			
		||||
      [ CKEDITOR.CTRL + 51, 'ckginsheaderthree' ],                          // ALT + 4
 | 
			
		||||
      [ CKEDITOR.CTRL + 52, 'ckginsheaderfour' ],                          // ALT +4 
 | 
			
		||||
      [ CKEDITOR.CTRL + 53, 'ckginsheaderfive' ],                          // ALT + 5
 | 
			
		||||
      [ CKEDITOR.ALT + 77, 'ckginscode' ],          //ALT +m
 | 
			
		||||
      /* turn off ALT to avoid conflict with AltGr */
 | 
			
		||||
      [ CKEDITOR.ALT + 48, null ],                           
 | 
			
		||||
      [ CKEDITOR.ALT + 49, null ],                         
 | 
			
		||||
      [ CKEDITOR.ALT + 50, null ],                         
 | 
			
		||||
      [ CKEDITOR.ALT + 51, null ],                       
 | 
			
		||||
      [ CKEDITOR.ALT + 52, null ],                         
 | 
			
		||||
      [ CKEDITOR.ALT + 53, null ],                          
 | 
			
		||||
   
 | 
			
		||||
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
config.colors = new Array(
 | 
			
		||||
'000000','000033','000066','000099','0000CC','0000CE','0000FF','003300','003333','003366','003399','0033CC','0033FF','006600','006633',
 | 
			
		||||
'006666','006699','0066CC','0066FF','009900','009933','009966','009999','0099CC','0099FF','00CC00','00CC33','00CC66','00CC99','00CCCC','00CCFF',
 | 
			
		||||
'00FF00','00FF33','00FF66','00FF99','00FFCC','00FFFF','01F33E','01FCEF','03EBA6','03F3AB','06DCFB','0AFE47','111111','1F88A7','1FCB4A','1FFEF3',
 | 
			
		||||
'222222','23819C','24E0FB','25A0C5','27DE55','2897B7','2966B8','29AFD6','2DC800','2F74D0','2FAACE','32DF00','330000','330033','330066','330099',
 | 
			
		||||
'3300CC','3300FF','333300','333333','333333','333366','333399','3333CC','3333FF','336600','336633','336666','336699','3366CC','3366FF','339900',
 | 
			
		||||
'339933','339966','339999','3399CC','3399FF','33CC00','33CC33','33CC66','33CC99','33CCCC','33CCFF','33FDC0','33FF00','33FF33','33FF66','33FF99',
 | 
			
		||||
'33FFCC','33FFFF','36F200','3923D6','3DE4FC','444444','44B4D5','48FB0D','4985D6','4A9586','4AE371','4BFE78','4FBDDD','52FF20','555555','5757FF',
 | 
			
		||||
'57BCD9','59955C','59DF00','5B5BFF','5EAE9E','5FFEF7','6094DB','61F200','62A9FF','62D0FF','62FDCE','63E9FC','660000','660033','660066','660099',
 | 
			
		||||
'6600CC','6600FF','663300','663333','663366','663399','6633CC','6633FF','666600','666633','666666','666666','666699','6666CC','6666FF','669900',
 | 
			
		||||
'669933','669966','669999','6699CC','6699FF','66CC00','66CC33','66CC66','66CC99','66CCCC','66CCFF','66FF00','66FF00','66FF33','66FF66','66FF99',
 | 
			
		||||
'66FFCC','66FFFF','6755E3','67C7E2','6A6AFF','6CA870','6FFF44','72FE95','7373FF','74138C','74BAAC','74FEF8','75B4FF','75D6FF','75ECFD','777777',
 | 
			
		||||
'7979FF','79FC4E','7BA7E1','7BCAE1','7CEB98','7DFDD7','800080','80B584','8282FF','8678E9','86BCFF','872187','888888','892EE4','89FC63','8ADCFF',
 | 
			
		||||
'8BFEA8','8C8CFF','8CD1E6','8CEFFD','8D18AB','8DC7BB','8EB4E6','8ED6EA','8FFEDD','8FFF6F','9191FF','92FEF9','93BF96','93EEAA','9588EC','95FF4F',
 | 
			
		||||
'9669FE','990000','990033','990066','990099','990099','9900CC','9900FF','993300','993333','993366','993399','9933CC','9933FF','996600','996633',
 | 
			
		||||
'996666','996699','9966CC','9966FF','999900','999933','999966','999999','999999','9999CC','9999FF','9999FF','99C7FF','99C7FF','99CC00','99CC33',
 | 
			
		||||
'99CC66','99CC99','99CCCC','99CCFF','99E0FF','99FD77','99FF00','99FF33','99FF66','99FF99','99FFCC','99FFFF','9A03FE','9B4EE9','9D9D00','A095EE',
 | 
			
		||||
'A27AFE','A3FEBA','A41CC6','A4F0B7','A55FEB','A5D3CA','A5DBEB','A5FEE3','A5FEFA','A5FF8A','A6CAA9','A6DEEE','A827FE','A8A8FF','A8CFFF','A8E4FF',
 | 
			
		||||
'A9C5EB','AAAAAA','AAAAFF','AAFD8E','ABFF73','ACF3FD','AD8BFE','AE70ED','AE70ED','B05F3C','B0A7F1','B300B3','B3FF99','B445FE','B4D1B6','B5FFC8',
 | 
			
		||||
'B5FFFC','B6BA18','B7B7FF','B89AFE','B8E2EF','B9264F','B96F6F','BA21E0','BABA21','BAD0EF','BAFEA3','BBBBBB','BBBBFF','BBDAFF','BBEBFF','BC2EBC',
 | 
			
		||||
'BCB4F3','BD5CFE','BDF4CB','BDFFEA','BEFEEB','BF00BF','C06A45','C0A545','C0E0DA','C0E7F3','C0F7FE','C0F7FE','C0FF97','C17753','C269FE','C27E3A',
 | 
			
		||||
'C47557','C48484','C4ABFE','C6C6FF','C79BF2','C87C5B','C88E8E','C8B400','C8C800','C98767','C98A4B','C9DECB','C9EAF3','CA00CA','CACAFF','CAFEB8',
 | 
			
		||||
'CAFFD8','CB59E8','CB59E8','CB876D','CBC5F5','CC0000','CC0033','CC0066','CC0099','CC00CC','CC00FF','CC3300','CC3333','CC3366','CC3399','CC33CC',
 | 
			
		||||
'CC33FF','CC6600','CC6633','CC6666','CC6699','CC66CC','CC66FF','CC9900','CC9933','CC9966','CC9999','CC99CC','CC99FF','CCCC00','CCCC33','CCCC66',
 | 
			
		||||
'CCCC99','CCCCCC','CCCCCC','CCCCFF','CCFF00','CCFF33','CCFF66','CCFF99','CCFFCC','CCFFFF','CD85FE','CDD11B','CEA8F4','CEB86C','CEDEF4','CEF0FF',
 | 
			
		||||
'CEFFFD','CF8D72','CFE7E2','CFFEF0','D0977B','D0BCFE','D0E6FF','D19C67','D1A0A0','D1D17A','D1FFB3','D29680','D2FFC4','D54FD5','D568FD','D698FE',
 | 
			
		||||
'D69E87','D6C485','D6F8DE','D73E68','D7ACAC','D7D1F8','D7D78A','D881ED','D8F0F8','D900D9','D97BFD','D9C400','D9F3FF','DAA794','DAAC96','DAAF85',
 | 
			
		||||
'DB00DB','DB9900','DBBFF7','DBDB97','DBDBFF','DBEADC','DBEBFF','DBF0F7','DCEDEA','DD597D','DD75DD','DD75DD','DD88FD','DDB791','DDB9B9','DDCEFF',
 | 
			
		||||
'DDDDDD','DDFED1','DEB19E','DECF9C','DFA800','DFB0FF','DFB4A4','DFDF00','DFE32D','DFFFCA','E0BBA9','E0E04E','E0EAF8','E1CAF9','E1E1A8','E1E1FF',
 | 
			
		||||
'E1FFFE','E29BFD','E37795','E3D6AA','E3E0FA','E3FBE9','E3FBE9','E469FE','E4C0B1','E4C6A7','E697E6','E6C5B9','E6CCCC','E6CE00','E6DBFF','E6E671',
 | 
			
		||||
'E6FCFF','E77AFE','E7A9FE','E7F3F1','E7FFDF','E8C6FF','E8CCBF','E8FFD9','E994AB','E9D0B6','E9E9BE','E9E9C0','E9F1EA','EA8DFE','EAA400','EAA6EA',
 | 
			
		||||
'EACDC1','EADFBF','EAEA8A','EAF1FB','EAF7FB','EAFEE2','EAFFEF','EAFFEF','EBD0C7','ECD5CA','ECD9D9','ECF4FF','ECFAFF','ED9EFE','EDA9BC','EDBEFE',
 | 
			
		||||
'EDDFFB','EDE4C9','EDEF85','EEBBEE','EEDCC8','EEEEA2','EEEECE','EEEECE','EEEEEE','EEEEFF','EEEEFF','EEF093','EFA9FE','EFCDF8','EFCDF8','EFD7FF',
 | 
			
		||||
'EFE7CF','EFEDFC','EFF9FC','F0B9C8','F0C4F0','F0CBFE','F0DCD5','F0DDD5','F0DDD5','F1ECFF','F1F1B1','F1F1D6','F1FEED','F206FF','F2BCFE','F2E4D5',
 | 
			
		||||
'F2F4B3','F2F9F8','F2FFEA','F2FFFE','F3E7E7','F3F8F4','F4CAD6','F4D2F4','F4D2F4','F4DCFE','F4F4BF','F5CAFF','F5E7E2','F5E8E2','F5E8E2','F5EEFD',
 | 
			
		||||
'F5EFE0','F5F5E2','F5F7C4','F5FFF2','F70000','F7DE00','F7F5FE','F7F7CE','F7F9D0','F7FBFA','F7FFFD','F8DAE2','F8E9FC','F8F1F1','F8FBFE','F900F9',
 | 
			
		||||
'F9BB00','F9D9FF','F9EEFF','F9EFEC','F9F3EC','F9F5EC','F9F9DD','F9F9FF','F9FCFF','F9FDFF','F9FEFF','F9FFFB','FAE7EC','FAECFF','FAF2EF','FAFBDF',
 | 
			
		||||
'FAFDFE','FAFEFB','FAFFF7','FBF9FF','FBFBE8','FBFDFB','FCF7F5','FCF9F5','FCFCE9','FDF2FF','FDF9FD','FDF9FF','FDFAF9','FDFAF9','FDFBFB','FDFCF9',
 | 
			
		||||
'FDFDF0','FDFDF9','FDFDFF','FDFEFF','FDFFFD','FDFFFF','FE67EB','FE67EB','FE8BF0','FE98F1','FEA9F3','FEFAFB','FEFDFF','FEFDFF','FEFEFA','FF0000',
 | 
			
		||||
'FF0033','FF0066','FF0099','FF00CC','FF00FF','FF2626','FF2DFF','FF3300','FF3333','FF3366','FF3399','FF33CC','FF33FF','FF4848','FF4AFF','FF5353',
 | 
			
		||||
'FF62B0','FF6600','FF6633','FF6666','FF6699','FF66CC','FF66FF','FF68DD','FF7373','FF73B9','FF7575','FF79E1','FF7DFF','FF800D','FF86C2','FF86E3',
 | 
			
		||||
'FF86FF','FF8A8A','FF8E8E','FF9331','FF9797','FF97CB','FF97E8','FF9900','FF9933','FF9966','FF9999','FF99CC','FF99FF','FF9C42','FFA04A','FFA4A4',
 | 
			
		||||
'FFA4FF','FFA8A8','FFA8D3','FFA8FF','FFAB60','FFAC62','FFACEC','FFACEC','FFB428','FFB5B5','FFB60B','FFBB7D','FFBBBB','FFBBDD','FFBBF7','FFBBFF',
 | 
			
		||||
'FFBD82','FFBE28','FFBF48','FFC48E','FFC4FF','FFC65B','FFC848','FFC895','FFC8C8','FFC8E3','FFC8F2','FFCAF9','FFCB2F','FFCC00','FFCC33','FFCC66',
 | 
			
		||||
'FFCC99','FFCCCC','FFCCFF','FFCE73','FFCEA2','FFCECE','FFCEFF','FFCFA4','FFD062','FFD34F','FFD586','FFD7B3','FFD9B7','FFDBFB','FFDD75','FFDEA2',
 | 
			
		||||
'FFDFDF','FFDFEF','FFDFF8','FFDFFF','FFE099','FFE1C6','FFE2C8','FFE3FF','FFE699','FFE6B5','FFE6D0','FFE920','FFEAB7','FFEAC4','FFEAEA','FFEAEA',
 | 
			
		||||
'FFEBD9','FFECB0','FFECEC','FFECF5','FFECFF','FFEEFB','FFEEFD','FFF06A','FFF1C6','FFF1E6','FFF284','FFF2D2','FFF2D9','FFF2F2','FFF4EA','FFF5D7',
 | 
			
		||||
'FFF7B7','FFF7E6','FFF9CE','FFF9EA','FFF9F4','FFF9FC','FFF9FE','FFF9FF','FFFAEA','FFFBDF','FFFDF7','FFFDF9','FFFDF9','FFFDFD','FFFDFF','FFFDFF',
 | 
			
		||||
'FFFEF7','FFFEFB','FFFEFD','FFFF00','FFFF33','FFFF66','FFFF84','FFFF99','FFFF99','FFFFAA','FFFFB5','FFFFC8','FFFFCC','FFFFD7','FFFFE3','FFFFFD',
 | 
			
		||||
'FFFFFF','FFFFFF','FFFFFF'
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
     var browser_level; 
 | 
			
		||||
	 if (window.top != window.self) {
 | 
			
		||||
		 browser_level = window.self;
 | 
			
		||||
	 }
 | 
			
		||||
	 else browser_level = window.top;
 | 
			
		||||
	 //alert(window.self == browser_level);
 | 
			
		||||
     var ckedit_path;    
 | 
			
		||||
     if(browser_level.JSINFO['ckg_canonical']) {     
 | 
			
		||||
          ckedit_path =  browser_level.DOKU_BASE + 'lib/plugins/ckgedit/ckeditor/';
 | 
			
		||||
          config.doku_url = browser_level.DOKU_BASE;
 | 
			
		||||
          config.ckedit_path = browser_level.DOKU_BASE + 'lib/plugins/ckgedit/ckeditor/';
 | 
			
		||||
     }
 | 
			
		||||
     else {
 | 
			
		||||
          ckedit_path =  window.location.protocol +'//' + browser_level.dokuBase + 'lib/plugins/ckgedit/ckeditor/';
 | 
			
		||||
      config.doku_url = window.location.protocol+ '//' + browser_level.dokuBase;
 | 
			
		||||
      config.ckedit_path = window.location.protocol +'//' + browser_level.dokuBase + 'lib/plugins/ckgedit/ckeditor/';
 | 
			
		||||
     }
 | 
			
		||||
      config.jquery = browser_level.jQuery;
 | 
			
		||||
    //  config.format_code = { element : 'code', attributes : { 'class' : 'dwcode' } };
 | 
			
		||||
	// Define changes to default configuration here.
 | 
			
		||||
	// For the complete reference:
 | 
			
		||||
	// http://docs.ckeditor.com/#!/api/CKEDITOR.config
 | 
			
		||||
     config.scayt__disable = false;
 | 
			
		||||
      browser_level.ckgedit_language_chk(config);  //resets language if $conf['other_lang'] != 'default' and resets auto scayt to true of false
 | 
			
		||||
     // config.scayt_autoStartup = true;      
 | 
			
		||||
      config.format_tags = 'p;h1;h2;h3;h4;h5'; 
 | 
			
		||||
      config.extraSpecialChars  = ['↔'];
 | 
			
		||||
      config.extraPlugins = 'signature,footnote,shortcuts,fontAssist,tags,timestamp,headerbuttons,geshi,wrap,truetype'; //,pastebase64',devtools';
 | 
			
		||||
      config.contentsLangDirection = '';
 | 
			
		||||
      if( browser_level.ckgedit_isRTL()) config.contentsLangDirection = 'rtl';
 | 
			
		||||
      config.pasteFromWordRemoveFontStyles = false;   // preserve font style when "paste from word"
 | 
			
		||||
      config.pasteFromWordRemoveStyles = false;       // preserve style (color) when "paste from word"
 | 
			
		||||
      config.allowedContent=true;                     // preserve highlight when "paste from word"     
 | 
			
		||||
      config.removeButtons = browser_level.remove_styling(); 
 | 
			
		||||
     var font_assist = 'FontAssist';
 | 
			
		||||
     //config.removeButtons = 'TextColor,BGColor, FontAssist,Font,FontSize';
 | 
			
		||||
     if(config.removeButtons.match(/FontAssist/)) font_assist = "";
 | 
			
		||||
     config.addPaste = function () {
 | 
			
		||||
     config.extraPlugins +=',pastebase64';       
 | 
			
		||||
     }
 | 
			
		||||
 | 
			
		||||
    config.skin =  browser_level.getCKEditorGUI() ? browser_level.getCKEditorGUI() : 'moono';
 | 
			
		||||
    //alert(browser_level.getCKEditorGUI());
 | 
			
		||||
     config.wrapSyntaxDiv = browser_level.JSINFO['wrapDiv'] ;
 | 
			
		||||
     config.wrapSyntaxSpan = browser_level.JSINFO['wrapSpan'] ;
 | 
			
		||||
     config.ToolBarItemsAlt = {  
 | 
			
		||||
     'Signature':'Signature' ,'Footnotes':'Footnotes','Scayt':'Scayt'
 | 
			
		||||
     };
 | 
			
		||||
 | 
			
		||||
    if(browser_level.JSINFO['wrapDiv']) {
 | 
			
		||||
       config.wrapSyntaxDiv = browser_level.JSINFO['wrapDiv'];
 | 
			
		||||
    }
 | 
			
		||||
    else config.wrapSyntaxDiv = "";
 | 
			
		||||
    if(browser_level.JSINFO['wrapSpan']) {
 | 
			
		||||
       config.wrapSyntaxSpan = browser_level.JSINFO['wrapSpan'];
 | 
			
		||||
    }
 | 
			
		||||
    else config.wrapSyntaxSpan = "";
 | 
			
		||||
 | 
			
		||||
    if(config.scayt__disable) {       
 | 
			
		||||
               config.ToolBarItemsAlt['Scayt'] = "";
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
     var xtra = browser_level.extra_plugins(config);
 | 
			
		||||
     
 | 
			
		||||
     if(!xtra) {
 | 
			
		||||
         xtra = 'Msword,Geshi';
 | 
			
		||||
     }  
 | 
			
		||||
     else {
 | 
			
		||||
         var xtras = xtra.split(',');
 | 
			
		||||
         if(xtras.indexOf('Msword') == -1) {
 | 
			
		||||
             xtra += ',Msword';
 | 
			
		||||
         }     
 | 
			
		||||
          if(xtras.indexOf('Geshi') == -1) {
 | 
			
		||||
             xtra += ',Geshi';
 | 
			
		||||
         }    
 | 
			
		||||
     }
 | 
			
		||||
     
 | 
			
		||||
     if (browser_level.JSINFO['has_tags']) {
 | 
			
		||||
         xtra+=',Tags';
 | 
			
		||||
     }
 | 
			
		||||
     if(browser_level.JSINFO['has_wrap']) {
 | 
			
		||||
         xtra+=',Wrap';
 | 
			
		||||
     }
 | 
			
		||||
     config.ToolBarItemsExtra = "";
 | 
			
		||||
  
 | 
			
		||||
   
 | 
			
		||||
 | 
			
		||||
   if(xtra) {
 | 
			
		||||
         config.ToolBarItemsExtra = xtra.split(','); 
 | 
			
		||||
         if(xtra) {
 | 
			
		||||
           config.extraPlugins +=  ',' + xtra.toLowerCase();         
 | 
			
		||||
         }                
 | 
			
		||||
     }
 | 
			
		||||
  
 | 
			
		||||
  config.toolbar_Dokuwiki =
 | 
			
		||||
	[
 | 
			
		||||
	{name: 'header_buttons', items: ['same_header', 'lower_header', 'higher_header', 'none_header']},
 | 
			
		||||
    	{ name: 'basicstyles', items : [ 'Bold','Italic','Underline', 'TrueType', 'Strike','Subscript','Superscript','-','RemoveFormat' ] },
 | 
			
		||||
		{ name: 'editing', items : [ 'Find','Replace','-','SelectAll','-'] },    
 | 
			
		||||
		{ name: 'insert', items : [ 'Image','Table','HorizontalRule','Smiley','SpecialChar',  config.ToolBarItemsAlt['Signature'] ,config.ToolBarItemsAlt['Footnotes'] ]},  
 | 
			
		||||
   		{ name: 'links', items : [ 'Link','Unlink' ] },
 | 
			
		||||
		{ name: 'styles', items : [ 'Format', 'Styles' ,'Font','FontSize'] },
 | 
			
		||||
    	{ name: 'colors', items : [ 'TextColor','BGColor', font_assist ] },		
 | 
			
		||||
		{ name: 'paragraph', items : [ 'NumberedList','BulletedList','Indent','Outdent','Blockquote'] },
 | 
			
		||||
   		{ name: 'clipboard', items : [ 'Cut','Copy','Paste','PasteText','PasteFromWord','-','Undo','Redo' ] },
 | 
			
		||||
    	{ name: 'basicstyles', items: [ 'basicstyles', 'cleanup',config.ToolBarItemsAlt['Scayt'] ] },
 | 
			
		||||
		{ name: 'tools', items : ['Source', 'Maximize','-','About'] },
 | 
			
		||||
         {name: 'extras', items: config.ToolBarItemsExtra }
 | 
			
		||||
       
 | 
			
		||||
	];    
 | 
			
		||||
	
 | 
			
		||||
     config.toolbar_DokuwikiNoGuest =
 | 
			
		||||
	[
 | 
			
		||||
		{ name: 'styles', items : [ 'Source'] },
 | 
			
		||||
		{ name: 'tools', items : [ 'About' ] }
 | 
			
		||||
	];
 | 
			
		||||
   
 | 
			
		||||
   
 | 
			
		||||
    config.toolbar_DokuwikiGuest =
 | 
			
		||||
	[
 | 
			
		||||
    	{ name: 'basicstyles', items : [ 'Bold','Italic','Underline','Strike','Subscript','Superscript','-','RemoveFormat' ] },
 | 
			
		||||
		{ name: 'editing', items : [ 'Find','Replace','-','SelectAll'] },        
 | 
			
		||||
		{ name: 'insert', items : [ 'Table','HorizontalRule','Smiley','SpecialChar', 'Footnotes'] },              		
 | 
			
		||||
		{ name: 'styles', items : [ 'Format', 'Styles' ] },
 | 
			
		||||
		{ name: 'paragraph', items : [ 'NumberedList','BulletedList','Indent','Outdent'] },
 | 
			
		||||
   		{ name: 'clipboard', items : [ 'Cut','Copy','Paste','PasteText','-','Undo','Redo' ] },
 | 
			
		||||
    	{ name: 'basicstyles', items: [ 'basicstyles', 'cleanup' ] },
 | 
			
		||||
		{ name: 'tools', items : [ 'Maximize','-','About' ] },
 | 
			
		||||
	];
 | 
			
		||||
	
 | 
			
		||||
config.wrap_lang;   
 | 
			
		||||
var params =  'call=wrap_lang&lang=' + CKEDITOR.lang.detect( 'en' ) ;
 | 
			
		||||
var get_wrap_lang = function() {
 | 
			
		||||
    config.jquery.post(           
 | 
			
		||||
           config.doku_url + 'lib/exe/ajax.php',
 | 
			
		||||
            params ,
 | 
			
		||||
            function (data,status) { 
 | 
			
		||||
                if(status == "success") {
 | 
			
		||||
                 config.wrap_lang = JSON.parse(data);                 
 | 
			
		||||
                }
 | 
			
		||||
                else alert('lang failed');               
 | 
			
		||||
            },
 | 
			
		||||
            'html'
 | 
			
		||||
        );
 | 
			
		||||
}
 | 
			
		||||
get_wrap_lang();
 | 
			
		||||
config.dokuSmileyPath = config.doku_url + 'lib/images/smileys/';    
 | 
			
		||||
config.dokuSmileyImages	=
 | 
			
		||||
                          [['8-)','icon_cool.gif'],
 | 
			
		||||
                      	  ['8-O','icon_eek.gif'],                      	
 | 
			
		||||
                      	  [':-(','icon_sad.gif'],
 | 
			
		||||
                      	  [':-)','icon_smile.gif'],
 | 
			
		||||
                      	  ['=)','icon_smile2.gif'],
 | 
			
		||||
                      	  [':-/','icon_doubt.gif'],                      	  
 | 
			
		||||
                      	  [':-?','icon_confused.gif'],
 | 
			
		||||
                      	  [':-D','icon_biggrin.gif'],
 | 
			
		||||
                      	  [':-P','icon_razz.gif'],
 | 
			
		||||
                      	
 | 
			
		||||
                      	  [':-O','icon_surprised.gif'],
 | 
			
		||||
                      	  [':-X','icon_silenced.gif'],
 | 
			
		||||
                      	 
 | 
			
		||||
                      	  [':-|','icon_neutral.gif'],
 | 
			
		||||
                      	  [';-)','icon_wink.gif'],
 | 
			
		||||
                      	  ['^_^','icon_fun.gif'],
 | 
			
		||||
                      	  [':?:','icon_question.gif'],
 | 
			
		||||
                      	  [':!:','icon_exclaim.gif'],
 | 
			
		||||
                      	  ['LOL','icon_lol.gif']];
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                          
 | 
			
		||||
 | 
			
		||||
function do_smileys() {
 | 
			
		||||
    config.jquery.post(
 | 
			
		||||
            ckedit_path + "dwsmileys.php",                
 | 
			
		||||
            function(data,status) {    
 | 
			
		||||
                if(status == "success") {
 | 
			
		||||
                   config.dokuSmileyConfImages = new Array();
 | 
			
		||||
                   smileys = data.replace(/#.*?\n/g,"");
 | 
			
		||||
                   smileys = smileys.replace(/^[\s\n]+$/mg,"");
 | 
			
		||||
                   smileys=smileys.split(/\n/);
 | 
			
		||||
                   if(!smileys[0]) smileys.shift();
 | 
			
		||||
                   if(!smileys[smileys.length-1]) smileys.pop();   
 | 
			
		||||
                   for(var i=0; i < smileys.length; i++) {            
 | 
			
		||||
                        var a = smileys[i].split(/\s+/);
 | 
			
		||||
                        if(a[0].match(/DELETEME/) || a[0].match(/FIXME/)) { 
 | 
			
		||||
                           config.dokuFixmeSmiley.push( a);
 | 
			
		||||
                           continue;
 | 
			
		||||
                        }
 | 
			
		||||
                        else if(a[0].match(/^([A-Z])+$/) && (!a[0].match(/^LOL$/))) {
 | 
			
		||||
                             config.dokuLargeSmiley.push(a);       
 | 
			
		||||
                             config.dokuSmileyConfImages[i]  =" ";                          
 | 
			
		||||
                             continue;                            
 | 
			
		||||
                        }
 | 
			
		||||
                        else config.dokuSmileyConfImages[i] = a;
 | 
			
		||||
                  }      
 | 
			
		||||
                }
 | 
			
		||||
             },
 | 
			
		||||
            'html'
 | 
			
		||||
        );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
config.removePlugins = 'liststyle';
 | 
			
		||||
config.dokuFixmeSmiley = new Array();
 | 
			
		||||
config.dokuLargeSmiley = new Array();
 | 
			
		||||
config.dokuSmileyConfImages;
 | 
			
		||||
try {
 | 
			
		||||
   do_smileys();
 | 
			
		||||
}catch(ex){
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
config.ckgProtocols = "";
 | 
			
		||||
var get_dw_protocols = function() {
 | 
			
		||||
    config.jquery.post(
 | 
			
		||||
            ckedit_path + "schemes.php",
 | 
			
		||||
            function (data,status) { 
 | 
			
		||||
                if(status == "success") {            
 | 
			
		||||
                    config.ckgProtocols=data;
 | 
			
		||||
                } else config.ckgProtocols = 'no data';                            
 | 
			
		||||
            },
 | 
			
		||||
            'html'
 | 
			
		||||
        );
 | 
			
		||||
}
 | 
			
		||||
get_dw_protocols();
 | 
			
		||||
config.ckgEditorVer;
 | 
			
		||||
var get_ckgeditor_version = function() {
 | 
			
		||||
    config.jquery.post(
 | 
			
		||||
            ckedit_path + "get_version.php",
 | 
			
		||||
            function (data,status) { 
 | 
			
		||||
                if(status == "success") {            
 | 
			
		||||
                    config.ckgEditorVer=data;
 | 
			
		||||
                }
 | 
			
		||||
                else config.ckgEditorVer = "Dokuwiki plugin: ckgedit";               
 | 
			
		||||
            },
 | 
			
		||||
            'html'
 | 
			
		||||
        );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var getIwikiData = function() {
 | 
			
		||||
     config.jquery.ajax({
 | 
			
		||||
             method: "POST",
 | 
			
		||||
             url: config.doku_url + 'lib/exe/ajax.php',
 | 
			
		||||
             data: { call: 'iwiki_list'},                           
 | 
			
		||||
            async: true,
 | 
			
		||||
            dataType: "json",
 | 
			
		||||
              })
 | 
			
		||||
            .done(function(data)
 | 
			
		||||
              {
 | 
			
		||||
                  retv = data;
 | 
			
		||||
                  config.ckgeditIwikiData  = retv;
 | 
			
		||||
              })
 | 
			
		||||
              .fail(function(jqXHR, textStatus, errorThrown )
 | 
			
		||||
              {
 | 
			
		||||
                alert(textStatus);
 | 
			
		||||
                alert(errorThrown);
 | 
			
		||||
              });    
 | 
			
		||||
};              
 | 
			
		||||
getIwikiData();
 | 
			
		||||
              
 | 
			
		||||
  var SelectOptions = function() {
 | 
			
		||||
         var retv;                  
 | 
			
		||||
         config.jquery.ajax(
 | 
			
		||||
          config.doku_url + 'lib/exe/ajax.php',
 | 
			
		||||
          {
 | 
			
		||||
            data:
 | 
			
		||||
              {
 | 
			
		||||
                call: 'geshi_sel'
 | 
			
		||||
              },
 | 
			
		||||
            type: "GET",        
 | 
			
		||||
            dataType: "html",
 | 
			
		||||
            success: function(data, textStatus, jqXHR)
 | 
			
		||||
              {
 | 
			
		||||
                  config.geshi_opts = data;                  
 | 
			
		||||
              },
 | 
			
		||||
            error: function(jqXHR, textStatus, errorThrown )
 | 
			
		||||
              {
 | 
			
		||||
                alert(textStatus);
 | 
			
		||||
                alert(errorThrown);
 | 
			
		||||
              }
 | 
			
		||||
          }
 | 
			
		||||
        );
 | 
			
		||||
      //  return retv;
 | 
			
		||||
    };
 | 
			
		||||
    SelectOptions();
 | 
			
		||||
config.filebrowserWindowWidth='60%';
 | 
			
		||||
config.filebrowserWindowHeight = '60%';
 | 
			
		||||
//config.filebrowserWindowFeatures = 'location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes,left=20';
 | 
			
		||||
 | 
			
		||||
get_ckgeditor_version(); 
 | 
			
		||||
 | 
			
		||||
CKEDITOR.lang['default'] = {};
 | 
			
		||||
CKEDITOR.lang['default']['fbrowser'] = {
 | 
			
		||||
FileBrowserError_101:	'Folder already exists.', 
 | 
			
		||||
FileBrowserError_102:	'Invalid folder name', 
 | 
			
		||||
FileBrowserError_103:   'You have no permissions to create the folder.',
 | 
			
		||||
FileBrowserError_110:   'Unknown error creating folder',
 | 
			
		||||
FileBrowserError_201:   'A file with the same name is already available. The uploaded file has been renamed to: ',
 | 
			
		||||
FileBrowserError_202:   'Invalid file',
 | 
			
		||||
FileBrowserError_203:   'You do not have permission to upload files to this folder. If you think this is incorrect please notify your administrator.',
 | 
			
		||||
FileBrowserError_204:   'Unable to delete the selected file', 
 | 
			
		||||
FileBrowserError_205:  'Unable to rename the selected file; check your directory/write permisssions', 
 | 
			
		||||
FileBrowserError_206: ' already exists; you must either delete or rename it. ',
 | 
			
		||||
FileBrowserError_default: 'Error on your request. Error number: ',
 | 
			
		||||
FileBrowserError_Ajax: 'Your browser does not support AJAX.',
 | 
			
		||||
FileBrowserError_XML:  'The server didn\'t reply with a proper XML data. Please check your configuration.' ,
 | 
			
		||||
FileBrowserError_Folder_Submit: 'Please type the folder name.',
 | 
			
		||||
FileBrowserError_File_Submit:  'Please select a file from your computer',
 | 
			
		||||
FileBrowserError_Upload: 'Error on upload. Error number: ',
 | 
			
		||||
FileBrowserError_Connector: 'The connector is disabled. Check editor/filemanager/connectors/php/config.php', 
 | 
			
		||||
FileBrowserError_Command: 'Unsupported command: ',
 | 
			
		||||
FileBrowserError_Type:  'Invalid type specified: ',
 | 
			
		||||
FolderMoveWarning:  'You can only move files to a folder one level below the current directory',	
 | 
			
		||||
FileBrowserError_301: "The uploaded file exceeds the upload_max_filesize directive in php.ini.",
 | 
			
		||||
FileBrowserError_302: "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.",
 | 
			
		||||
FileBrowserError_303: "The uploaded file was only partially uploaded.",           
 | 
			
		||||
FileBrowserError_304: "No file was uploaded.",
 | 
			
		||||
FileBrowserError_306:  "Missing a temporary folder.",        
 | 
			
		||||
FileBrowserError_307:  "Failed to write file to disk.",
 | 
			
		||||
FileBrowserError_308: "PHP does not provide a way to ascertain which extension caused the file upload to stop; examining the list of loaded extensions with phpinfo() may help.",
 | 
			
		||||
DlgFileBrowserUpMsg: "Upload a new file in this folder",
 | 
			
		||||
DlgFileBrowserRead  : "read-only",
 | 
			
		||||
DlgFileBrowserWrite : "uploadable",
 | 
			
		||||
DlgFileBrowserNewFolder: "Create Folder",
 | 
			
		||||
DlgFileBrowserResourceType: "Resource Type",
 | 
			
		||||
DlgLnkUpload		: "Upload",
 | 
			
		||||
DlgFileBrowserMove: "Move",
 | 
			
		||||
InternalLink: "internal link",
 | 
			
		||||
InternalMedia: "internal media",
 | 
			
		||||
MediaFileLink: "link to media file",
 | 
			
		||||
SMBLabel: "Samba Share",
 | 
			
		||||
GetHeadingsLabel: 'Get Headings'	,
 | 
			
		||||
QStringLabel: 'Query String (For example: value_1=1&value_2=2) ',	
 | 
			
		||||
ResetQS: 'Reset Query String',
 | 
			
		||||
NotSetOption: 'Not Set',
 | 
			
		||||
AdvancedInfo: "To create anchors from Dokuwiki headers, click on the Get Headings button, select the header, click OK. You can go back, select a new page and get new headers.",
 | 
			
		||||
AdvancedTabPrompt: 'Use the advanced tab to create page anchors and query strings',
 | 
			
		||||
SMBExample: "Enter your share as: \\\\Server\\directory\\file", 
 | 
			
		||||
 InterWikiLink: "Interwiki Link",
 | 
			
		||||
DlgFileBrowserWaitingMsg: 'Loading files, please wait.',
 | 
			
		||||
};
 | 
			
		||||
CKEDITOR.lang['default']['footnote'] = {
 | 
			
		||||
FootNoteInfo: '<div style="padding: 18px;font-size:125%;line-height:125%;">'+
 | 
			
		||||
           '<ul style="list-style-type:disc;"><li>To create a footnote enter the footnote text into the editing box and click OK</li>'+
 | 
			
		||||
           '<li>To edit a footnote enter the footnote id into the id box and click the Load button. <br /> The footnote will '+
 | 
			
		||||
           'appear in the editing box, where you can then edit it.<br /> When you are finished editing, click OK to save.</li>'+        
 | 
			
		||||
           '<li> A footnote id has this form: <b>fckgL_<n></b>, where n is the number of the note.</li></ul></div>',
 | 
			
		||||
ToolTip: 'Insert a footnote',  
 | 
			
		||||
Settings: 'Settings', 
 | 
			
		||||
Header: 'This dialog window lets you create and edit footnotes.',
 | 
			
		||||
Label_1 :'Footnote Text (required)',
 | 
			
		||||
Label_2: 'Footnote Id: ',
 | 
			
		||||
LoadButtonLabel : 'Load Note In Editor',
 | 
			
		||||
Title : 'Footnote Dialog',
 | 
			
		||||
Validate: 'The footnote text field cannot be empty.',
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
CKEDITOR.lang['default']['fontassist'] = {
 | 
			
		||||
Title: 'Font Plugin Editor',
 | 
			
		||||
ToolTip: 'Check and Revise Font Styling',
 | 
			
		||||
MainHeader: 'View and optionally alter text styled with the font plugin .',
 | 
			
		||||
SelectColor : ' Select Color',
 | 
			
		||||
SelectedTextColor : 'Selected Text Color',	
 | 
			
		||||
SelectedBGColor : 'Selected Background Color',	
 | 
			
		||||
BGColors : 'Background Colors',	
 | 
			
		||||
InfoText :  '<div style="max-width:400px; font-size: 12pt; white-space: pre-wrap;border:1px solid #cccccc; margin:auto; height: 350px; overflow:auto;">' +                         
 | 
			
		||||
 'This tool works with the font  plugin and is used to update the font plugin\'s syntax and/or view its enclosed text. ' +
 | 
			
		||||
'Clicking anywhere on the plugin syntax or its text will enable you to check the appearance of the font, its colors, and its size.'+
 | 
			
		||||
'<br /><br />You can also update the plugin syntax in place.  To do this you must select both the font syntax itself and the enclosed text:' +
 | 
			
		||||
'<p style="text-indent: 50px; font-size: 12pt;">  <font. . . >text</font></p>' +
 | 
			
		||||
'Then whatever changes you  make with this tool can be inserted into the editor window, by clicking OK, and will replace the current font syntax. ' +
 | 
			
		||||
'<br /><br />The font syntax will appear in the textbox below the display window and is updated with each change. '+ 
 | 
			
		||||
'Clicking on the text will select the text for copying.</div>',
 | 
			
		||||
Main: 'Main',
 | 
			
		||||
Text : 'Text',
 | 
			
		||||
IfChecked : ' If checked, uncheck to activate OK button',
 | 
			
		||||
Fonts : 'Fonts',
 | 
			
		||||
FontSizes :  'Font Sizes (px)',
 | 
			
		||||
ResetFont : 'Reset font',
 | 
			
		||||
ResetAll : 'Reset all',
 | 
			
		||||
TextColors : 'Text Colors',
 | 
			
		||||
Accept :'Accept',	
 | 
			
		||||
Reset : 'Reset',		
 | 
			
		||||
none : 'none',
 | 
			
		||||
};
 | 
			
		||||
CKEDITOR.lang['default']['signature'] = {
 | 
			
		||||
ToolTip: 'Insert signature'
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
config.allowedContent = true;
 | 
			
		||||
 | 
			
		||||
};  //end config.js
 | 
			
		||||
							
								
								
									
										504
									
								
								lib/plugins/ckgedit/ckeditor/contents-default.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,504 @@
 | 
			
		||||
/*
 | 
			
		||||
Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
 | 
			
		||||
For licensing, see LICENSE.html or http://ckeditor.com/license
 | 
			
		||||
*/
 | 
			
		||||
/*
 | 
			
		||||
This CSS applies to the old 'default' Dokuwiki template
 | 
			
		||||
*/
 | 
			
		||||
body
 | 
			
		||||
{
 | 
			
		||||
	/* Font */
 | 
			
		||||
	font-family: Arial, Verdana, sans-serif;
 | 
			
		||||
	font-size: 12px;
 | 
			
		||||
 | 
			
		||||
	/* Text color */
 | 
			
		||||
	color: #222;
 | 
			
		||||
 | 
			
		||||
	/* Remove the background color to make it transparent */
 | 
			
		||||
	background-color: #fff;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ol,ul,dl
 | 
			
		||||
{
 | 
			
		||||
	/* IE7: reset rtl list margin. (#7334) */
 | 
			
		||||
	*margin-right:0px;
 | 
			
		||||
	/* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
 | 
			
		||||
    padding:0 40px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
body, td, th {
 | 
			
		||||
    font: 80%  "Lucida Grande", Verdana, Lucida, Helvetica, Arial, sans-serif;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
body
 | 
			
		||||
{
 | 
			
		||||
	background-color: #ffffff;
 | 
			
		||||
	padding: 5px 5px 5px 5px;
 | 
			
		||||
	margin: 0px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
table {  min-width: 50%; }
 | 
			
		||||
 | 
			
		||||
th, .tblheader {
 | 
			
		||||
  padding: 3px;
 | 
			
		||||
  border: 1px solid #8cacbb !important;
 | 
			
		||||
  background-color: #dee7ec;
 | 
			
		||||
  font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
td {
 | 
			
		||||
  padding: 3px;
 | 
			
		||||
  border: 1px solid #8cacbb !important;
 | 
			
		||||
}
 | 
			
		||||
td
 | 
			
		||||
{
 | 
			
		||||
/*	font-family: Arial, Verdana, sans-serif;
 | 
			
		||||
	font-size: 10pt;
 | 
			
		||||
	*/
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a[href]
 | 
			
		||||
{
 | 
			
		||||
/*	color: -moz-hyperlinktext !important;	*/	/* For Firefox... mark as important, otherwise it becomes black */
 | 
			
		||||
/*	text-decoration: -moz-anchor-decoration; */	/* For Firefox 3, otherwise no underline will be used */
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
	Just uncomment the following block if you want to avoid spaces between
 | 
			
		||||
	paragraphs. Remember to apply the same style in your output front end page.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
p, ul, li
 | 
			
		||||
{
 | 
			
		||||
	margin-top: 0px;
 | 
			
		||||
	margin-bottom: 0px;
 | 
			
		||||
}
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
    The following are some sample styles used in the "Styles" toolbar command.
 | 
			
		||||
    You should instead remove them, and include the styles used by the site
 | 
			
		||||
    you are using the editor in.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
.Bold
 | 
			
		||||
{
 | 
			
		||||
	font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.Title
 | 
			
		||||
{
 | 
			
		||||
	font-weight: bold;
 | 
			
		||||
	font-size: 18px;
 | 
			
		||||
	color: #cc3300;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
pre {
 | 
			
		||||
  margin: 0 0 1.0em 0;
 | 
			
		||||
  font-size: 120%;
 | 
			
		||||
  padding: 0.5em;
 | 
			
		||||
  border: 1px dashed black;
 | 
			
		||||
  color: black;
 | 
			
		||||
  overflow: auto;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* code blocks by code tag */
 | 
			
		||||
pre.code {
 | 
			
		||||
  background-color: #f7f9fa;
 | 
			
		||||
  line-height:100%;
 | 
			
		||||
}
 | 
			
		||||
pre.file { 
 | 
			
		||||
  background-color:  #dee7ec; 
 | 
			
		||||
  line-height:100%;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
h1,h2,h3,h4,h5 {
 | 
			
		||||
    color: black;
 | 
			
		||||
    background-color: inherit;
 | 
			
		||||
    font-size: 100%;
 | 
			
		||||
    font-weight: normal;
 | 
			
		||||
    margin: 0 0 1em 0;
 | 
			
		||||
    padding: 0.5em 0 0 0;
 | 
			
		||||
    border-bottom: 1px solid #8cacbb;
 | 
			
		||||
    clear: left;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
h1,h2,h3,h4,h5
 | 
			
		||||
 {
 | 
			
		||||
  color: black !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
h1 {font-size: 160%; margin-left: 0px; font-weight: bold;}
 | 
			
		||||
h2 {font-size: 150%; margin-left: 20px;}
 | 
			
		||||
h3 {font-size: 140%; margin-left: 40px; border-bottom: none; font-weight: bold;}
 | 
			
		||||
h4 {font-size: 120%; margin-left: 60px; border-bottom: none; font-weight: bold; }
 | 
			
		||||
h5 {font-size: 100%;  margin-left: 80px; border-bottom: none; font-weight: bold;}
 | 
			
		||||
 | 
			
		||||
div.level1 {margin-left: 3px;}
 | 
			
		||||
div.level2 {margin-left: 23px;}
 | 
			
		||||
div.level3 {margin-left: 43px;}
 | 
			
		||||
div.level4 {margin-left: 63px;}
 | 
			
		||||
div.dokuwiki div.level5 {margin-left: 83px;}
 | 
			
		||||
 | 
			
		||||
img.media {
 | 
			
		||||
  border: 0;
 | 
			
		||||
  margin: 3px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
img.medialeft {
 | 
			
		||||
  border: 0;
 | 
			
		||||
  margin: 0 1.5em 0 0;
 | 
			
		||||
  float: left;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
img.baseline {
 | 
			
		||||
  vertical-align:bottom;
 | 
			
		||||
  text-align:left;
 | 
			
		||||
  display:block;
 | 
			
		||||
  border: 0;
 | 
			
		||||
  margin: 3px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
img.mediaright {
 | 
			
		||||
  border: 0;
 | 
			
		||||
  float: right;
 | 
			
		||||
  margin: 0 0 0 1.5em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
img.mediacenter, .mediacenter {
 | 
			
		||||
  text-align:center;
 | 
			
		||||
  display:block;
 | 
			
		||||
  border: 0 ;
 | 
			
		||||
  border-top: 3px solid none;
 | 
			
		||||
  margin: 0 auto;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.leftalign {text-align: left;}
 | 
			
		||||
.centeralign {text-align: center;}
 | 
			
		||||
.rightalign {text-align: right;}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
div.footnotes {
 | 
			
		||||
  clear: both;
 | 
			
		||||
  border-top: 1px solid black;
 | 
			
		||||
  padding-left: 1em;
 | 
			
		||||
  margin-top: 1em;
 | 
			
		||||
}
 | 
			
		||||
        
 | 
			
		||||
div.fn {
 | 
			
		||||
  font-size: 90%;
 | 
			
		||||
}
 | 
			
		||||
  
 | 
			
		||||
a.fn_bot {
 | 
			
		||||
 font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
.dwcode {
 | 
			
		||||
    font-family: sans-serif;
 | 
			
		||||
 }
 | 
			
		||||
/* unordered lists */
 | 
			
		||||
ul {
 | 
			
		||||
  line-height: 1.5em;
 | 
			
		||||
  list-style-type: square;
 | 
			
		||||
  list-style-image: none;
 | 
			
		||||
  margin: 0 0 1em 3.5em;
 | 
			
		||||
  color: black;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* ordered lists */
 | 
			
		||||
ol {
 | 
			
		||||
  line-height: 1.5em;
 | 
			
		||||
  list-style-image: none;
 | 
			
		||||
  margin: 0 0 1em 3.5em;
 | 
			
		||||
  color: black;
 | 
			
		||||
 
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* no gap in between nested lists */
 | 
			
		||||
li ul {
 | 
			
		||||
  margin-bottom: 0;
 | 
			
		||||
}
 | 
			
		||||
li ol {
 | 
			
		||||
  margin-bottom: 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ol {list-style-type: decimal}
 | 
			
		||||
ol ol {list-style-type: upper-roman}
 | 
			
		||||
ol ol ol {list-style-type: lower-alpha}
 | 
			
		||||
ol ol ol ol {list-style-type: lower-greek}
 | 
			
		||||
 | 
			
		||||
li { font-weight: normal; }
 | 
			
		||||
 | 
			
		||||
a.windows {
 | 
			
		||||
  background: transparent url(images/windows.gif) 0px 1px no-repeat;
 | 
			
		||||
  padding: 1px 0px 1px 16px;
 | 
			
		||||
  color: #436976 !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.urlextern {
 | 
			
		||||
 background: transparent url(images/link_icon.gif) 0px 1px no-repeat;
 | 
			
		||||
 padding: 1px 0px 1px 16px;
 | 
			
		||||
 color: #436976 !important;
 | 
			
		||||
 text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.wikilink2 {
 | 
			
		||||
  color: red !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
a.wikilink1 {
 | 
			
		||||
  color: green !important;
 | 
			
		||||
  text-decoration: none !important;  
 | 
			
		||||
}
 | 
			
		||||
                
 | 
			
		||||
span.np_break {
 | 
			
		||||
  line-height: 50%;
 | 
			
		||||
  border:0px;
 | 
			
		||||
  padding:0px;
 | 
			
		||||
  margin:0px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* filenames for file and code blocks */
 | 
			
		||||
 dl.file,
 | 
			
		||||
 dl.code {
 | 
			
		||||
    margin-top: 2em;
 | 
			
		||||
    margin-bottom: 2.5em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 dl.file dt,
 | 
			
		||||
 dl.code dt {
 | 
			
		||||
    border: 1px dashed #8cacbb;
 | 
			
		||||
    display: inline;
 | 
			
		||||
    padding: 0.1em 1em;
 | 
			
		||||
    margin-left: 5em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 dl.code dt a,
 | 
			
		||||
 dl.file dt a {
 | 
			
		||||
    color:#000;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 dl.code dt {
 | 
			
		||||
    background-color: __background_other__;
 | 
			
		||||
    border-bottom: 1px solid __background_other__;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 dl.file dt {
 | 
			
		||||
    background-color: #dee7ec;
 | 
			
		||||
    border-bottom: 1px solid #dee7ec;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
dd pre.file {
 | 
			
		||||
    line-height: 125%;
 | 
			
		||||
}
 | 
			
		||||
/* syntax highlighting code */
 | 
			
		||||
.code .br0  { color: #66cc66; }
 | 
			
		||||
.code .co0  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .co1  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .co2  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .co3  { color: #808080; }
 | 
			
		||||
.code .coMULTI  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .es0  { color: #000099; font-weight: bold; }
 | 
			
		||||
.code .kw1  { color: #b1b100; }
 | 
			
		||||
.code .kw2  { color: #000000; font-weight: bold; }
 | 
			
		||||
.code .kw3  { color: #000066; }
 | 
			
		||||
.code .kw4  { color: #993333; }
 | 
			
		||||
.code .kw5  { color: #0000ff; }
 | 
			
		||||
.code .me1  { color: #006600; }
 | 
			
		||||
.code .me2  { color: #006600; }
 | 
			
		||||
.code .nu0  { color: #cc66cc; }
 | 
			
		||||
.code .re0  { color: #0000ff; }
 | 
			
		||||
.code .re1  { color: #0000ff; }
 | 
			
		||||
.code .re2  { color: #0000ff; }
 | 
			
		||||
.code .re3  { color: #ff3333; font-weight:bold; }
 | 
			
		||||
.code .re4  { color: #009999; }
 | 
			
		||||
.code .st0  { color: #ff0000; }
 | 
			
		||||
.code .sy0  { color: #66cc66; }
 | 
			
		||||
 | 
			
		||||
a.mediafile {
 | 
			
		||||
    background: url(images/fileicons/file.png) no-repeat scroll 0 1px transparent;
 | 
			
		||||
    padding-bottom: 1px;
 | 
			
		||||
    padding-left: 18px;
 | 
			
		||||
    color: #436976 !important;
 | 
			
		||||
    text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* email link */
 | 
			
		||||
a.mail {
 | 
			
		||||
  background: transparent url(images/mail_icon.gif) 0px 1px no-repeat;
 | 
			
		||||
  padding: 1px 0px 1px 16px;
 | 
			
		||||
  color: #436976 !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_gz {
 | 
			
		||||
    background-image: url(images/fileicons/gz.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_csv {
 | 
			
		||||
    background-image: url(images/fileicons/csv.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_gif {
 | 
			
		||||
    background-image: url(images/fileicons/gif.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_png {
 | 
			
		||||
    background-image: url(images/fileicons/png.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_txt {
 | 
			
		||||
    background-image: url(images/fileicons/txt.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_tar {
 | 
			
		||||
    background-image: url(images/fileicons/tar.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_jpg {
 | 
			
		||||
    background-image: url(images/fileicons/jpg.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_xml {
 | 
			
		||||
    background-image: url(images/fileicons/xml.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_c {
 | 
			
		||||
    background-image: url(images/fileicons/c.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_ppt {
 | 
			
		||||
    background-image: url(images/fileicons/ppt.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_conf {
 | 
			
		||||
    background-image: url(images/fileicons/conf.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_xls {
 | 
			
		||||
    background-image: url(images/fileicons/xls.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_doc {
 | 
			
		||||
    background-image: url(images/fileicons/doc.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_php {
 | 
			
		||||
    background-image: url(images/fileicons/php.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_cs {
 | 
			
		||||
    background-image: url(images/fileicons/cs.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_pdf {
 | 
			
		||||
    background-image: url(images/fileicons/pdf.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_odc {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_cpp {
 | 
			
		||||
    background-image: url(images/fileicons/cpp.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_sql {
 | 
			
		||||
    background-image: url(images/fileicons/sql.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_bz2 {
 | 
			
		||||
    background-image: url(images/fileicons/bz2.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_zip {
 | 
			
		||||
    background-image: url(images/fileicons/zip.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_deb {
 | 
			
		||||
    background-image: url(images/fileicons/deb.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_jpeg {
 | 
			
		||||
    background-image: url(images/fileicons/jpeg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_odg {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_py {
 | 
			
		||||
    background-image: url(images/fileicons/py.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_js {
 | 
			
		||||
    background-image: url(images/fileicons/js.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_java {
 | 
			
		||||
    background-image: url(images/fileicons/java.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_htm {
 | 
			
		||||
    background-image: url(images/fileicons/htm.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_odt {
 | 
			
		||||
    background-image: url(images/fileicons/odt.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_rtf {
 | 
			
		||||
    background-image: url(images/fileicons/rtf.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_odf {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_css {
 | 
			
		||||
    background-image: url(images/fileicons/css.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_docx {
 | 
			
		||||
    background-image: url(images/fileicons/docx.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_xlsx {
 | 
			
		||||
    background-image: url(images/fileicons/xlsx.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_odp {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_rar {
 | 
			
		||||
    background-image: url(images/fileicons/rar.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_tgz {
 | 
			
		||||
    background-image: url(images/fileicons/tgz.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_7z {
 | 
			
		||||
    background-image: url(images/fileicons/7z.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_html {
 | 
			
		||||
    background-image: url(images/fileicons/html.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_pl {
 | 
			
		||||
    background-image: url(images/fileicons/pl.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_rpm {
 | 
			
		||||
    background-image: url(images/fileicons/rpm.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_ps {
 | 
			
		||||
    background-image: url(images/fileicons/ps.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_swf {
 | 
			
		||||
    background-image: url(images/fileicons/swf.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_epub {
 | 
			
		||||
    background-image: url(images/fileicons/epub.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.interwiki {
 | 
			
		||||
    background: url(images/fileicons/wp.gif) no-repeat scroll 0 1px transparent;
 | 
			
		||||
    padding-bottom: 1px;
 | 
			
		||||
    padding-left: 18px;
 | 
			
		||||
    color: #436976 !important;
 | 
			
		||||
    text-decoration: none !important;
 | 
			
		||||
}    
 | 
			
		||||
/*
 | 
			
		||||
a.interwiki {
 | 
			
		||||
    background-image: url(images/fileicons/wp.gif);
 | 
			
		||||
}
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
span.multi_p_open
 | 
			
		||||
{
 | 
			
		||||
    display: block;
 | 
			
		||||
}
 | 
			
		||||
    
 | 
			
		||||
							
								
								
									
										1
									
								
								lib/plugins/ckgedit/ckeditor/contents.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										571
									
								
								lib/plugins/ckgedit/ckeditor/contents.css.unc
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,571 @@
 | 
			
		||||
@import "additional.css"; 
 | 
			
		||||
 | 
			
		||||
body
 | 
			
		||||
{
 | 
			
		||||
    font: normal 87.5%/1.4 Arial, sans-serif;
 | 
			
		||||
    /* default font size: 100% => 16px; 93.75% => 15px; 87.5% => 14px; 81.25% => 13px; 75% => 12px */
 | 
			
		||||
            -webkit-text-size-adjust: 100%;
 | 
			
		||||
 
 | 
			
		||||
	/* Text color */
 | 
			
		||||
	color: #222;
 | 
			
		||||
 | 
			
		||||
	/* Remove the background color to make it transparent */
 | 
			
		||||
	background-color: #fff;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ol,ul,dl
 | 
			
		||||
{	
 | 
			
		||||
	margin-right:0px;
 | 
			
		||||
	/* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
 | 
			
		||||
    padding:0 40px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
table {
 | 
			
		||||
    border-collapse: collapse;
 | 
			
		||||
    empty-cells: show;
 | 
			
		||||
    border-spacing: 0;
 | 
			
		||||
    border: 1px solid #ccc;
 | 
			
		||||
     min-width: 40%;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
th, .tblheader {
 | 
			
		||||
  padding: 3px;
 | 
			
		||||
  border: 1px solid #8cacbb !important;
 | 
			
		||||
  background-color: #dee7ec;
 | 
			
		||||
  font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
caption {
 | 
			
		||||
    caption-side: top;
 | 
			
		||||
    text-align: left;
 | 
			
		||||
}
 | 
			
		||||
[dir=rtl] caption {
 | 
			
		||||
    text-align: right;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
th,
 | 
			
		||||
td {
 | 
			
		||||
    padding: .3em .5em;
 | 
			
		||||
    margin: 0;
 | 
			
		||||
    vertical-align: top;
 | 
			
		||||
    border: 1px solid #ccc;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
th {
 | 
			
		||||
    font-weight: bold;
 | 
			
		||||
    background-color: #eee;
 | 
			
		||||
    text-align: left;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a[href]
 | 
			
		||||
{
 | 
			
		||||
/*	color: -moz-hyperlinktext !important;	*/	/* For Firefox... mark as important, otherwise it becomes black */
 | 
			
		||||
/*	text-decoration: -moz-anchor-decoration; */	/* For Firefox 3, otherwise no underline will be used */
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
	Just uncomment the following block if you want to avoid spaces between
 | 
			
		||||
	paragraphs. Remember to apply the same style in your output front end page.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
p, ul, li
 | 
			
		||||
{
 | 
			
		||||
	margin-top: 0px;
 | 
			
		||||
	margin-bottom: 0px;
 | 
			
		||||
}
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
    The following are some sample styles used in the "Styles" toolbar command.
 | 
			
		||||
    You should instead remove them, and include the styles used by the site
 | 
			
		||||
    you are using the editor in.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
.Bold
 | 
			
		||||
{
 | 
			
		||||
	font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.Title
 | 
			
		||||
{
 | 
			
		||||
	font-weight: bold;
 | 
			
		||||
	font-size: 18px;
 | 
			
		||||
	color: #cc3300;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pre,
 | 
			
		||||
tt,
 | 
			
		||||
code,
 | 
			
		||||
samp,
 | 
			
		||||
kbd {
 | 
			
		||||
 font-family: Consolas, "Andale Mono WT", "Andale Mono", "Bitstream Vera Sans Mono", "Nimbus Mono L", Monaco, "Courier New", monospace;
 | 
			
		||||
    /* same font stack should be used for ".dokuwiki table.diff td" in _diff.css */
 | 
			
		||||
    font-size: 1em;
 | 
			
		||||
    direction: ltr;
 | 
			
		||||
    text-align: left;
 | 
			
		||||
    background-color: #fbfaf9;
 | 
			
		||||
    color: #333;
 | 
			
		||||
    box-shadow: inset 0 0 .3em #ccc;
 | 
			
		||||
    border-radius: 2px;
 | 
			
		||||
}
 | 
			
		||||
/* fix if background-color hides underlining */
 | 
			
		||||
em.u code {
 | 
			
		||||
    text-decoration: underline;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*code new tmpl  start*/
 | 
			
		||||
pre {
 | 
			
		||||
    border: 1px solid #ccc;
 | 
			
		||||
    padding: .75em 1em;
 | 
			
		||||
  
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* for code in <file> */
 | 
			
		||||
 | 
			
		||||
/* filenames for downloadable file and code blocks */
 | 
			
		||||
dl.code,
 | 
			
		||||
dl.file {	
 | 
			
		||||
}
 | 
			
		||||
pre {
 | 
			
		||||
    overflow: auto;
 | 
			
		||||
    word-wrap: normal;
 | 
			
		||||
    border: 1px solid #ccc;
 | 
			
		||||
    border-radius: 2px;
 | 
			
		||||
    box-shadow: inset 0 0 .5em #ccc;
 | 
			
		||||
    padding: .7em 1em;
 | 
			
		||||
   background-color: #fbfaf9 !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 dl.code dt a,
 | 
			
		||||
 dl.file dt a {
 | 
			
		||||
    background-color: transparent;
 | 
			
		||||
    font-size: 0.875em;
 | 
			
		||||
    font-weight: normal;
 | 
			
		||||
    display: block;
 | 
			
		||||
    min-height: 16px;
 | 
			
		||||
    color: #2b73b7 !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
dl.code dt,
 | 
			
		||||
dl.file dt {
 | 
			
		||||
    background-color: #fbfaf9; 
 | 
			
		||||
    color: inherit;
 | 
			
		||||
    border: 1px solid #ccc;
 | 
			
		||||
    border-bottom-color: #fbfaf9;
 | 
			
		||||
    border-top-left-radius: .3em;
 | 
			
		||||
    border-top-right-radius: .3em;
 | 
			
		||||
    padding: .3em .6em .1em; 
 | 
			
		||||
    padding-bottom: 1px;
 | 
			
		||||
    margin-bottom: -1px;
 | 
			
		||||
    margin-left:0px;
 | 
			
		||||
    float: left;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
dl.code dd,
 | 
			
		||||
dl.file dd {
 | 
			
		||||
    margin: 0;
 | 
			
		||||
    clear: left;
 | 
			
		||||
     background-color: #fbfaf9; 
 | 
			
		||||
}
 | 
			
		||||
/* Code new tmpl ends */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
h1,
 | 
			
		||||
h2,
 | 
			
		||||
h3,
 | 
			
		||||
h4,
 | 
			
		||||
h5,
 | 
			
		||||
h6,
 | 
			
		||||
caption,
 | 
			
		||||
legend {
 | 
			
		||||
    font-family: Arial, sans-serif;
 | 
			
		||||
    font-weight: bold;
 | 
			
		||||
    background-color: inherit;
 | 
			
		||||
    padding: 0;
 | 
			
		||||
    line-height: 1.2;
 | 
			
		||||
    clear: left; /* ideally 'both', but problems with toc */
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
img.baseline {
 | 
			
		||||
  vertical-align:bottom;
 | 
			
		||||
  text-align:left;
 | 
			
		||||
  display:block;
 | 
			
		||||
  border: 0;
 | 
			
		||||
  margin: 3px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* image alignment */
 | 
			
		||||
.medialeft {
 | 
			
		||||
    float: left;
 | 
			
		||||
}
 | 
			
		||||
.mediaright {
 | 
			
		||||
    float: right;
 | 
			
		||||
}
 | 
			
		||||
.mediacenter {
 | 
			
		||||
    display: block;
 | 
			
		||||
    margin-left: auto;
 | 
			
		||||
    margin-right: auto;
 | 
			
		||||
}
 | 
			
		||||
img.media {
 | 
			
		||||
    margin: .2em 0;
 | 
			
		||||
}
 | 
			
		||||
img.medialeft {
 | 
			
		||||
    margin: .2em 1em .2em 0;
 | 
			
		||||
}
 | 
			
		||||
img.mediaright {
 | 
			
		||||
    margin: .2em 0 .2em 1em;
 | 
			
		||||
}
 | 
			
		||||
img.mediacenter {
 | 
			
		||||
    margin: .2em auto;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.leftalign {text-align: left;}
 | 
			
		||||
.centeralign {text-align: center;}
 | 
			
		||||
.rightalign {text-align: right;}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
div.footnotes {
 | 
			
		||||
  clear: both;
 | 
			
		||||
  border-top: 1px solid black;
 | 
			
		||||
  padding-left: 1em;
 | 
			
		||||
  margin-top: 1em;
 | 
			
		||||
}
 | 
			
		||||
        
 | 
			
		||||
div.fn {
 | 
			
		||||
  font-size: 90%;
 | 
			
		||||
}
 | 
			
		||||
  
 | 
			
		||||
a.fn_bot {
 | 
			
		||||
 font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*____________ lists ____________*/
 | 
			
		||||
 | 
			
		||||
ul,
 | 
			
		||||
ol {
 | 
			
		||||
    padding: 0 0 0 1.5em;
 | 
			
		||||
}
 | 
			
		||||
li,
 | 
			
		||||
dd {
 | 
			
		||||
    padding: 0;
 | 
			
		||||
    margin: 0 0 0 1.5em;
 | 
			
		||||
}
 | 
			
		||||
dt {
 | 
			
		||||
    font-weight: bold;
 | 
			
		||||
    margin: 0;
 | 
			
		||||
    padding: 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
li ul,
 | 
			
		||||
li ol,
 | 
			
		||||
li dl,
 | 
			
		||||
dl ul,
 | 
			
		||||
dl ol,
 | 
			
		||||
dl dl {
 | 
			
		||||
    margin-bottom: 0;
 | 
			
		||||
    padding: 0;
 | 
			
		||||
}
 | 
			
		||||
li li {
 | 
			
		||||
    font-size: 100%;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ul             { list-style: square outside; }
 | 
			
		||||
ol             { list-style: decimal outside; }
 | 
			
		||||
ol ol          { list-style-type: lower-alpha; }
 | 
			
		||||
ol ol ol       { list-style-type: upper-roman; }
 | 
			
		||||
ol ol ol ol    { list-style-type: upper-alpha; }
 | 
			
		||||
ol ol ol ol ol { list-style-type: lower-roman; }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
a.urlextern,
 | 
			
		||||
a.windows,
 | 
			
		||||
a.mail,
 | 
			
		||||
a.mediafile,
 | 
			
		||||
a.interwiki {
 | 
			
		||||
    background-repeat: no-repeat;
 | 
			
		||||
    background-position: 0 center;
 | 
			
		||||
    padding: 0 0 0 20px;
 | 
			
		||||
    color: #1c86ff !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.windows {
 | 
			
		||||
  background: transparent url(images/unc.png) 0px 1px no-repeat;
 | 
			
		||||
  padding: 1px 0px 1px 16px;
 | 
			
		||||
  color: #436976 !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.urlextern {
 | 
			
		||||
 background: transparent url(images/external-link.png) 0px 1px no-repeat;
 | 
			
		||||
 padding: 1px 0px 1px 16px;
 | 
			
		||||
 color: #436976 !important;
 | 
			
		||||
 text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
a.wikilink2:link,
 | 
			
		||||
a.wikilink2:visited {
 | 
			
		||||
    border-bottom: 1px dashed;
 | 
			
		||||
}
 | 
			
		||||
a.wikilink2:hover,
 | 
			
		||||
a.wikilink2:active,
 | 
			
		||||
a.wikilink2:focus {
 | 
			
		||||
    border-bottom-width: 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
a.wikilink2 {
 | 
			
		||||
  color: red !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
a.wikilink1 {
 | 
			
		||||
  color: green !important;
 | 
			
		||||
  text-decoration: none !important;  
 | 
			
		||||
}
 | 
			
		||||
                
 | 
			
		||||
span.np_break {
 | 
			
		||||
  line-height: 50%;
 | 
			
		||||
  border:0px;
 | 
			
		||||
  padding:0px;
 | 
			
		||||
  margin:0px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* syntax highlighting code */
 | 
			
		||||
.code .br0  { color: #66cc66; }
 | 
			
		||||
.code .co0  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .co1  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .co2  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .co3  { color: #808080; }
 | 
			
		||||
.code .coMULTI  { color: #808080; font-style: italic; }
 | 
			
		||||
.code .es0  { color: #000099; font-weight: bold; }
 | 
			
		||||
.code .kw1  { color: #b1b100; }
 | 
			
		||||
.code .kw2  { color: #000000; font-weight: bold; }
 | 
			
		||||
.code .kw3  { color: #000066; }
 | 
			
		||||
.code .kw4  { color: #993333; }
 | 
			
		||||
.code .kw5  { color: #0000ff; }
 | 
			
		||||
.code .me1  { color: #006600; }
 | 
			
		||||
.code .me2  { color: #006600; }
 | 
			
		||||
.code .nu0  { color: #cc66cc; }
 | 
			
		||||
.code .re0  { color: #0000ff; }
 | 
			
		||||
.code .re1  { color: #0000ff; }
 | 
			
		||||
.code .re2  { color: #0000ff; }
 | 
			
		||||
.code .re3  { color: #ff3333; font-weight:bold; }
 | 
			
		||||
.code .re4  { color: #009999; }
 | 
			
		||||
.code .st0  { color: #ff0000; }
 | 
			
		||||
.code .sy0  { color: #66cc66; }
 | 
			
		||||
 | 
			
		||||
a.mediafile {
 | 
			
		||||
    background: url(images/fileicons/file.png) no-repeat scroll 0 1px transparent;
 | 
			
		||||
    padding-bottom: 1px;
 | 
			
		||||
    padding-left: 18px;
 | 
			
		||||
    color: #436976 !important;
 | 
			
		||||
    text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* email link */
 | 
			
		||||
a.mail {
 | 
			
		||||
  background: transparent url(images/mail_icon.gif) 0px 1px no-repeat;
 | 
			
		||||
  padding: 1px 0px 1px 16px;
 | 
			
		||||
  color: #436976 !important;
 | 
			
		||||
  text-decoration: none !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_gz {
 | 
			
		||||
    background-image: url(images/fileicons/gz.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_csv {
 | 
			
		||||
    background-image: url(images/fileicons/csv.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_gif {
 | 
			
		||||
    background-image: url(images/fileicons/gif.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_png {
 | 
			
		||||
    background-image: url(images/fileicons/png.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_txt {
 | 
			
		||||
    background-image: url(images/fileicons/txt.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_tar {
 | 
			
		||||
    background-image: url(images/fileicons/tar.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_jpg {
 | 
			
		||||
    background-image: url(images/fileicons/jpg.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_xml {
 | 
			
		||||
    background-image: url(images/fileicons/xml.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_c {
 | 
			
		||||
    background-image: url(images/fileicons/c.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_ppt {
 | 
			
		||||
    background-image: url(images/fileicons/ppt.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_conf {
 | 
			
		||||
    background-image: url(images/fileicons/conf.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_xls {
 | 
			
		||||
    background-image: url(images/fileicons/xls.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_doc {
 | 
			
		||||
    background-image: url(images/fileicons/doc.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_php {
 | 
			
		||||
    background-image: url(images/fileicons/php.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_cs {
 | 
			
		||||
    background-image: url(images/fileicons/cs.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_pdf {
 | 
			
		||||
    background-image: url(images/fileicons/pdf.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_odc {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_cpp {
 | 
			
		||||
    background-image: url(images/fileicons/cpp.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_sql {
 | 
			
		||||
    background-image: url(images/fileicons/sql.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_bz2 {
 | 
			
		||||
    background-image: url(images/fileicons/bz2.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_zip {
 | 
			
		||||
    background-image: url(images/fileicons/zip.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_deb {
 | 
			
		||||
    background-image: url(images/fileicons/deb.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_jpeg {
 | 
			
		||||
    background-image: url(images/fileicons/jpeg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_odg {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_py {
 | 
			
		||||
    background-image: url(images/fileicons/py.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_js {
 | 
			
		||||
    background-image: url(images/fileicons/js.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_java {
 | 
			
		||||
    background-image: url(images/fileicons/java.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_htm {
 | 
			
		||||
    background-image: url(images/fileicons/htm.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_odt {
 | 
			
		||||
    background-image: url(images/fileicons/odt.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_rtf {
 | 
			
		||||
    background-image: url(images/fileicons/rtf.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_odf {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_css {
 | 
			
		||||
    background-image: url(images/fileicons/css.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_docx {
 | 
			
		||||
    background-image: url(images/fileicons/docx.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_xlsx {
 | 
			
		||||
    background-image: url(images/fileicons/xlsx.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_odp {
 | 
			
		||||
    background-image: url(images/fileicons/odg.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_rar {
 | 
			
		||||
    background-image: url(images/fileicons/rar.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_tgz {
 | 
			
		||||
    background-image: url(images/fileicons/tgz.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_7z {
 | 
			
		||||
    background-image: url(images/fileicons/7z.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_html {
 | 
			
		||||
    background-image: url(images/fileicons/html.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_pl {
 | 
			
		||||
    background-image: url(images/fileicons/pl.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_rpm {
 | 
			
		||||
    background-image: url(images/fileicons/rpm.png);
 | 
			
		||||
}
 | 
			
		||||
a.mf_ps {
 | 
			
		||||
    background-image: url(images/fileicons/ps.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_swf {
 | 
			
		||||
    background-image: url(images/fileicons/swf.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.mf_epub {
 | 
			
		||||
    background-image: url(images/fileicons/epub.png);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.interwiki {
 | 
			
		||||
    background: url(images/fileicons/wp.gif) no-repeat scroll 0 1px transparent;
 | 
			
		||||
    padding-bottom: 1px;
 | 
			
		||||
    padding-left: 18px;
 | 
			
		||||
    color: #436976 !important;
 | 
			
		||||
    text-decoration: none !important;
 | 
			
		||||
}    
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 dl.code dd,
 | 
			
		||||
 dl.file dd {
 | 
			
		||||
    margin: 0;
 | 
			
		||||
    clear: left;
 | 
			
		||||
    min-height: 1px; /* for IE7 */
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[dir=rtl] .dokuwiki dl.code dd,
 | 
			
		||||
[dir=rtl] .dokuwiki dl.file dd {
 | 
			
		||||
    clear: right;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
span.multi_p_open 
 | 
			
		||||
{
 | 
			
		||||
    display: block;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
a.urlextern,
 | 
			
		||||
a.windows,
 | 
			
		||||
a.mail,
 | 
			
		||||
a.mediafile,
 | 
			
		||||
a.interwiki,
 | 
			
		||||
a.urlextern:visited,
 | 
			
		||||
a.windows:visited,
 | 
			
		||||
a.mail:visited,
 | 
			
		||||
a.mediafile:visited,
 | 
			
		||||
a.interwiki:visited
 | 
			
		||||
 {
 | 
			
		||||
    color: #1c86ff !important;
 | 
			
		||||
    text-decoration:none;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
  blockquote {
 | 
			
		||||
   padding-left: .5em;
 | 
			
		||||
   margin-left: 1.5em;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
							
								
								
									
										8
									
								
								lib/plugins/ckgedit/ckeditor/css/additional.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,8 @@
 | 
			
		||||
 blockquote {
 | 
			
		||||
  border: 1px dotted #ccc;
 | 
			
		||||
  background: #eee url(data:image/gif;base64,R0lGODlhLgAcAMQAAPT09PHx8e7u7unp6ejo6Ofn5+bm5uXl5eTk5OPj4+Li4t/f397e3t3d3dzc3Nvb29ra2v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAABEALAAAAAAuABwAAAW2YCSOJLkgaJqWrKi+ram8dBwJdB03Od3Ehh6MdUgIXwvWcVhyLFEMCEP5tD2WD1tkqY1chT/t0dB1CrNiIVl7OCbTwu722F0Cujzhoa6WG4UObGMBfEtvVEtrLU8qhyOMKIokkCl7IwOUCAWIlJOZCJyQlnOZBCWfCAqPqKesIm2frbEimLMjeZQJnpmhT45BlKMjX5C9RwKLkGiyiTaMqi3AXHA90EDTeD2Bcj1yJSeV3rugXSEAOw==) no-repeat 0.3em 0.3em;
 | 
			
		||||
  padding: 1em;
 | 
			
		||||
  overflow: hidden;
 | 
			
		||||
  margin: 1em auto 1em auto;
 | 
			
		||||
  max-width: 90%;
 | 
			
		||||
}  
 | 
			
		||||
							
								
								
									
										10
									
								
								lib/plugins/ckgedit/ckeditor/dwsmileys.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,10 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 lib/plugins/ckgedit/fckeditor/dwsmileys.php
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
$SMILEYS = realpath(dirname(__FILE__).'/../../../../').'/conf/smileys.conf';
 | 
			
		||||
if(!file_exists($SMILEYS)) $SMILEYS ='/etc/dokuwiki/smileys.conf';
 | 
			
		||||
$LOCAL = preg_replace("/\.conf$/", '.local.conf', $SMILEYS) ;
 | 
			
		||||
if(file_exists($LOCAL)) readfile($LOCAL);
 | 
			
		||||
readfile($SMILEYS);
 | 
			
		||||
							
								
								
									
										84
									
								
								lib/plugins/ckgedit/ckeditor/get_headers.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,84 @@
 | 
			
		||||
<?php
 | 
			
		||||
define("DOKU_INC", realpath(dirname(__FILE__).'/../../../../') . '/');
 | 
			
		||||
define ("DOKU_PLUGIN", DOKU_INC . 'lib/plugins/');
 | 
			
		||||
define("PAGES", DOKU_INC . 'data/pages/');
 | 
			
		||||
define("FCKEDITOR", DOKU_PLUGIN . 'ckgedit/fckeditor/editor/');
 | 
			
		||||
define('CONNECTOR', FCKEDITOR . 'filemanager/connectors/php/');
 | 
			
		||||
require_once(CONNECTOR . 'check_acl.php');
 | 
			
		||||
if(file_exists(DOKU_INC.'inc/Input.class.php')) {
 | 
			
		||||
require_once(DOKU_INC.'inc/Input.class.php');
 | 
			
		||||
}
 | 
			
		||||
else {  
 | 
			
		||||
 require_once(DOKU_PLUGIN . 'ckgedit/fckeditor/editor/filemanager/connectors/php/Input.class.php');
 | 
			
		||||
}
 | 
			
		||||
require_once(CONNECTOR . 'SafeFN.class.php');
 | 
			
		||||
global $dwfck_conf;
 | 
			
		||||
global $Dwfck_conf_values;
 | 
			
		||||
$INPUT = new Input();
 | 
			
		||||
$page = $INPUT->str('dw_id');
 | 
			
		||||
$page =  ltrim($page, ':');
 | 
			
		||||
 | 
			
		||||
$dwfck_conf = doku_config_values();  // needed for cleanID
 | 
			
		||||
$Dwfck_conf_values = $dwfck_conf;
 | 
			
		||||
$page = str_replace(':', '/',$page);
 | 
			
		||||
$page = dwiki_encodeFN($page);
 | 
			
		||||
 | 
			
		||||
if(!empty($Dwfck_conf_values['ckg_savedir'])) {
 | 
			
		||||
  if (stristr(PHP_OS, 'WIN')) {
 | 
			
		||||
      $path = realpath(DOKU_INC . $Dwfck_conf_values['ckg_savedir']);
 | 
			
		||||
      $path  .= '/pages/' . $page . '.txt';
 | 
			
		||||
  }  
 | 
			
		||||
  else $path = $Dwfck_conf_values['ckg_savedir'] . '/pages/' . $page . '.txt';
 | 
			
		||||
}
 | 
			
		||||
else $path = PAGES . $page . '.txt';
 | 
			
		||||
 | 
			
		||||
$resp = "";
 | 
			
		||||
$headers = array();
 | 
			
		||||
$lines = file($path);
 | 
			
		||||
 | 
			
		||||
foreach ($lines as $line) {
 | 
			
		||||
   if (preg_match('/^=+([^=]+)=+\s*$/',$line,$matches)) {                            
 | 
			
		||||
          $suffix_anchor = "";
 | 
			
		||||
          $suffix_header = "";
 | 
			
		||||
          if(isset($headers[$matches[1]])) {
 | 
			
		||||
              $headers[$matches[1]]++;
 | 
			
		||||
              $suffix_anchor = $headers[$matches[1]]; 
 | 
			
		||||
              $suffix_header = " [$suffix_anchor]";
 | 
			
		||||
          }
 | 
			
		||||
          else {
 | 
			
		||||
            $headers[$matches[1]]=0;
 | 
			
		||||
          }
 | 
			
		||||
           
 | 
			
		||||
          $resp .=  trim($matches[1]) . $suffix_header . ";;" ;  
 | 
			
		||||
          $resp .= cleanID($matches[1]). $suffix_anchor . "@@" ;  
 | 
			
		||||
   }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
$resp = rtrim($resp,'@');
 | 
			
		||||
echo  rawurlencode($resp);
 | 
			
		||||
//file_put_contents('ajax-resp.txt', "dw_id=" . $_REQUEST['dw_id'] . "\npage=$page\npath=$path\n$resp\n" );
 | 
			
		||||
 | 
			
		||||
echo "\n";
 | 
			
		||||
function doku_config_values() {
 | 
			
		||||
  $dwphp = DOKU_INC . 'conf/dokuwiki.php';
 | 
			
		||||
  $localphp = DOKU_INC . 'conf/local.php';
 | 
			
		||||
  $conf['ckg_savedir']= false;
 | 
			
		||||
  if(file_exists($dwphp))
 | 
			
		||||
  {
 | 
			
		||||
    include($dwphp);
 | 
			
		||||
    if(file_exists($localphp))
 | 
			
		||||
    {
 | 
			
		||||
      include($localphp);
 | 
			
		||||
    }
 | 
			
		||||
    $sv = preg_replace("#^\.+/#","",$conf['savedir']);
 | 
			
		||||
    if($sv != 'data') {
 | 
			
		||||
     $conf['ckg_savedir']= $conf['savedir'];
 | 
			
		||||
   }
 | 
			
		||||
    return $conf;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  return false;
 | 
			
		||||
}
 | 
			
		||||
?>
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										8
									
								
								lib/plugins/ckgedit/ckeditor/get_version.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,8 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 lib/plugins/ckgedit/fckeditor/dwsmileys.php
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
echo file_get_contents('../version');
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/email.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 659 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/external-link.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 816 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/7z.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 415 B  | 
							
								
								
									
										2
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,2 @@
 | 
			
		||||
For the generator of these files see
 | 
			
		||||
https://github.com/splitbrain/file-icon-generator/blob/master/example-dokuwiki.php
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/asm.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 427 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/audio.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 727 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/bash.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 433 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/bz2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 419 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/c.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 412 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/cc.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 411 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/conf.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 402 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/cpp.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 430 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/cs.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 419 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/csh.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 427 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/css.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 427 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/csv.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 409 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/deb.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 421 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/diff.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 425 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/doc.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 410 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/docx.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 415 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/file.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 319 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/gif.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 407 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/gz.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 417 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/h.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 411 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/hpp.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 417 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/htm.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 417 B  | 
							
								
								
									
										
											BIN
										
									
								
								lib/plugins/ckgedit/ckeditor/images/fileicons/html.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 417 B  |