From a5589c62c1dbec62d13cafd8a485e2b401ded159 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roland=20H=C3=A4der?= Date: Wed, 1 Apr 2015 10:00:17 +0200 Subject: [PATCH] Added local files. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Roland Häder --- .well-known/host-meta | 1 + googlee69febb806e1d70f.html | 0 guestbook.php | 397 +++++++++ guestbook/.htaccess | 4 + guestbook/LICENSE.txt | 470 +++++++++++ guestbook/arial.ttf | Bin 0 -> 367112 bytes guestbook/captcha.png | Bin 0 -> 1389 bytes guestbook/captcha.txt | 1 + guestbook/changelog.txt | 39 + guestbook/forbid.php | 135 +++ guestbook/index.php | 23 + guestbook/no-badbot.gif | Bin 0 -> 1284 bytes guestbook/pixel.gif | Bin 0 -> 49 bytes guestbook/settings.php | 53 ++ guestbook/spider.jpg | Bin 0 -> 1742 bytes ...e731d88c9f3acd6205c268165519df61c71040.txt | 0 no_epatents.html | 39 + signed-downloads.asc | 31 + templates/de/html/10_jahre_mailer_project.tpl | 6 + templates/de/html/10_years_anniversary.tpl | 6 + templates/de/html/about.tpl | 86 ++ templates/de/html/aboutme.tpl | 94 +++ templates/de/html/awards.tpl | 20 + templates/de/html/blog.tpl | 28 + templates/de/html/bug-tracker.tpl | 20 + templates/de/html/contribute.tpl | 119 +++ templates/de/html/delphine-helfen-kind.tpl | 53 ++ templates/de/html/demo.tpl | 31 + templates/de/html/donate.tpl | 52 ++ templates/de/html/downloads.tpl | 39 + templates/de/html/faqs.tpl | 776 ++++++++++++++++++ templates/de/html/forum.tpl | 23 + templates/de/html/git.tpl | 46 ++ templates/de/html/link_us.tpl | 78 ++ templates/de/html/listed.tpl | 62 ++ templates/de/html/login_failtures.tpl | 9 + templates/de/html/network_webmaster_infos.tpl | 185 +++++ templates/de/html/news-2003.tpl | 39 + templates/de/html/news-2004.tpl | 751 +++++++++++++++++ templates/de/html/news-2005.tpl | 737 +++++++++++++++++ templates/de/html/news-2006.tpl | 193 +++++ templates/de/html/news-2007.tpl | 173 ++++ templates/de/html/news-2008.tpl | 47 ++ templates/de/html/news-2009.tpl | 76 ++ templates/de/html/news-2010.tpl | 98 +++ templates/de/html/news-2011.tpl | 67 ++ templates/de/html/news-2012.tpl | 137 ++++ templates/de/html/news-2013.tpl | 47 ++ templates/de/html/news.tpl | 38 + templates/de/html/news_archive_warning.tpl | 15 + templates/de/html/page_footer_links.tpl | 23 + templates/de/html/partner.tpl | 84 ++ templates/de/html/philosophy.tpl | 51 ++ templates/de/html/photos.tpl | 18 + templates/de/html/powered.tpl | 218 +++++ templates/de/html/profile-update.tpl | 51 ++ templates/de/html/rallye_test.tpl | 3 + templates/de/html/references.tpl | 41 + templates/de/html/register_header.tpl | 1 + templates/de/html/releases.tpl | 31 + templates/de/html/requirements.tpl | 31 + templates/de/html/rettet_das_internet.tpl | 42 + templates/de/html/roadmap.tpl | 55 ++ templates/de/html/svn.tpl | 1 + templates/de/html/why_reg.tpl | 41 + templates/de/html/wiki.tpl | 18 + ...304t9340to4aroland@social.mxchange.org.xml | 14 + xrd/index.php | 41 + yacy-modi.html | 218 +++++ 69 files changed, 6326 insertions(+) create mode 100644 .well-known/host-meta create mode 100644 googlee69febb806e1d70f.html create mode 100644 guestbook.php create mode 100644 guestbook/.htaccess create mode 100644 guestbook/LICENSE.txt create mode 100644 guestbook/arial.ttf create mode 100644 guestbook/captcha.png create mode 100644 guestbook/captcha.txt create mode 100644 guestbook/changelog.txt create mode 100644 guestbook/forbid.php create mode 100644 guestbook/index.php create mode 100644 guestbook/no-badbot.gif create mode 100644 guestbook/pixel.gif create mode 100644 guestbook/settings.php create mode 100644 guestbook/spider.jpg create mode 100644 mxchange.orgc6e731d88c9f3acd6205c268165519df61c71040.txt create mode 100644 no_epatents.html create mode 100644 signed-downloads.asc create mode 100644 templates/de/html/10_jahre_mailer_project.tpl create mode 100644 templates/de/html/10_years_anniversary.tpl create mode 100644 templates/de/html/about.tpl create mode 100644 templates/de/html/aboutme.tpl create mode 100644 templates/de/html/awards.tpl create mode 100644 templates/de/html/blog.tpl create mode 100644 templates/de/html/bug-tracker.tpl create mode 100644 templates/de/html/contribute.tpl create mode 100644 templates/de/html/delphine-helfen-kind.tpl create mode 100644 templates/de/html/demo.tpl create mode 100644 templates/de/html/donate.tpl create mode 100644 templates/de/html/downloads.tpl create mode 100644 templates/de/html/faqs.tpl create mode 100644 templates/de/html/forum.tpl create mode 100644 templates/de/html/git.tpl create mode 100644 templates/de/html/link_us.tpl create mode 100644 templates/de/html/listed.tpl create mode 100644 templates/de/html/login_failtures.tpl create mode 100644 templates/de/html/network_webmaster_infos.tpl create mode 100644 templates/de/html/news-2003.tpl create mode 100644 templates/de/html/news-2004.tpl create mode 100644 templates/de/html/news-2005.tpl create mode 100644 templates/de/html/news-2006.tpl create mode 100644 templates/de/html/news-2007.tpl create mode 100644 templates/de/html/news-2008.tpl create mode 100644 templates/de/html/news-2009.tpl create mode 100644 templates/de/html/news-2010.tpl create mode 100644 templates/de/html/news-2011.tpl create mode 100644 templates/de/html/news-2012.tpl create mode 100644 templates/de/html/news-2013.tpl create mode 100644 templates/de/html/news.tpl create mode 100644 templates/de/html/news_archive_warning.tpl create mode 100644 templates/de/html/page_footer_links.tpl create mode 100644 templates/de/html/partner.tpl create mode 100644 templates/de/html/philosophy.tpl create mode 100644 templates/de/html/photos.tpl create mode 100644 templates/de/html/powered.tpl create mode 100644 templates/de/html/profile-update.tpl create mode 100644 templates/de/html/rallye_test.tpl create mode 100644 templates/de/html/references.tpl create mode 100644 templates/de/html/register_header.tpl create mode 100644 templates/de/html/releases.tpl create mode 100644 templates/de/html/requirements.tpl create mode 100644 templates/de/html/rettet_das_internet.tpl create mode 100644 templates/de/html/roadmap.tpl create mode 100644 templates/de/html/svn.tpl create mode 100644 templates/de/html/why_reg.tpl create mode 100644 templates/de/html/wiki.tpl create mode 100644 xrd/304t9340to4aroland@social.mxchange.org.xml create mode 100644 xrd/index.php create mode 100644 yacy-modi.html diff --git a/.well-known/host-meta b/.well-known/host-meta new file mode 100644 index 0000000000..ac65fd116d --- /dev/null +++ b/.well-known/host-meta @@ -0,0 +1 @@ +social.mxchange.orgWebFinger resource descriptor diff --git a/googlee69febb806e1d70f.html b/googlee69febb806e1d70f.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/guestbook.php b/guestbook.php new file mode 100644 index 0000000000..a138c269c5 --- /dev/null +++ b/guestbook.php @@ -0,0 +1,397 @@ +\n'); +define('__HEAD1', '\n\n'); +define('__HEAD2', 'Wordforword\n\n'); +define('__ROBOT1', '\n\n'); +define('__NOCOLLECT1', '\n'); +define('__TOP1', '\n
\n'); +define('__EMAIL1A', ''); +define('__EMAIL1C', ''); +define('__EMAIL2A', ''); +define('__EMAIL2C', ''); +define('__EMAIL3A', ''); +define('__EMAIL3C', ''); +define('__EMAIL4A', ''); +define('__EMAIL4C', ''); +define('__EMAIL5A', ''); +define('__EMAIL5C', '..'); +define('__EMAIL6A', ''); +define('__EMAIL6C', ''); +define('__EMAIL7A', ''); +define('__EMAIL7C', ''); +define('__EMAIL8A', ''); +define('__EMAIL9A', '
'); +define('__EMAIL10A', ''); +define('__LEGAL1', ''); +define('__LEGAL2', '\n'); +define('__STYLE1', '\n'); +define('__VANITY1', '
@'.__VANITY_L1.'
'.__VANITY_L2.'
'.__VANITY_L3.'
\n'); +define('__BOTTOM1', '
\n\n\n'); + + +function getLegalContent() { return '\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
c  
 
The
to y
othe
Webs
read
agen
them
non-
Webs

   
 
Spec
Non-
spid
prog
auto

Emai
It i
alon
has
stor
valu
stor
agre

   
 
Each
agai
("Ju
the
such
andg
of f
any
Serv
the

   
i
You
may
abus
Visi

VISI
PART
SUBS
   

webs
ou s
r te
itei
fthe
ts o
. Th
tran
ite.

   

ial
Huma
ers,
rams
mati

l ad
s re
e. Y
a va
age,
e of
ing
emen

   

 par
nst
dici
regi
klaw
perf
eder
acti
ice.
abov

  t 

cons
appe
e. T
tors

TORS
Y OR
EQUE
  o 

ite
ubje
rms
you
mkca
f th
e ac
sfer


 h 

rest
nfVi
 bot
 des
call

dres
cogn
ou a
luei
 and
 the
this
t an

   

ty a
the
al A
ster
s ar
orme
al a
on b
 You
efag

   

ent
ar s
he I
 agr

 AGR
 SEN
NT B
   

from
ct t
gove
acce
refu
e in
cess
able


  kS

rict
sito
s, i
igne
y.

ses 
ized
ckno
not
/or
se a
 Web
d ex

   

gree
othe
ctio
edgA
e ap
d en
nd s
roug
 con
reem

a  

to h
omew
dent
ee n

EE T
DING
REAC
  f 

gwhi
o th
rnin
ptot
lly.
divi
 rig
 wit


PECI

ions
rs.
ndex
d to


on t
 tha
wled
less
dist
ddre
site
pres

   

s th
r in
n")
dmin
plie
tire
tate
ht a
sent
ent.

   

avin
here
ifie
ot t

HAT
 ANY
H OF
   

ch y
e fo
g ac
hese
 Any
dual
hts
hout


AL L

sond
Non-
ers,
 acc


hisd
toth
ge a
 tha
ribu
sses
\'s e
sly

d  a

at a
 con
shal
istr
d to
ly w
 cou
gain
 to


   s

g yo
 on
r is
o us

HARV
 MES
 THE
k  T

ou a
llow
cess
 ter
 Non
(s)
gran
 the


ICEN

a vi
Huma
 rob
ess,


site
esei
nd a
n US
tion
. In
mail
proh

 APP

ny s
nect
l be
ativ
 agr
ithi
rtsc
st h
elec


RECO

ur I
this
 uni
e th

ESTI
SAGE
SE T
ERMS

cces
ing
 to
msoa
-Hum
who
teda
 exp


SE R

sito
n Vi
ots,
 rea


 are
emai
gree
 $50
 of
tent
 add
ibit

LICA

uit,
ion
 gov
e Co
eeme
n th
with
im i
tron


RDS 

nter
 pag
quel
is a

NG,
(S)
ERMS
 AND

sed
cond
the
nd c
an V
cont
tohy
ress


ESTR

r\'s
sito
 cra
d, c


 con
laad
stha
. Yo
thes
iona
ress
ed.

BLE 

 act
with
erne
ntac
nts
e Ad
in t
n co
ic s


OF V

net
e (t
y ma
ddre

GATH
TO T
aOF
 CON

this
itio
Webs
ondi
isit
rols
ou u
 wri


ICTI

lice
rs i
wler
ompi


side
dres
t ea
u fu
eaad
l co
esoi


LAW 

ionk
 or
d by
t (t
betw
min
he A
nnec
ervi


ISIT

Prot
het"
tche
ss f

ERIN
HE I
SERV
DITI

 agr
ns.
ite.
tion
ors
, au
nder
tten


ONS 

nsea
nclu
s, h
le o


red
ses
ch e
rthe
dres
llec
s re


AND 

or p
aris
 the
he "
een
Stat
dmin
tion
ce o


OR U

ocol
Iden
d to
or a

G, S
DENT
ICE.
ONS 

eeme
Thes
 Byi
s (t
to t
thor
 the
 per


FORk

to a
de,
arve
r ga


prop
are
mail
r ag
sesp
tion
cogn


JURI

roce
ing
 law
Admi
Admi
e. Y
 Sta
 wit
f pr


SE A

hadd
tifi
 you
ny r

TORI
IFIE

OF U

nt (
e te
visi
he "
he W
s or
 Ter
miss


NON-

cces
butt
ster
ther


riet
prov
eadd
ree
subs
, ha
ized


SDIC

edin
from
 of
n St
n St
ou c
te.
h br
oces


NDoA

ress
er")
r In
easo

NG,
R CO

SE 

"the
rms
ting
Term
ebsi
 oth
ms o
ion


HUMA

s th
aree
s, o
 con


ary
ided
ress
that
tant
rves
 as


TION

g br
 the
the
ate"
atei
onse
You
each
s re


BUSE

krec
 if
tern
n.

TRAN
NSTI



 Web
are
 (in
s of
te s
erwi
f Se
of t


N VI

e We
not
r an
tent


inte
 for
 the
hthe
iall
ting
a vi


 

ough
 Ter
stat
) fo
resi
nt t
cons
es o
gard


 

orde
we s
et P


SFER
TUTE



site
in a
 any
 Ser
hall
se m
rvic
he o


SITO

bsit
limi
yfot
 fro


llec
 hum
 Web
 com
y di
, ga
olat




t by
ms o
e of
r th
dent
o th
ent 
foth
ing




d. A
uspe
roto


RING
S AN



") i
ddit
 man
vice
gbe
akes
e ar
wner


RS 

e ap
ted
her
m th


tual
anav
site
pila
mini
ther
ion




esuc
f Se
fres
e We
sgen
e ju
to t
ese
acti




n em
ctop
col


 TO
 ACC



s pr
ion
ner)
").
cons
 use
e
 of




ply
to,
comp
e We


 pro
isit
 con
tion
shes
ing,
of t




h pa
rvic
iden
bsit
tere
risd
he v
Term
onsd




ail
oten
addr


AgTH
EPTA



ovid
to a
 the
Plea
ider
 of

the




to
web
uter
bsit


pert
ors
tain
,
 the
 and
his




rty
e
ce o
e as
d in
icti
enue
s of
unde




addr
tial
ess.


IRD
NCE



ed
ny

se
ed










e


y.

s


/or







f

to
on
cin

r




ess





AND

\n
'; } + + +?>Unable to contact the Server. Are outbound connections disabled? (If a proxy is required for outbound traffic, you may configure the honey pot to use a proxy. For instructions, visit http://www.projecthoneypot.org/settings_help.php)
\n"); + return "-1"; + } else { + + fputs($fd,$head.$request); + while(!feof($fd)) { + $response .= fgets($fd,4096); + } + fclose($fd); + } + + return $response; +} + +function prepareRequest() { + $postvars = array(); + $postvars["tag1"] = __HPOT_TAG1; + $postvars["tag2"] = __HPOT_TAG2; + $postvars["tag3"] = __HPOT_TAG3; + if (!($handle = fopen(__FILE__,"r"))) { + die("\n
Unable to read contents of ".__FILE__." for hashing
\n"); + return -2; + } + $contents = ""; + while (!feof($handle)) { + $contents .= fread($handle, 8192); + } + fclose($handle); + $postvars["tag4"] = md5(ereg_replace("[^a-zA-Z0-9]","",$contents)); + $postvars["ip"] = $_SERVER["REMOTE_ADDR"]; + $postvars["svrn"] = $_SERVER["SERVER_NAME"]; + $postvars["svp"] = $_SERVER["SERVER_PORT"]; + $postvars["svip"] = isset($_SERVER["SERVER_ADDR"]) ? $_SERVER["SERVER_ADDR"] : ""; + $postvars["rquri"] = isset($_SERVER["REQUEST_URI"]) ? $_SERVER["REQUEST_URI"] : ""; + $postvars["phpself"] = str_replace(' ','%20',$_SERVER["PHP_SELF"]); + $postvars["version"] = "php-".phpversion(); + $postvars["sn"] = str_replace(' ','%20',$_SERVER["SCRIPT_NAME"]); + $postvars["ref"] = isset($_SERVER["HTTP_REFERER"]) ? $_SERVER["HTTP_REFERER"] : ""; + $postvars["uagnt"] = isset($_SERVER["HTTP_USER_AGENT"]) ? $_SERVER["HTTP_USER_AGENT"] : ""; + if (isset($_POST) && count($_POST) > 0) { + $postvars["has_post"] = count($_POST); + for (reset($_POST);list($k,$v) = each($_POST);) { + $postvars["post|".$k] = $v; + } + reset($_POST); + } + if (isset($_GET) && count($_GET) > 0) { + $postvars["has_get"] = count($_GET); + for (reset($_GET);list($k,$v) = each($_GET);) { + $postvars["get|".$k] = $v; + } + reset($_GET); + } + + return $postvars; +} + +function transcribeResponse(& $response) { + $settings = NULL; + $arr = explode("\n",$response); + $isParam = FALSE; + + + for ($i=0;list(,$v)=each($arr);$i++) { + if ($v == "") $isParam = FALSE; + + if ($isParam) { + $pieces = explode("=",$v,2); + $settings[$pieces[0]] = urldecode($pieces[1]); + } + if ($v == "") $isParam = TRUE; + } + + + if ($settings["directives"]) { + $settings["directives"] = explode(",",$settings["directives"]); + } + + return $settings; +} + +header("Cache-Control: no-store, no-cache"); +header("Pragma: no-cache"); + +$response = ""; +$request = ""; +$post = prepareRequest(); + +for (reset($post);list($k,$v) = each($post);) { + $request .= "&".urlencode($k)."=".urlencode(stripslashes($v)); +} +$request = substr($request,1); +$response = performRequest($request); +if ($response == "-1") { + exit(); +} +$settings = transcribeResponse($response); + +$directives = $settings["directives"]; +$email = isset($settings["email"]) ? $settings["email"] : ""; +$emailmethod = isset($settings["emailmethod"]) ? $settings["emailmethod"] : 0; + + + + +?> + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/guestbook/.htaccess b/guestbook/.htaccess new file mode 100644 index 0000000000..96d6fb4ef8 --- /dev/null +++ b/guestbook/.htaccess @@ -0,0 +1,4 @@ +Order allow,deny +Allow from all + +ErrorDocument 404 http://www.mxchange.org/guestbook/index.php diff --git a/guestbook/LICENSE.txt b/guestbook/LICENSE.txt new file mode 100644 index 0000000000..7a45bfe8af --- /dev/null +++ b/guestbook/LICENSE.txt @@ -0,0 +1,470 @@ + MOZILLA PUBLIC LICENSE + Version 1.1 + + --------------- + +1. Definitions. + + 1.0.1. "Commercial Use" means distribution or otherwise making the + Covered Code available to a third party. + + 1.1. "Contributor" means each entity that creates or contributes to + the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the Original + Code, prior Modifications used by a Contributor, and the Modifications + made by that particular Contributor. + + 1.3. "Covered Code" means the Original Code or Modifications or the + combination of the Original Code and Modifications, in each case + including portions thereof. + + 1.4. "Electronic Distribution Mechanism" means a mechanism generally + accepted in the software development community for the electronic + transfer of data. + + 1.5. "Executable" means Covered Code in any form other than Source + Code. + + 1.6. "Initial Developer" means the individual or entity identified + as the Initial Developer in the Source Code notice required by Exhibit + A. + + 1.7. "Larger Work" means a work which combines Covered Code or + portions thereof with code not governed by the terms of this License. + + 1.8. "License" means this document. + + 1.8.1. "Licensable" means having the right to grant, to the maximum + extent possible, whether at the time of the initial grant or + subsequently acquired, any and all of the rights conveyed herein. + + 1.9. "Modifications" means any addition to or deletion from the + substance or structure of either the Original Code or any previous + Modifications. When Covered Code is released as a series of files, a + Modification is: + A. Any addition to or deletion from the contents of a file + containing Original Code or previous Modifications. + + B. Any new file that contains any part of the Original Code or + previous Modifications. + + 1.10. "Original Code" means Source Code of computer software code + which is described in the Source Code notice required by Exhibit A as + Original Code, and which, at the time of its release under this + License is not already Covered Code governed by this License. + + 1.10.1. "Patent Claims" means any patent claim(s), now owned or + hereafter acquired, including without limitation, method, process, + and apparatus claims, in any patent Licensable by grantor. + + 1.11. "Source Code" means the preferred form of the Covered Code for + making modifications to it, including all modules it contains, plus + any associated interface definition files, scripts used to control + compilation and installation of an Executable, or source code + differential comparisons against either the Original Code or another + well known, available Covered Code of the Contributor's choice. The + Source Code can be in a compressed or archival form, provided the + appropriate decompression or de-archiving software is widely available + for no charge. + + 1.12. "You" (or "Your") means an individual or a legal entity + exercising rights under, and complying with all of the terms of, this + License or a future version of this License issued under Section 6.1. + For legal entities, "You" includes any entity which controls, is + controlled by, or is under common control with You. For purposes of + this definition, "control" means (a) the power, direct or indirect, + to cause the direction or management of such entity, whether by + contract or otherwise, or (b) ownership of more than fifty percent + (50%) of the outstanding shares or beneficial ownership of such + entity. + +2. Source Code License. + + 2.1. The Initial Developer Grant. + The Initial Developer hereby grants You a world-wide, royalty-free, + non-exclusive license, subject to third party intellectual property + claims: + (a) under intellectual property rights (other than patent or + trademark) Licensable by Initial Developer to use, reproduce, + modify, display, perform, sublicense and distribute the Original + Code (or portions thereof) with or without Modifications, and/or + as part of a Larger Work; and + + (b) under Patents Claims infringed by the making, using or + selling of Original Code, to make, have made, use, practice, + sell, and offer for sale, and/or otherwise dispose of the + Original Code (or portions thereof). + + (c) the licenses granted in this Section 2.1(a) and (b) are + effective on the date Initial Developer first distributes + Original Code under the terms of this License. + + (d) Notwithstanding Section 2.1(b) above, no patent license is + granted: 1) for code that You delete from the Original Code; 2) + separate from the Original Code; or 3) for infringements caused + by: i) the modification of the Original Code or ii) the + combination of the Original Code with other software or devices. + + 2.2. Contributor Grant. + Subject to third party intellectual property claims, each Contributor + hereby grants You a world-wide, royalty-free, non-exclusive license + + (a) under intellectual property rights (other than patent or + trademark) Licensable by Contributor, to use, reproduce, modify, + display, perform, sublicense and distribute the Modifications + created by such Contributor (or portions thereof) either on an + unmodified basis, with other Modifications, as Covered Code + and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, using, or + selling of Modifications made by that Contributor either alone + and/or in combination with its Contributor Version (or portions + of such combination), to make, use, sell, offer for sale, have + made, and/or otherwise dispose of: 1) Modifications made by that + Contributor (or portions thereof); and 2) the combination of + Modifications made by that Contributor with its Contributor + Version (or portions of such combination). + + (c) the licenses granted in Sections 2.2(a) and 2.2(b) are + effective on the date Contributor first makes Commercial Use of + the Covered Code. + + (d) Notwithstanding Section 2.2(b) above, no patent license is + granted: 1) for any code that Contributor has deleted from the + Contributor Version; 2) separate from the Contributor Version; + 3) for infringements caused by: i) third party modifications of + Contributor Version or ii) the combination of Modifications made + by that Contributor with other software (except as part of the + Contributor Version) or other devices; or 4) under Patent Claims + infringed by Covered Code in the absence of Modifications made by + that Contributor. + +3. Distribution Obligations. + + 3.1. Application of License. + The Modifications which You create or to which You contribute are + governed by the terms of this License, including without limitation + Section 2.2. The Source Code version of Covered Code may be + distributed only under the terms of this License or a future version + of this License released under Section 6.1, and You must include a + copy of this License with every copy of the Source Code You + distribute. You may not offer or impose any terms on any Source Code + version that alters or restricts the applicable version of this + License or the recipients' rights hereunder. However, You may include + an additional document offering the additional rights described in + Section 3.5. + + 3.2. Availability of Source Code. + Any Modification which You create or to which You contribute must be + made available in Source Code form under the terms of this License + either on the same media as an Executable version or via an accepted + Electronic Distribution Mechanism to anyone to whom you made an + Executable version available; and if made available via Electronic + Distribution Mechanism, must remain available for at least twelve (12) + months after the date it initially became available, or at least six + (6) months after a subsequent version of that particular Modification + has been made available to such recipients. You are responsible for + ensuring that the Source Code version remains available even if the + Electronic Distribution Mechanism is maintained by a third party. + + 3.3. Description of Modifications. + You must cause all Covered Code to which You contribute to contain a + file documenting the changes You made to create that Covered Code and + the date of any change. You must include a prominent statement that + the Modification is derived, directly or indirectly, from Original + Code provided by the Initial Developer and including the name of the + Initial Developer in (a) the Source Code, and (b) in any notice in an + Executable version or related documentation in which You describe the + origin or ownership of the Covered Code. + + 3.4. Intellectual Property Matters + (a) Third Party Claims. + If Contributor has knowledge that a license under a third party's + intellectual property rights is required to exercise the rights + granted by such Contributor under Sections 2.1 or 2.2, + Contributor must include a text file with the Source Code + distribution titled "LEGAL" which describes the claim and the + party making the claim in sufficient detail that a recipient will + know whom to contact. If Contributor obtains such knowledge after + the Modification is made available as described in Section 3.2, + Contributor shall promptly modify the LEGAL file in all copies + Contributor makes available thereafter and shall take other steps + (such as notifying appropriate mailing lists or newsgroups) + reasonably calculated to inform those who received the Covered + Code that new knowledge has been obtained. + + (b) Contributor APIs. + If Contributor's Modifications include an application programming + interface and Contributor has knowledge of patent licenses which + are reasonably necessary to implement that API, Contributor must + also include this information in the LEGAL file. + + (c) Representations. + Contributor represents that, except as disclosed pursuant to + Section 3.4(a) above, Contributor believes that Contributor's + Modifications are Contributor's original creation(s) and/or + Contributor has sufficient rights to grant the rights conveyed by + this License. + + 3.5. Required Notices. + You must duplicate the notice in Exhibit A in each file of the Source + Code. If it is not possible to put such notice in a particular Source + Code file due to its structure, then You must include such notice in a + location (such as a relevant directory) where a user would be likely + to look for such a notice. If You created one or more Modification(s) + You may add your name as a Contributor to the notice described in + Exhibit A. You must also duplicate this License in any documentation + for the Source Code where You describe recipients' rights or ownership + rights relating to Covered Code. You may choose to offer, and to + charge a fee for, warranty, support, indemnity or liability + obligations to one or more recipients of Covered Code. However, You + may do so only on Your own behalf, and not on behalf of the Initial + Developer or any Contributor. You must make it absolutely clear than + any such warranty, support, indemnity or liability obligation is + offered by You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred by the + Initial Developer or such Contributor as a result of warranty, + support, indemnity or liability terms You offer. + + 3.6. Distribution of Executable Versions. + You may distribute Covered Code in Executable form only if the + requirements of Section 3.1-3.5 have been met for that Covered Code, + and if You include a notice stating that the Source Code version of + the Covered Code is available under the terms of this License, + including a description of how and where You have fulfilled the + obligations of Section 3.2. The notice must be conspicuously included + in any notice in an Executable version, related documentation or + collateral in which You describe recipients' rights relating to the + Covered Code. You may distribute the Executable version of Covered + Code or ownership rights under a license of Your choice, which may + contain terms different from this License, provided that You are in + compliance with the terms of this License and that the license for the + Executable version does not attempt to limit or alter the recipient's + rights in the Source Code version from the rights set forth in this + License. If You distribute the Executable version under a different + license You must make it absolutely clear that any terms which differ + from this License are offered by You alone, not by the Initial + Developer or any Contributor. You hereby agree to indemnify the + Initial Developer and every Contributor for any liability incurred by + the Initial Developer or such Contributor as a result of any such + terms You offer. + + 3.7. Larger Works. + You may create a Larger Work by combining Covered Code with other code + not governed by the terms of this License and distribute the Larger + Work as a single product. In such a case, You must make sure the + requirements of this License are fulfilled for the Covered Code. + +4. Inability to Comply Due to Statute or Regulation. + + If it is impossible for You to comply with any of the terms of this + License with respect to some or all of the Covered Code due to + statute, judicial order, or regulation then You must: (a) comply with + the terms of this License to the maximum extent possible; and (b) + describe the limitations and the code they affect. Such description + must be included in the LEGAL file described in Section 3.4 and must + be included with all distributions of the Source Code. Except to the + extent prohibited by statute or regulation, such description must be + sufficiently detailed for a recipient of ordinary skill to be able to + understand it. + +5. Application of this License. + + This License applies to code to which the Initial Developer has + attached the notice in Exhibit A and to related Covered Code. + +6. Versions of the License. + + 6.1. New Versions. + Netscape Communications Corporation ("Netscape") may publish revised + and/or new versions of the License from time to time. Each version + will be given a distinguishing version number. + + 6.2. Effect of New Versions. + Once Covered Code has been published under a particular version of the + License, You may always continue to use it under the terms of that + version. You may also choose to use such Covered Code under the terms + of any subsequent version of the License published by Netscape. No one + other than Netscape has the right to modify the terms applicable to + Covered Code created under this License. + + 6.3. Derivative Works. + If You create or use a modified version of this License (which you may + only do in order to apply it to code which is not already Covered Code + governed by this License), You must (a) rename Your license so that + the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", + "MPL", "NPL" or any confusingly similar phrase do not appear in your + license (except to note that your license differs from this License) + and (b) otherwise make it clear that Your version of the license + contains terms which differ from the Mozilla Public License and + Netscape Public License. (Filling in the name of the Initial + Developer, Original Code or Contributor in the notice described in + Exhibit A shall not of themselves be deemed to be modifications of + this License.) + +7. DISCLAIMER OF WARRANTY. + + COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF + DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. + THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE + IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, + YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE + COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER + OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF + ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. + +8. TERMINATION. + + 8.1. This License and the rights granted hereunder will terminate + automatically if You fail to comply with terms herein and fail to cure + such breach within 30 days of becoming aware of the breach. All + sublicenses to the Covered Code which are properly granted shall + survive any termination of this License. Provisions which, by their + nature, must remain in effect beyond the termination of this License + shall survive. + + 8.2. If You initiate litigation by asserting a patent infringement + claim (excluding declatory judgment actions) against Initial Developer + or a Contributor (the Initial Developer or Contributor against whom + You file such action is referred to as "Participant") alleging that: + + (a) such Participant's Contributor Version directly or indirectly + infringes any patent, then any and all rights granted by such + Participant to You under Sections 2.1 and/or 2.2 of this License + shall, upon 60 days notice from Participant terminate prospectively, + unless if within 60 days after receipt of notice You either: (i) + agree in writing to pay Participant a mutually agreeable reasonable + royalty for Your past and future use of Modifications made by such + Participant, or (ii) withdraw Your litigation claim with respect to + the Contributor Version against such Participant. If within 60 days + of notice, a reasonable royalty and payment arrangement are not + mutually agreed upon in writing by the parties or the litigation claim + is not withdrawn, the rights granted by Participant to You under + Sections 2.1 and/or 2.2 automatically terminate at the expiration of + the 60 day notice period specified above. + + (b) any software, hardware, or device, other than such Participant's + Contributor Version, directly or indirectly infringes any patent, then + any rights granted to You by such Participant under Sections 2.1(b) + and 2.2(b) are revoked effective as of the date You first made, used, + sold, distributed, or had made, Modifications made by that + Participant. + + 8.3. If You assert a patent infringement claim against Participant + alleging that such Participant's Contributor Version directly or + indirectly infringes any patent where such claim is resolved (such as + by license or settlement) prior to the initiation of patent + infringement litigation, then the reasonable value of the licenses + granted by such Participant under Sections 2.1 or 2.2 shall be taken + into account in determining the amount or value of any payment or + license. + + 8.4. In the event of termination under Sections 8.1 or 8.2 above, + all end user license agreements (excluding distributors and resellers) + which have been validly granted by You or any distributor hereunder + prior to termination shall survive termination. + +9. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL + DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, + OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR + ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY + CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, + WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER + COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN + INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF + LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY + RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW + PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE + EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO + THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. + +10. U.S. GOVERNMENT END USERS. + + The Covered Code is a "commercial item," as that term is defined in + 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer + software" and "commercial computer software documentation," as such + terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 + C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), + all U.S. Government End Users acquire Covered Code with only those + rights set forth herein. + +11. MISCELLANEOUS. + + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the extent + necessary to make it enforceable. This License shall be governed by + California law provisions (except to the extent applicable law, if + any, provides otherwise), excluding its conflict-of-law provisions. + With respect to disputes in which at least one party is a citizen of, + or an entity chartered or registered to do business in the United + States of America, any litigation relating to this License shall be + subject to the jurisdiction of the Federal Courts of the Northern + District of California, with venue lying in Santa Clara County, + California, with the losing party responsible for costs, including + without limitation, court costs and reasonable attorneys' fees and + expenses. The application of the United Nations Convention on + Contracts for the International Sale of Goods is expressly excluded. + Any law or regulation which provides that the language of a contract + shall be construed against the drafter shall not apply to this + License. + +12. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is + responsible for claims and damages arising, directly or indirectly, + out of its utilization of rights under this License and You agree to + work with Initial Developer and Contributors to distribute such + responsibility on an equitable basis. Nothing herein is intended or + shall be deemed to constitute any admission of liability. + +13. MULTIPLE-LICENSED CODE. + + Initial Developer may designate portions of the Covered Code as + "Multiple-Licensed". "Multiple-Licensed" means that the Initial + Developer permits you to utilize portions of the Covered Code under + Your choice of the NPL or the alternative licenses, if any, specified + by the Initial Developer in the file described in Exhibit A. + +EXHIBIT A -Mozilla Public License. + + ``The contents of this file are subject to the Mozilla Public License + Version 1.1 (the "License"); you may not use this file except in + compliance with the License. You may obtain a copy of the License at + http://www.mozilla.org/MPL/ + + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + License for the specific language governing rights and limitations + under the License. + + The Original Code is ______________________________________. + + The Initial Developer of the Original Code is ________________________. + Portions created by ______________________ are Copyright (C) ______ + _______________________. All Rights Reserved. + + Contributor(s): ______________________________________. + + Alternatively, the contents of this file may be used under the terms + of the _____ license (the "[___] License"), in which case the + provisions of [______] License are applicable instead of those + above. If you wish to allow use of your version of this file only + under the terms of the [____] License and not to allow others to use + your version of this file under the MPL, indicate your decision by + deleting the provisions above and replace them with the notice and + other provisions required by the [___] License. If you do not delete + the provisions above, a recipient may use your version of this file + under either the MPL or the [___] License." + + [NOTE: The text of this Exhibit A may differ slightly from the text of + the notices in the Source Code files of the Original Code. You should + use the text of this Exhibit A rather than the text found in the + Original Code Source Code for Your Modifications.] + diff --git a/guestbook/arial.ttf b/guestbook/arial.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ff0815cd8c64b0a245ec780eb8d21867509155b5 GIT binary patch literal 367112 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≺9Wiv@#qpl#qL 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≪P+Tw+*$qa@!i>|Uj$m6(YG+< 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 +* @copyright (c) 2005-2006 Spider-Trap Team +* +* The contents of this file are subject to the Mozilla Public License +* Version 1.1 (the "License"); you may not use this file except in +* compliance with the License. You may obtain a copy of the License at +* http://www.mozilla.org/MPL/ +* +* Software distributed under the License is distributed on an "AS IS" +* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +* License for the specific language governing rights and limitations +* under the License. +*/ +require 'settings.php'; +include trap_core_path."core.inc.php"; + +function ts_gfx($ts_random) { +$rcode = hexdec(md5($_SERVER['HTTP_USER_AGENT'] . $_SERVER['SERVER_SOFTWARE'] . $_SERVER['HTTP_ACCEPT_CHARSET'] . sitekey . $ts_random . datekey . filemtime("settings.php"))); +$code = substr($rcode, 2, 6); + +setCaptchaId($code); + +$circles=5; +$width=100; +$height=40; +$font=5; + +$fontwidth = ImageFontWidth($font) * strlen($code); +$fontheight = ImageFontHeight($font); + +$max_lines = $fontheight / 4; +if (random_lines == true) +{ + $lines = rand(1, $max_lines); +} + else +{ + $lines=2; +} +if ($lines > $max_lines) $lines = $max_lines; + +$im = @imagecreate ($width,$height); +$background_color = imagecolorallocate ($im, rand(0,100),rand(0,100),rand(0,100)); +$text_color = imagecolorallocate ($im, rand(200,255),rand(200,255),rand(200,255)); // Random Text + +$r=0.01;$g=0.51;$b=0.87; +for ($i=1;$i<=$circles;$i++) { + $value=rand(200, 255); + $randomcolor = imagecolorallocate ($im , $value*$r, $value*$g,$value*$b); + imagefilledellipse($im,rand(0,$width-10),rand(0,$height-3), + rand(20,70),rand(20,70),$randomcolor); +} + +imagerectangle($im,0,0,$width-1,$height-1,$text_color); + +$w_pos = rand(5, abs($width - $fontwidth)); +$h_pos = rand(5, abs($height - 1 - $fontheight)); +imagestring ($im, $font, $w_pos, $h_pos, $code, $text_color); + +$y2 = 0; $y = 0; +for ($i=0;$i<$lines;$i++) { + while(abs($y2 - $y) < 2) + { + $y=rand($h_pos, ($h_pos + $fontheight)); + } + $y2 = $y; + $randomcolor=imagecolorallocate($im, 0,0, rand(100, 255)); + imageline($im, 0, $y, $width, $y, $randomcolor); +} + +header ("Content-type: image/jpeg"); +imagejpeg ($im,'',80); +ImageDestroy($im); +die(); +} +$ts_random=rand(); +$pos= strpos($_SERVER['REQUEST_URI'], '?'); +$basename = basename(substr($_SERVER['REQUEST_URI'], 0, $pos)); +if($basename==basename(__FILE__)) +ts_gfx($_GET['ts_random']); + +$value = getCaptchaId(); +if($_POST['unbanme'] == $value ){ + remove_blacklist(getip(), $_SERVER["HTTP_USER_AGENT"]); + header("Location: ../"); + exit; +} else { +?> + + + +403 - Zugriff verboten + +

Zugriff auf diese Website können Sie hier freischalten + +

+Falsche Eingabe - Sperre nicht aufgehoben !"; +} +?> +

Diese Seite dient zum Schutz vor sogenannten "bösen" Spambots. Oft ist es der Fall, dass man persönliche Daten wie z.B. die Bankverbindung + auf einer Webseite angibt. Damit diese Daten nicht in den Suchmaschinen auftauchen + hat man sich auf einen Standard geeinigt, wie man Websiten vor der Indexierung ausschließen kann.*
+ +
+ Sie sind einem Link gefolgt der für diesen Spambot gedacht war und haben dadurch eine Sperre Ihrer IP-Adresse ausgelöst.
+

Um + diese Sperre aufzuheben, müssen Sie in das folgende Formular den unten + angezeigten Wert eintragen und danach abschicken - dann haben Sie sofort + wieder Zugriff auf diese Website. +

+ /> +

+ + + +
+ + + +

 

+

* Dazu legt man eine Datei mit Namen robots.txt in das Root Verzeichnis des Webspaces und hinterlegt darin, welche Seiten indexiert werden dürfen und welche nicht. Suchmaschinen wie MSN, Yahoo oder Google halten sich an diese Regeln. Spambots aber lesen Internetseiten aus ohne dabei auf diese Richtlinien zu achten. Um dies zu unterbinden und damit die Webseiten zu schützen, werden diese Spambots ausgesperrt. Mehr Informationen über Webcrawler gibt es z.B: bei http://www.robotstxt.org/wc/robots.html

+

+powered by Spider-trap.de + + + diff --git a/guestbook/index.php b/guestbook/index.php new file mode 100644 index 0000000000..4a29ce78a0 --- /dev/null +++ b/guestbook/index.php @@ -0,0 +1,23 @@ + +* @copyright (c) 2005-2006 Spider-Trap Team +* +* The contents of this file are subject to the Mozilla Public License +* Version 1.1 (the "License"); you may not use this file except in +* compliance with the License. You may obtain a copy of the License at +* http://www.mozilla.org/MPL/ +* +* Software distributed under the License is distributed on an "AS IS" +* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +* License for the specific language governing rights and limitations +* under the License. +*/ +include "settings.php"; +include trap_core_path."core.inc.php"; +add_blacklist($_SERVER['REMOTE_ADDR'], $_SERVER['REQUEST_METHOD'], $_SERVER['REQUEST_URI'], $_SERVER['SERVER_PROTOCOL'], $_SERVER['HTTP_REFERRER'], $_SERVER['HTTP_USER_AGENT']); +header('Location: forbid.php'); +exit; +?> diff --git a/guestbook/no-badbot.gif b/guestbook/no-badbot.gif new file mode 100644 index 0000000000000000000000000000000000000000..3a7eb3f069a454d1db5e1cc6366d66f41aeda86a GIT binary patch literal 1284 zcmeIx=}(#m00!_EM=f@3B}gW-)V0=H+{jYX?r=H-i1paAVzpg#Hq%tuVzaF7gNa?I zD0S2m1aux$5d`rJ6tC9Bfq>vaTXprC_X!>dXv?AU?(ILZPkZwF{v=QGL`GlxJUE2{ zcmg&6pi-$I6#(xdzzh_ajRT9q3QDsInfD8szZS6|4@%g-m9Vo*IglJCCkL#I2gT_u zE{#>5TUL?B{)5h`%;!R?elLeqGpcKgYwAjB>PmV1(#HZ;t+1?4$mTb2>P1|ExLnj! z)!0%aY2is)c}=a4o7-xe+aYzW()u>3piL%dmkFhEk*q^3>uh||C6PnAn>xCiJ9}EX zp0;-Pw)ghQKsl{X(b=c$0u>bsRku>r)314^(mYcS^s2RgYIJ?t!N0Ua3f+)mXrzB= zL^Z5e4?kCrywJQD)s2l0kH6CYJ@I^UdTeTDd}j95KeH3F^OJM)Q*#Sb^9wWJO#kBY z?9$5I^2+?m>cZ;U;@bMs+Q#yRVbx$dv|xoY&MxK zCW~bkd~LE?&DK4LWe>7%-QTy`Y_Dy$H+H+t;jlZL4kzTmd2rwa5A27Bhet<{BbUns zf)Eh+KmXwZ__tkezW^Xy01SbRlJb>wgx7~jx_im>4CI9vUX)CrDZ*Sifk*R&TIRX% zOnfT8VUUB1Yfc)xkyc;gcW1zV`iWRygZtiX5hrhqtacBTCg(1b22bJR<8gtch(gcf zw<<7+dAWnA;7_^O&8x>4oG-Fms|k+?03zpv@_i&q!XZ&#niEohXdWphCUZJGfa!fa z@B^0R%7FgNyY3A-8T%3=my~9g%2aUt2-CA0jtk*a9s=K~U7;Sh@HyPYrue6F1)=z3 zcl3imft6gvPNS+R7nC%_ml#AWu-C6c4TlilbH+*t3BI8o+?(I{6nPUrJDFtj~v^VtdyX4qUc_J0m>d}3eCLPv)KsvMbjg@8Vs?!Pl3>q?9UC1(ccmt zMxx@-H?%McI#284sUL;A^FJxfeBW%z`8=5SzU8G?@a^@u>x89LT#QF0l~X`R d-8TqXVO_D;xVO@cBJ?K>Mlmllok9RY{sp~n`MUrB literal 0 HcmV?d00001 diff --git a/guestbook/pixel.gif b/guestbook/pixel.gif new file mode 100644 index 0000000000000000000000000000000000000000..2d2380bc6f483b577385d7ee947e5b3d1bc20395 GIT binary patch literal 49 vcmZ?wbhEHbWMp7unE0RJ|Ns9C3{X<>CkrD30~3P|Py{FoVl#y>GFSruXD167 literal 0 HcmV?d00001 diff --git a/guestbook/settings.php b/guestbook/settings.php new file mode 100644 index 0000000000..d98b7a5087 --- /dev/null +++ b/guestbook/settings.php @@ -0,0 +1,53 @@ + +* @copyright (c) 2005-2006 Spider-Trap Team +* +* The contents of this file are subject to the Mozilla Public License +* Version 1.1 (the "License"); you may not use this file except in +* compliance with the License. You may obtain a copy of the License at +* http://www.mozilla.org/MPL/ +* +* Software distributed under the License is distributed on an "AS IS" +* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +* License for the specific language governing rights and limitations +* under the License. +*/ +// Schreibrechte CHMOD 777 +error_reporting(0); +$htaccess_file = dirname(dirname(__FILE__))."/.htaccess"; +if (!is_writeable($htaccess_file)) die("Cannot write ".$htaccess_file." !"); +$blacklist_file = dirname(dirname(__FILE__))."/blacklist.txt"; +if (!is_writeable($blacklist_file)) die("Cannot write ".$blacklist_file." !"); +$whitelist_file = dirname(dirname(__FILE__))."/whitelist.txt"; +if (!is_writeable($whitelist_file)) die("Cannot write ".$whitelist_file." !"); + +$alert_email = "webmaster@mxchange.org"; // Email für Benachrichtigungen + +$mail_on_add = true; // Email senden wenn neue Sperre +$mail_on_remove = true; // Email senden wenn Sperre für jemand aufgehoben wurde ? + +$trap_path = "guestbook/"; // path of the trap - must end with a "/" + +$sleep_min = 30; $sleep_max = 300; + +$captcha_file = dirname(dirname(__FILE__))."/".$trap_path."captcha.txt"; +if (!is_writeable($captcha_file)) die("Cannot write ".$captcha_file." !"); + +// Bitte randomizen Sie diesen String etwas selber! ;-) +define('sitekey', "spider-trap_yh34yh=3h3542u5y458=h34t73h=h24yhj2q4-h2"); + +// Hier koennen Sie auch das deutsche Datumsformat nehmen, Uhrzeit nicht, da diese zu haeufig wechselt +// und somit die Codegenerierung nicht identische Codes liefert +define('datekey', date("d-m-Y", time())); + +// Sollen die Linienanzahl per Zufall gewaehlt werden? Ja = true, Nein, fixierte Anzahl = false +define('random_lines', true); + +// Wo sind die "Core-Dateien" abgelegt? (mit abschliessendem Slash!) +define('trap_core_path', "/usr/share/php/spider-trap/"); + +// +?> diff --git a/guestbook/spider.jpg b/guestbook/spider.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e20325c7c5010887f3bc18736185c9f3a77c821d GIT binary patch literal 1742 zcmbu3X;71g7KXnpkfnhTOdQYxRu(}(5Dbs0Acs~SJ{>PE5Rg{i=I8eI&qOYi2ta;ORzq6&gx zaeMYE=K&OC$Bcns0B4}uqAu-RiEYz&dWA`jz76B+@}Z9!4H=)lSs9RtG6l2?uAVQK zAA3}{6H=ct2ftW-n;(eM&HF&yj<)c8cuxG~<(DK;_x9K*NpXLATiD(=D-<}5P1a5% zxLi7wIjK!xQd@&2I>1k=I(@vSJf;OW*8~2D8WO$)GjOWDm9x1oIZD@hbLdUlNe>gn z^~d$qvp4XWedQ-i4b+Sf{=;u9wDhww#6l<99W(ii93-Go8~amO7g-KfyY7+sr<(#URRhp9ET6&EFv z>Wrok_@nN*r+6DnPOR^8;-7@7qp;{iI zTNj6Gq7`>e*QtYz%z5&fS-&g=OeAGWB>>HdpPT8=P}Q@=5NiOyOO&U~7C zxMDiFP33>sOq4g09T_7Ego5lXfFM3Zr0!mnT!s_x|QW>@!X#; zku010+Zld}n5EN$k?BMVKS;x7>cGqqx60#HMxVMY!>5BjEO@zqd*p*|j>0wd0gH1P z;`qUyz~74&jc*@fgyWeY#R9DMYgUM9BqlC)6&-QqHi@}WxZlpsJ3H|3Y`yaW!{+-L zKRtVU|LC~ogchO0+_rn=AV&on?b&%%m;M^=|G}d*p-SSkIc`Zu*nlB@RN445=eILg z8V*C2o4t`gf5VYx&3BjuzvNlP51eEcipT#zb=53R7WbqwR@Eq-Vqo1obu18$5;S>j zNKH0a=V-Mtt=tuz^8Pcvz4ol3yrv6fT}_0j>%wOh`Cnbw|C=bKO{ZNo-}<)z-pY;8 zh!<1^n}F)qAFy@Ie?pcW{bK#PgD9ptG36)Y4MzJE#liCFc8>e~qP5Z`fSP-!sx9#? zwlo;^qeTUK_R*IT`{;$eR|nF$+P8dNyYrS+U8>lpLV^iP{=s8!#Ysw_zHVqBx{kJ1 znsH~eW+2w<*lqed32HP5dH3q-M#k~;r;8_O7;vRUFScgFBqhr(IZ{nOG?P;WYDabl zraQZCjgI(LT&peUm_O}(n@b#LXT3Y-EWjr$S*joG_f7C2mjt03`!3$g_nG$!GZuDu zpw39!)Mcw_8iKzxU#XYL)p!qG84aOSt7r;A7Iq|5Yu;MoWbi{VA1g>siDDxvp-BiN zW0A=JwUSRZtlu<&7vF>3tNXa;;dvYIoRl|}yw)R4ol#c{6}o8G@AN|BWI z%^K2IjwL2v$%8!)i9A!#s8P;ry+hFdgL295>{qI#CD4=2_2a@|3I{;f8yKH}l=Ze@ zDt;1Y?<;)Z&2l)%>Q1c8b~yTeIQsp^eXVAXLN4Y$D32-ATAXkTm#2rih{NQbMb#8t zw9ius{T31s8+|T(xBeQ}hcuR{OD2EMYL4&>9;G*Kny2E4=y6B0yE8PlKi6$I)^yL| hZ-*kHylNR!tD0f)%m;2H{+-T!h@74PX;qqX?r&O0-gN)~ literal 0 HcmV?d00001 diff --git a/mxchange.orgc6e731d88c9f3acd6205c268165519df61c71040.txt b/mxchange.orgc6e731d88c9f3acd6205c268165519df61c71040.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/no_epatents.html b/no_epatents.html new file mode 100644 index 0000000000..d5d57be15b --- /dev/null +++ b/no_epatents.html @@ -0,0 +1,39 @@ + + + Mailer-Project Werbepopup + + + + + + + + + + + + + + diff --git a/signed-downloads.asc b/signed-downloads.asc new file mode 100644 index 0000000000..d7d622f5e6 --- /dev/null +++ b/signed-downloads.asc @@ -0,0 +1,31 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.11 (GNU/Linux) + +mQINBE2H+rYBEADIqsxF/4rZrK/d7M1RHY6EnPg2L4wq5hR9ap/OiU8lGyPrnka4 +yiBoo9PYFEuv+aNQ/xBW47BWumOh0Je+pWPcHz18ctAPaeHdTaWR240E1McETAyT +RvI+Nxctr+RqFBr+GxiXhEv0/OZXrKucHmboTGag8GRAMx7AN8EfRWi8tfjNL6S+ +XyJLxw3dcTKa/5vJAQMTe4QIri/Sz2mV7tlS02K+Qa9P8Iuf97F7vWcf3MiKiRf0 +9b4EAIjZ3R2uJQ3eC1gL/pUsenG1Kn6AvlXKmfwMmfYE5sDyiCnuN4s+7M6gU7XB +Wnq4oPL7H1Px4UH4KqppeS7zEFCQcaRRYVtjb7OcBBSbNhihGRkD2PkHArKbInlw +BmMJVkYtKrjmXNBpi8z8GzK/lCQ31mWd/FwY8eRzbujH2MyAkD6ncELXbp4VhDWc +dBskxbFU7cNbyDa5pMrAAbyEfXTCnKsBWIy7ROO4FdDEdRlH3MpM4QSF+1kTdTS/ +IaFx4v9D9/AMa5k5gkPsPbBkrgpLwdNm7JVIAIrgG/hE3mrY+/vZzgzv2rzOZzjF +kJgiFEUt2IyJp9aPRJOWGKEO4Ye96YOsarRlCb46GC93KlH2aJrp6xWX55qBBbNZ +5SNTWFynuYWeyu5c1rycc8GBI+oa0nstI+SX7cTV93F2SVd5Gmjj3Hc4MwARAQAB +tEJSb2xhbmQgSMOkZGVyIChLZXkgZm9yIHNpZ25pbmcgZG93bmxvYWRzKSA8d2Vi +bWFzdGVyQG14Y2hhbmdlLm9yZz6JAj4EEwECACgFAk2H+rYCGwMFCRLMAwAGCwkI +BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEHhafIehuZuDulwP/1rYi3dMgy6kEzkD +hpqBYOCiYodRN3u97YzHssCNGBXT5zncB+tbs6lYr/FH/wcL5PDy+mfgM7GXJIfy +Tcj5GIHFPPv3l/CH18u8rNFLPYbPbPs1vN0Cb1U4AbtwfR1S0bM/QuIjtVxzfHZE +G+iaHfE8nbjGI2oEZWMoQ1At93LcQpH3TQn/FjaAIHG+vwarv+eApRMjW7yXfFVX +HULAX3Qo1ebiUVcmWrBhqOwOsNwtPDULzQ79+QrYirYZ/c/RGK9BRxdh9qmjwdW0 +fORFeMpC9ZEETTM1imxPPg/HAMe1Fwe6vhOcISNi06Dzsq/LxxYFW4QedCXIaHzV +ljRyrNLv1GsIyzfFGqr2nm68NTWQLkRIJwee/kjXiRoynUm5fG+3v4zCS7fdiUqw +VJJeEPDLq83FSOr9F4tzMcYdrjLnGzcmJtRjHAK07W/sMRC3Ponxd6troA6EkXgL +L98btBr+5yFs5UWhKACWykhpcA+nL4pkcTDptFSEkPOwPjreAAjqgcKJPAVLLpyM +Sf8VdBIzpJxMIH5hYLeEql7g6aQmRBJlDngjGy8Jfpb4YS92gWy5TB10MiyqYXby +PaJqjQ2Rj4nFb1G/o6LCvx+28T84wA0hhFBPx5cfipDQmdQEgmWoz2X7YgF2fbNI +3FEN5qhGB4YvkwTJqxKkyzkGHPVWiEYEEBECAAYFAk2H+88ACgkQty+BhcbHvXjF +QQCeOWFg9kVZshvmuH5kVE8+Vn1IT+wAoL/+TSokUQKdAse7T/1mMnX7LT34 +=Bqac +-----END PGP PUBLIC KEY BLOCK----- diff --git a/templates/de/html/10_jahre_mailer_project.tpl b/templates/de/html/10_jahre_mailer_project.tpl new file mode 100644 index 0000000000..77f8765391 --- /dev/null +++ b/templates/de/html/10_jahre_mailer_project.tpl @@ -0,0 +1,6 @@ +
+ : : : 10 Jahre Mailer-Project : : : +
+ +
+
diff --git a/templates/de/html/10_years_anniversary.tpl b/templates/de/html/10_years_anniversary.tpl new file mode 100644 index 0000000000..77f8765391 --- /dev/null +++ b/templates/de/html/10_years_anniversary.tpl @@ -0,0 +1,6 @@ +
+ : : : 10 Jahre Mailer-Project : : : +
+ +
+
diff --git a/templates/de/html/about.tpl b/templates/de/html/about.tpl new file mode 100644 index 0000000000..6b7b79aab5 --- /dev/null +++ b/templates/de/html/about.tpl @@ -0,0 +1,86 @@ +
+ +
+
+ Alle wichtigen Funktionen in der Übersicht: +
+ +
+ · Aufgaben-Mangement: + Support-Anfragen, neue Erweiterungen usw. schnell und einfach verwalten. +
+ +
+ · Erweiterungs-Management: + Egal ob Bettellink, Refback, Verdoppler, alles dies kannst du mit nur + wenigen Mausklicks installieren und eingerichtet bekommen. +
+ +
+ · Updates an der Datenbank + werden nun komfortabel über die Erweiterungen des Scriptes + erledigt. Kein manuelles Einfügen von SQL-Anweisungen per + Datenbanksoftware, sondern vollkommen automatisch (nur der Login im + Adminbereich - Willkommensseite reicht dazu aus). +
+ +
+ · Template-System: Schnelles + und leichtes Einfügen von HTML-Codes (wie Banner-Rotation, + Statistik-Counter usw.) +
+ +
+ · Und auch jede ausgehende + Email kannst du bequem an deine Wünsche anpassen. +
+ +
+ · Modularisierter Aufbau: Klare + Strukturen und mehr Sicherheit gegen Angriffe durch Cracker. +
+ +
+ · Mehrstufiges Sicherheitssystem + fängt nahezu (*) alle Angriffe ab. +
+ +
+ · Datenbank-gestütztes + Menü-System: Schnelles und einfaches Umbauen aller Menüs + einfach per Mausklick. +
+ +
+ · Voll-dynamisches + Referral-System: Einfaches Einrichten von theoretisch unendlich vielen + Referral-Ebenen (ein Referral ist ein geworbenes Mitglied). +
+ +
+ · Per Admin-Bereich + änderbare Kategorien, in der die Mitglieder Mails versenden + können. +
+ +
+ · Theme-Support mit CSS-Dateien: + Das gesamte Design läßt sich an nur sehr wenigen Stellen + komplett per CSS anpassen. Zudem ist das Script komplett XHTML. +
+ +
+ · Anpassbares Aussenden von + Mail-Paketen an die Leistung und Auslastung deines Servers. +
+ +
+ +
+ Wichtiges erwähnt (*):
+ · Keine Garantie auf Sicherheit gegen Angriffe! +
+ +
diff --git a/templates/de/html/aboutme.tpl b/templates/de/html/aboutme.tpl new file mode 100644 index 0000000000..6314c6ae6f --- /dev/null +++ b/templates/de/html/aboutme.tpl @@ -0,0 +1,94 @@ +
+ Über mich: +
+ +
+So, nun habe ich mir mal etwas Zeit genommen, um etwas über mich zu schreiben. +Natürlich verrate ich nicht alles... +;-) Das darfst du im +Chat versuchen, herauszubekommen. +
+ +
+
+Software Patents vs Parliamentary Democracy +
+ This PopUp is button-free! +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 
 Name:   Roland Häder Roland Haeder 
  
Nicknames:  [TGC:] Quix0r, Quix0r, Quixy
  
Geburtstag:  26.09.1977 (um 09:15 geboren)
  
Wo ich wohne:  Uetersen (schon seit über 20 Jahren)
  
Augenfarbe / Haarfarbe:  Beides braun (Haare derzeit so wie auf dem Foto lang)
  
Single?  Nein
  
Sternzeichen:  Waage
+ +
   
Lieblingsessen:  Pizza, Nudeln, Quarksahnetorte, Marzipan, Erdnüsse (gesalzen und geröstet), noch was?
  
Was ich höre:  Am liebsten: Trance und Enigma, aber ich bin offen für vieles anderes: Metal, Hip-Hop, keine dt. Volksmusik!
 
+ diff --git a/templates/de/html/awards.tpl b/templates/de/html/awards.tpl new file mode 100644 index 0000000000..9c9ede74c8 --- /dev/null +++ b/templates/de/html/awards.tpl @@ -0,0 +1,20 @@ +
+
+ {?MAIN_TITLE?} hat folgende Auszeichnungen erhalten: +
+
+ +
+ Gold! + + Seittest.de - Gut +
+ +
+ Es wurde dabei nicht das Script, sondern nur die reine Webseite (Navigation, Übersichtlichkeit, + Inhalte, Design) bewertet. +
diff --git a/templates/de/html/blog.tpl b/templates/de/html/blog.tpl new file mode 100644 index 0000000000..2fd0625289 --- /dev/null +++ b/templates/de/html/blog.tpl @@ -0,0 +1,28 @@ +
+ Mein Blog, mit StatusNet: +
+ +
+ Lange war mein Weblog unter blog.mxchange.org down. Ich hatte + "damals" einen recht schwachen Server (austria031) und + die Spammer hatten tonnenweise Traffic an in geschickt. Dies hatte dazu + geführt, dass mein Server komplett ausgelastet war, sobald ich den Blog + Online nahm. Kaum hatte ich die Software (WordPress ist für mich + weiterhin eine bemerkenswerte Software) gelöscht, war wieder alles im + grünnen Bereich, der Load ging zurück und der Rest der Webseite + war wieder zügig erreichbar. +
+ +
+ Nun versuche ich den Neustart, mit StatusNet und ich muss + sagen, dass ich bis jetzt sehr zufrieden damit bin. +
+ +
+ Hier nun aber der neue Link für die Lesezeichen: +
+ + diff --git a/templates/de/html/bug-tracker.tpl b/templates/de/html/bug-tracker.tpl new file mode 100644 index 0000000000..e92f3f052f --- /dev/null +++ b/templates/de/html/bug-tracker.tpl @@ -0,0 +1,20 @@ +
+ Bug-Tracker - Bitte hier alle Bugs melden: +
+ +
+ Unter der folgenden URL gibt es seit einiger Zeit einen eigenen Bug-Tracker, + wo du gerne Bugs melden kannst. +
+ + + +
+ Falls du mit der Tracker-Software nicht vertraut sein solltest, so kannst + du weiterhin Bugs auch problemlos im Forum + melden. +
diff --git a/templates/de/html/contribute.tpl b/templates/de/html/contribute.tpl new file mode 100644 index 0000000000..a7ea3aa34c --- /dev/null +++ b/templates/de/html/contribute.tpl @@ -0,0 +1,119 @@ +
+
+
+ Mitmachen am Projekt +
+
+ Du kannst auf verschiedener Weise an diesem Projekt mitmachen und dich + dran beteiligen. Zum einem kannst am Programmcode + mitprogrammieren, dann kannst du dich durch + Übersetzungen in andere Sprachen (Englisch, + Französisch, Spanisch uvwm.) mit einbringen. Auch kannst du gerne + das Script auf verschiedenen Umgebungen austesten oder + es eifnach nur verwenden. Zu guter letzt kannst du einfach mein Script + mehr bekannter machen oder einfach nur deinen + Dank äußern. +
+
+ Dass nicht alles ohne "Regeln" geht, sollte dir wohl klar + sein. Erstmal ist das Script unter der GNU General Public + License Version 2 gestellt. Was die im einzelnen für dich + bedeuten kann ich dir natürlich nicht sagen (wäre ja dann + quasi Rechtsberatung). Damit wären wir auch schon beim ersten + Punkt: Am Quellcode mitprogrammieren. +
+
+ Am Quellcode mitprogrammieren +
+
+ Die wichtigsten Informationen zum Mitprogrammieren stehen alle im + Entwicklerteil des Wikis. Dies befindet sich + aktuell noch in der Aufbauphase. Daher greife ich hier mal etwas vor. +
+
+ Zuerst nehme ich nur Quellcode auf, der uneingeschränkt und damit + frei nutzbar ist. Lizenzen wie MIT, Apache, FreeBSD oder X11 finden hier + jedoch kein Zuhause, da ich keinen Lizenzmischmasch mitmache. Es kommt + also nur unter der gleichen Lizenz eingereichter Code in die Repository. + Dies ist jedoch nicht die einzige Bedigung. Auch sollte dein Quellcode + ein Mindestmaß an Qualität aufweisen, da ich nicht ewig an + der selben Codestelle herumreparieren möchte, er muss also auch + funktionieren und nicht mit anderen Komponenten der Software + harmonieren. Auch sollte dein Code sich an die "API" meines + Scriptes anbinden, sprich z.B. SQL_QUERY_ESC() zum sicheren Einbinden + von externen Daten verwenden und nicht die direkte PHP-Funktion + mysql_query(). Kurz: Verwende möglichst immer Funktionen, die mein + Script bereitstellt. Mehr ausführlichere Erklärungen dazu + folgen im Wiki. +
+
+ Übersetzung der Sprachelemente +
+
+ Derzeit wird nur die deutsche Sprache angeboten, die englische Sprache + ist unvollständig. Auch gibt es Überlegungen, wie die + Sprachelemente im Menü besser zu verwalten ist, derzeit sind die + Texte direkt in der Datenbank gespeichert. Es kann also nur eine Sprache + zur Zeit verwendet werden, ein Wechsel der Sprache h&auuml;tte zur + Folge, dass der deutsche Text komplett übersetzt werden muss und + kann somit nicht "dynamisch" ausgetauscht werden. +
+
+ Ideen dazu habe ich bereits, die ich im Wiki noch dokumentieren werde. +
+
+ Austesten der Software und Umgang Entwicklerversionen +
+
+ Willst du diese Software austesten, so solltest du dazu einiges + beachten. Viele Erweiterungen haben noch den so gennanten + "Entwicklerstatus" und sind in der Aufgabenauswahl mit + "Entwicklerversion" gekennzeichnet. Installiere diese nur, + wenn du immer den neusten Stand (neuste Revision) hast. Auch wird bei + der Entwicklung der Erweiterunegn keine Rücksicht auf eventuell + bestehende Installationen genommen, dies geschieht erst, wenn die + Erweiterung als "produktiv einsetzbar" markiert ist. +
+
+ Wenn du also eine in der Entwicklung befindlichen Erweiterung + installiert hast und ein Update hochgeladen hast, so solltest du zuvor + alle Entwicklerversionen deinstallieren, damit du immer das neuste + Datenbanklayout hast (dies hat am meisten für Bugmeldungen + gesorgt). Generell solltest du mich aber kurz vor dem Installieren der + Erweiterung ansprechen (Chat, Mail) und auf meine Tipps und Hinweise + abwarten. +
+
+ Mach das Mailer-Projekt bekannter +
+
+ Wie auf vielen anderen Webseiten auch geschrieben, die + Mund-Zu-Mund-Propaganda ist die beste Werbung für eine Webseite. + Wenn du also das Mailer-Projekt so gut findest, erzähle es deinen + Freunden, Bekannten und Verwandten weiter, die einen Paidmailer starten + wollen und eine Alternative suchen. Denn dieses Script ist in seiner + Form derzeit einmalig, nicht nur wie es geschrieben ist, sondern auch + wegen der ausgewählten Lizenz. Dies wurde mir bereits schon + mehrfach mitgeteilt. Du kannst natürlich auch gerne diese Seite + verlinken. Dazu gibt es unter Link us viele Banner und + andere Werbemittel, die gerne zu diesem Zweck in deine Homepage + einbinden kannst. Sehe aber bitte davon ab, diese Seite in z.B. + Besuchertausche zu registrieren, dies führt nur zur erhöhten + Serverlast und meistens auch "Trashtraffic", den keiner + gebrauchen kann. +
+
+ Deinen Dank an das Mailer-Projekt aussprechen +
+
+ Schreibe dazu einfach einen Beitrag im Forum Lob und Kritik. +
+ +
+
diff --git a/templates/de/html/delphine-helfen-kind.tpl b/templates/de/html/delphine-helfen-kind.tpl new file mode 100644 index 0000000000..9fa6e318e6 --- /dev/null +++ b/templates/de/html/delphine-helfen-kind.tpl @@ -0,0 +1,53 @@ +
+ + + + + + + + + + + + + + + +
+ Verein für Kinder mit besonderen Bedürfnissen e.V.tracker + + Verein für Kinder mit besonderen Bedürfnissen e.V.
+
+ Kreissparkasse Südholstein
+ Konto: 850 13 335
+ BLZ: 230 510 30 +
+
+ Sie möchten uns spenden? Was wir gut gebr /auchen könnten, sehen Sie hier! +
+ Was wir tun:
+
+ Wir helfen behinderten, hilfsbedürftigen Kindern und deren Familien, die ebenfalls + delphinunterstützte Therapien anstreben. Dies geschieht durch Information, + Beratung und finanzielle Unterstüzung. Wir wollen so dazu beitragen, dass Lebensqualität + verbessert und stabilisiert wird. Da Eltern die Kosten für delphingestützte Therapien im + Ausland selbst aufbringen müssen -z.B. in Key Largo (Florida) etwa 13.000 Euro- benötigt + unser Verein möglichst viele Mitglieder,Sponsoren und Spenden. Dies umso mehr, als wir nun + nach unserer Satzungs- änderung bundesweit helfen können. +
+ Verein für Kinder mit besonderen Bedürfnissen e.V. +
+ Copyright © by Verein für Kinder mit besonderen Bedürfnissen e.V. +
+
diff --git a/templates/de/html/demo.tpl b/templates/de/html/demo.tpl new file mode 100644 index 0000000000..2a5050f43f --- /dev/null +++ b/templates/de/html/demo.tpl @@ -0,0 +1,31 @@ +
+ Zugang zur Demo-Installation +
+ +
+ Unter der Adresse mxchange-demo.de findest du mein Script mit + Zugangsdaten zum Administrationsbereich installiert vor. Bitte verstehe, dass + du dort natürlich nicht alles ändern kannst, da ich einiges nicht + verändert haben möchte. +
+ +
+ Dies betrifft folgende Punkte:
+
+ · Alle drei Menuüsysteme (nicht änderbar, + löschbar oder sperrbar, auch sind keine neuen Menüpunkte hinzufügbar.)
+ · Referral-Banner (gleiches gilt hierwie im + Menüsystem).
+ · Admin-Account ändern und Hinzufügen
+ · Zugriffskontrollzeilen verwalten (ACLs)
+ · Wartungsmodus akvivieren/deaktivieren.
+
+ +
+ Aktueller Hinweis:
+ Derzeit ist allerdings der Admin-Zugang demo mit dem + gleichen Passwort demo nicht eingerichtet, da ich das + Script noch besser gegen Änderungen an den obengenannten + Einstellungen durch den Demo-Admin absichern will. +
diff --git a/templates/de/html/donate.tpl b/templates/de/html/donate.tpl new file mode 100644 index 0000000000..f0abb490da --- /dev/null +++ b/templates/de/html/donate.tpl @@ -0,0 +1,52 @@ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Unterstütze mich bitte! +
 
  + Spende dem {?MAIN_TITLE?}-Projekt
+
 
 
  + Meine privaten Verkäufe auf DiscoGS.com +  
 
+ Ich kürde dich hier gerne auflisten!
+ Spende mindestens 5 € an mich! +
 
  + Diese Spender wollten gerne öffentlich gelistet sein:
+
+ Du willst hier nicht mehr gelistet sein? Kurzer Anruf/Mail genügt! +
+
+ · Herr Torsten Andreesen (Link: Ohne Link)
+ · Herr Günter Enders (Link: Link veraltet)
+ · Herr Walter Ochsendorf (Link: Ohne Link)
+
+
 
 
+
diff --git a/templates/de/html/downloads.tpl b/templates/de/html/downloads.tpl new file mode 100644 index 0000000000..f22b363323 --- /dev/null +++ b/templates/de/html/downloads.tpl @@ -0,0 +1,39 @@ +
+
+
+ Jeder, der dieses Script herunterlädt, hat die GNU General Public + License der Version 2 oder jede spätere Version gelesen und + akzeptiert. +
+ +
+ Download des Scriptes +
+ +
+ Wichtiger Beta-Hinweis:
+ Das Script ist noch im Beta-Stadium und ist somit nicht + "stabil", da es immer wieder Bugs (Programmierfehler) haben + kann. Da ich nicht alle selber finden kann, bin ich auf die Mithilfe von + vielen Benutzern, wie z.B. wie dir angewiesen. Daher meine dringende + Bitte an dich: Installiere das Script, teste es aus, melde jeden Bug in + meinem Forum oder Bug-Tracker und habe viel + Durchhaltevermögen. Dafür möchte ich mich schon mal im + Voraus ganz herzlichst bedanken. +
+ + + +
+ Lizenz: GNU General Public License + Version 2 oder spätere Versionen
+ Hier gibt es die wichtigste Anleitung im Support-Forum. Bitte + ebenfalls die Anleitung aus der README.txt versuchen. :-) +
+
+
diff --git a/templates/de/html/faqs.tpl b/templates/de/html/faqs.tpl new file mode 100644 index 0000000000..da7df986fa --- /dev/null +++ b/templates/de/html/faqs.tpl @@ -0,0 +1,776 @@ +
+ Aktueller Hinweis vom 26.08.2011:
+
+ Diese Supportdatenbank bezieht sich auf sehr alte Versionen des Scriptes + und sind nur aus Archivierungsgründen hier weiter erhalten. Du + solltest immer im Wiki als + erstes nachsehen, dort sind Hilfestellungen zur aktuellen Revision + eingestellt (bzw. noch im Aufbau). +
+ +
+ Übersicht zur Support-Datenbank (veraltet):
+
+ +
+ 1. Anfrage: Ich habe nun alle PHP-Dokumente hochgeladen. Welche SQL-Dateien lade ich nun hoch?
+ 2. Anfrage: Wie aktiviere ich den Mailversand? (Bzw. wie bekomme ich die Meldung weg?)
+ 3. Anfrage: Ok, nun habe ich mich selber angemeldet, kann aber 0 Mitglieder erreichen!
+ 4. Anfrage: Ich habe nun die Erweiterung html und html_mail hochgeladen und erhalte nur Fehlermeldungen! (deaktiviert)
+ 5. Anfrage: Nachdem ich auf die Version x.x.x aktualisiert habe und auch die upgrade.php ausgeführt habe, erhalte ich merkwürdige Ausgaben des Scriptes (Design sieht verschoben aus oder einige Tabellen werden nicht korrekt angezeigt).
+ 6. Anfrage: Ok, ich habe nun die CSS-Klassen übernommen und auch die neuen Templates hochgeladen, aber es gibt noch immer noch Darstellungsfehler!
+ 7. Anfrage: Ich habe unter Mailbuchung beim Framekiller-Test nur eine weisse Seite vor mir.
+ 8. Anfrage: Ausgesendete Mails, sowie Bestätigungslinks kommen bei mir an! (nur pre27-Version)
+ 9. Anfrage: Wo füge ich am geeignesten meine Banner-/ Statistik-/ sonstige Codes ein?
+ 10. Anfrage: Die Darstellung des Scriptes sieht uner dem IE schlimmer aus als unter Netscape! Woran liegt das?
+ 11. Anfrage: Ich möchte gerne neue Menüpunkte im Gast-/Mitgliedsmenü hinzufügen. Wo fange ich am Besten an?
+ 12. Anfrage: Der Bestätigungcode klappt bei mir nicht! Wie kann der Mailtausch dennoch bei mir zum Laufen gebracht werden?
+ 13. Anfrage: Ich habe eine Auszahlungsanfrage erhalten, kann aber diese nicht bearbeiten!
+ 14. Anfrage: Wie richte ich die neue rewrite-Erweiterung ein?
+ 15. Anfrage: Ich habe mir die Erweiterung abcxyz heruntergeladen und auch installiert. Dennoch können die Mitglieder nicht darauf zugreifen!
+ 16. Anfrage: Es sind sehr viele Patches / aktualisierte Erweiterungen vorhanden. Wie spiele ich diese am optimalsten ein?
+ 17. Anfrage: Ich habe den Bestätigungscode eingegeben und wollte per RETURN-Taste bestätigen. Nun erhalte ich die Meldung, dass ich einen falschen Code eingegeben habe, obwohl er richtig ist.
+ 18. Anfrage: Ich erhalte von meinen Mitgliedern den Hinweis, dass das Design schief und krum aussieht. Wenn ich mir als Gast dies ansehe, kann ich gleiches festellen!
+ 19. Anfrage: Welche Erweiterungen sollte ich aktuell halten? Und welche Templates sollte ich anpassen?
+ 20. Anfrage: Ich bin bei einem Free-Hoster und habe dort das Script installieren können, was muss ich alles beachten?
+ 21. Anfrage: Wieso kann ich mich nicht einloggen, obwohl ich alles richtig gemacht habe?
+ 22. Anfrage: Der Bestätigungscode beim Bestätigen von Mails wird nicht angezeigt!
+ 23. Anfrage: Wo finde ich aktualisierte Erweiterungen? Unter "Updates prüfen" finde ich sie nicht!
+ 24. Anfrage: Und wie kann ich diese dann aktualisieren?
+ 25. Anfrage: Ich habe nun das Script installiert. Im Gastbereich kann ich aber das Menü nicht finden und es wird eine Fehlermeldung ausgegeben!
+ 26. Anfrage: Wie funktioniert das eigentlich mit der Tabelle "Registrierte Erweiterungen" (CSS / Aktiviert / Versionsnummer) ?
+ 27. Anfrage: Ich hab mich bei einem Affiliate-System angemeldet und muss nun den HTML-Code einbinden. Wie tue ich dies, dass es auch funktioniert?
+ 28. Anfrage: Nachdem ich das Script installiert habe, bekomme ich Fehlermeldungen mit Table mxchange_themes does not exists!
+ 29. Anfrage: Es ist die Rede von Neuinstallieren einer Erweiterung per Adminmenü!
+ 30. Anfrage: Tabellen wie mxchange_config und mxchange_extensions fehlen!
+ 31. Anfrage: Wenn ich die "Sonstige Einstellungen" abspeichern will, erhalte ich MySQL-Fehler.
+ 32. Anfrage: Worin besteht der Unterschied zwischen dem EMail-Templates normal-mail.tpl und bonus-mail.tpl?
+ 33. Anfrage: Ich habe x {?POINTS?} bei der Mailbuchung gutgeschrieben bekommen. Wieso ist dennoch mein Kontostand 0 {?POINTS?} ?
+ 34. Anfrage: Was bedeutet "Referral-Ebene 0" und wieso steht die auf 100%?
+ 35. Anfrage: Ich erhalte die Fehlermeldung Unknown column 'mt_word' in 'field list' beim Speichern von Einstellungen.
+ 36. Anfrage: Bei der Installation des Scriptes, kam die Fehlermeldung, dass der Finalizer die Installation nicht konnte abschliessen konnte.
+ 37. Anfrage: Wenn meine Mitglieder ihre Profildaten ändern wollen, erhalten sie ein leeres Formular, auch werden keine Daten geändert!
+ 38. Anfrage: Kann ich einem bestimmten Mitglied Adminrechte geben?
+ 39. Anfrage: Ich werde immer in den Admin-Bereich weitergeleitet. Was mache ich falsch, bzw. habe ich übersehen?
+ 40. Anfrage: Was bedeutet Erweiterungen installieren und aktivieren? Ich habe sie doch bereits hochgeladen!
+ 41. Anfrage: Muss ich aus dem Archiv ext-blabla.zip nur ext-blabla.php hochladen?
+
+ +
+ +
+ 1. Anfrage: Ich habe nun alle PHP-Dokumente hochgeladen. Welche SQL-Dateien lade ich nun hoch?
+
+ Bei der Erst-Installation laden Sie bitte nur folgende SQL-Dateien hoch: +
    +
  • install.sql
  • +
  • install-de.sql (Deutsche Sprachdatei)
  • +
  • upgrade-full.sql
  • +
  • upgrade-de.sql (Deutsche Sprachdatei)
  • +

+ Nach der Installation / Upgrade bitte immer alle upgrade- und install-Scripte bzw. -SQL-Dateien vom Server löschen und wieder die evtl. geänderten Zugriffsrechte wiederherstellen!
+
+ + + +
+ +
+ 2. Anfrage: Wie aktiviere ich den Mailversand? (Bzw. wie bekomme ich die Meldung weg?)
+
+ Die Meldung Mailversand ist derzeit deaktiviert. hat schon vielen Webmastern Kopfschmerzen bereitet. Dabei ist dies ganz einfach:
+
+ Im Template member-welcome.tpl.de finden Sie die Meldung wieder! :-)
+
+ Das Aktivieren des Mailversandes kann entweder automatisch (nur mit neusten Patches; per Admin-Bereich änderbar) oder manuell (mit neustem Patch ist die Auto-Funktion mit einer 0 abzuschalten) geschehen.
+
+ Automatisches Einshalten des Mailversandes erfolgt, sobald eine einstellbare Grenze an empfangsbereiten Mitgliedern erreicht ist. Der Standart-Wert ist hierbei 100 Mitglieder.
+
+ Manuell läßt sich der Versand wie folgt einschalten:
+
    +
  • Lassen Sie folgenden SQL-Befehl ausführen: UPDATE mxchange_mod_reg SET locked='N', hidden='N' WHERE module='order' LIMIT 1
  • +
  • Unter Menü-Verwaltung -> Mitgliedsmenü bearbeiten wählen Sie order aus, klicken auf Ändern und aktivieren dann den Menüpunkt.
  • +
+
+ + + +
+ +
+ 3. Anfrage: Ok, nun habe ich mich selber angemeldet, kann aber 0 Mitglieder erreichen!
+
+ Sie können als Mitglied (egal ob als Admin zusätzlich eingeloggt oder nicht) nicht an sich selbst eine Mail schicken. Laden Sie doch einfach ein paar Ihrer Freunde ein, sich anzumelden. Oder melden Sie Ihren Sohn / Ihre Tocher mit an!
+
+ Seien Sie aber mit Anmelden von anderen Leuten vorsichtig oder lassen Sie es ganz sein. +
+ + + +
+ +
+ 4. Anfrage: Ich habe nun die Erweiterung html und html_mail hochgeladen und erhalte nur Fehlermeldungen!
+
+ Die Erweiterungen html und html_mail konkurrieren aneinander. In den späteren Versionen dieses Mailtauschscriptes wird dies auch dann auch berücksichtigt.
+
+ Sie müssen nun mit FTP-Client und MySQL-Frontend folgendes erledigen: +
    +
  • Löschen Sie als erstes alle *html*- bzw. *html_mail*-Dateien vom Server. Um Platz zu sparen, sollten Sie auch das Template entfernen.
  • +
  • Anschließend lassen einen der folgende SQL-Queries ausführen, je nachdem welche Erweiterung Sie vom Server gelöscht haben:
    + DELETE LOW_PRIORITY FROM mxchange_extensions WHERE ext_name='html' LIMIT 1 bzw.
    + DELETE LOW_PRIORITY FROM mxchange_extensions WHERE ext_name='html_mail' LIMIT 1
  • +

+ Nun sollte - wenn nicht noch andere Script-Fehler existieren - Ihr Mailtausch wieder funktionieren. +
+ + + +
+ +
+ 5. Anfrage: Nachdem ich auf die Version x.x.x aktualisiert habe und auch die upgrade.php ausgeführt habe, erhalte ich merkwürdige Ausgaben des Scriptes (Design sieht verschoben aus oder einige Tabellen werden nicht korrekt angezeigt).
+
+ Es kann mal ab und an vorkommen, dass ich bei Updates / Patches neue CSS-Klassen mit hinzufüge. Diese müssen Sie dann aus der originalen CSS-Datei in Ihre übernehmen und dann Ihren Wünschen anpassen.
+
+ Zudem sollten Sie mal einen Blick in den templates-Order werfen, ich habe auch einige HTML-Codes aus dem Script als Template ausgelagert, damit Sie diese komfortabler anpassen können +
+ + + +
+ +
+ 6. Anfrage: Ok, ich habe nun die CSS-Klassen übernommen und auch die neuen Templates hochgeladen, aber es gibt noch immer noch Darstellungsfehler!
+
+ Beispielsweise habe ich beim Update von pre26 auf pre27 die master-Klasse geändert. Mit einem guten Editor sollten Sie nach dieser Klassenbezeichnung suchen und ein width: 100%; - oder wie breit auch immer die Hauptklasse sein soll - mit einfügen. Mit dieser Klasse beispielsweise stellen Sie die generelle Breite Ihres Mailtausches ein. +
+ + + +
+ +
+ 7. Anfrage: Ich habe unter Mailbuchung beim Framekiller-Test nur eine weisse Seite vor mir.
+
+ Es fehlt vermutlich in der Datenbank eine Tabellenspalte. Lassen Sie folgenden SQL-Befehl ausführen (Backup ist nicht nötig, kann aber nicht schaden):
+
+ alter table `mxchange_pool` add `zip` varchar(6) not null default '' +
+ + + +
+ +
+ 8. Anfrage: Ausgesendete Mails, sowie Bestätigungslinks kommen bei mir an! (nur pre27-Version)
+
+ Dieses Problem existiert nur in der pre27-Version (die teilweise auch als pre26 ausgegeben wird, bitte korregieren Sie dann in inc/databases.php die Konstante FULL_VERSION!). Bitte laden Sie sich dazu das 102'er Patch herunter. Er entsteht folgendermaßen:
+
+ Die Funktion SEND_EMAIL() kann zwei Arten von Empfängern verarbeiten: User-ID und eMail-Adresse. Bei der User-ID wird versucht, die eMail-Adresse aus der Datenbank zu laden, schlägt dies fehl, so ist die TO-Variable leer, die Funktion wertet dies als Fehler und leitet die Mail an den Webmaster weiter.
+
+ Wenn nun eine eMail-Adresse als Empfänger angegeben ist, so soll die Mail direkt an diese gesendet werden. Leider existiert in der pre27 der Fehler, dass die Adresse nicht sauber von der User-ID (nur eine Zahl) getrennt erkannt wird und das Script macht einen Fehler. +
+ + + +
+ +
+ 9. Anfrage: Wo füge ich am geeignesten meine Banner-/ Statistik-/ sonstige Codes ein?
+
+ Ihre HTML-Codes fügen Sie am besten in die vorgesehenen Templates und auf gar keinem Fall im Script selber ein. Ihre 468x60-Banner beispielsweise können Sie gut im Bestätigungsframe unterbringen. Verwenden Sie dazu das mailid_banner.tpl.de-Template. Ihren 88x31-Button-Code (und auch Statistik-Code) können Sie am besten im guest_advert.tpl.de- bzw. member_advert.tpl.de-Template einfügen. Der Code wird dann unterhalb des jeweiligen Menüs eingebunden.
+
+ Haben Sie eine weitere Stelle gefunden, so teilen Sie es mir doch gerne per Mail mit. Für Verbesserungsvorschläge bin ich auch hier gerne offen. +
+ + + +
+ +
+ 10. Anfrage: Die Darstellung des Scriptes sieht uner dem IE schlimmer aus als unter Netscape! Woran liegt das?
+
+ Da ich persönlich von Microsoft abgeneigt bin und auch auschließlich Linux einsetze, hatte ich nie die Gelegenkeit gehabt, mal meine Webseite mit dem IE zu betrachten. Vor kurzem ist es mir wieder gelungen, meine Virtual Maschine (VMWare) mit W!ndow$ 98 zu starten.
+
+ Sie müsen folgdenden Eintrag in der css/general.css machen: +
    +
  • In Klasse guest_content, member_content und admin_content ein width: 99% einbauen.
  • +
  • Das neuste 121-Patch runterladen
  • +
  • In allen späteren Versionen ist dies bereits behoben. Auch habe ich das Patch entfernt!
  • +
+
+ + + +
+ +
+ 11. Anfrage: Ich möchte gerne neue Menüpunkte im Gast-/Mitgliedsmenü hinzufügen. Wo fange ich am Besten an?
+
+ Sie müssen dazu erstmal die Architektur meines Scriptes verstehen: +
    +
  • Es gibt zwei Sorten von Menüdateien: action-???.php und what-???.php.
  • +
  • action-???.php sind hierbei die Blöcke-Dateien und what-???.php die Untermenüpunkte.
  • +

+
Es werden also zuerst die action-???.php und dann die damit verknüpften what-???.php's geladen.
+
+ Wenn Sie also beispielsweise einen neuen Block angelegen wollen, so üssen Sie eine action-???.php im jeweiligen Menüordner (ab inc/modules/ und dann admin, guest bzw. member sind dann die Menüordner) anlegen. Verwenden Sie dazu die vordefinierte action- Datei oder speichern Sie eine bestehende mit neuem Namen um.
+
+ Mit den Menüpunkten verfahren Sie genauso, dann aber die vordefinierte what- Datei oder eine bestehende editieren und unter neuem Namen speichern. (Tipp: Nehmen Sie die what-infos.php, und speichern Sie diese neu ab. Dann können Sie ein gleichnamiges Template zum Einbauen Ihrer HTML-Codes verwenden! Heisst also die what-Datei what-test.php, so wird versucht, ein Template test.tpl.de zu laden!)
+
+
+ Damit ist nun noch nicht alles getan! Das System "sieht" noch nicht mal die Dateien, da sie nicht in der Datenbank stehen. Gehen Sie wie folgt vor: +
    +
  • Loggen Sie sich in den Admin-Bereich ein: http://ihre-basis-adresse/zum-script/admin.php
  • +
  • Oder wenn Sie bereits als Admin noch eingeloggt sind, können Sie links im Gastmenü auf Zum Admin-Bereich klicken. Sie werden dann weitergeleitet.
  • +
  • Klicken Sie im Admin-Menü auf "Menü-System" und dann für ein neues Gast-Menü auf "Gast-Menü hinzufügen". Paralell dazu existiert ein Link für das Mitglieder-Menü.
  • +
  • Unter Titel geben Sie den Titel ein, der als Linktitel dann anklickbar ist. Derselbe erscheint auch oben in der Sie sind hier Leiste.
  • +
  • Jetzt wird es fallabhängig: Wollen Sie nur einen Block erzeugen, wählen Sie nur unter Hauptmenü die entsprechende action-Datei aus. Wollen Sie hingegen einen Menüpunkt erzeugen, wählen Sie unter Hauptmenü einen bestehenden Block aus und unter Untermenü die entsprechende what-Datei aus.
  • +
  • Zum testen sollten Sie erstmal entweder das neue Menü verdecken (Gäste können es zwar nicht sehen, aber dennoch durch Direkteingabe aufrufen) oder sperren (nur der Admin kann es aufrufen und auch sehen).
  • +
  • Später können Sie es dann immer noch freigeben.
  • +
+
+ + + +
+ +
+ 12. Anfrage: Der Bestätigungcode klappt bei mir nicht! Wie kann der Mailtausch dennoch bei mir zum Laufen gebracht werden?
+
+ Ist wegen Scripteupdates veraltet. (obsulete ;) ) +
+ + + +
+ +
+ 13. Anfrage: Ich habe eine Auszahlungsanfrage erhalten, kann aber diese nicht bearbeiten!
+
+ Der häufigste Grund dafür war, dass der Webmaster die vom System erzeugte Aufgabe gelöscht hatte. Diese muss aber unbedingt bis zur Annahme oder Ablehnung der + Aufforderung bestehen bleiben! In den späteren Versionen plane ich, diese Unangehmlichkeit zu umgehen. Solange haben Sie nun ein Hinweis in der Mail. +
+ + + +
+ + + + + +
+ +
+ 15. Anfrage: Ich habe mir die Erweiterung abcxyz heruntergeladen und auch installiert. Dennoch können die Mitglieder nicht darauf zugreifen!
+
+ Vergessen Sie das Aktivieren der Erweiterung nicht! Dies ist nicht nur deswegen wichtig, damit verknüpfte Menüpunkte für Gäste/Mitglieder einsehbar werden - als Admin sehen Sie alles - sondern damit auch die Daten zur Erweiterung gehöhrend geladen werden, auch wenn ein Mitglied/Gast eingeloggt ist.
+
+ Klingt komplizierter, als es ist. Merken Sie sich einfach folgendes:
+
+ Ist die Erweiterung nicht aktiv, kann nur der Admin sie verwenden und sie wird dann auch nur geladen. Dem Gast/Mitglied bleiben also deaktivierte Erweiterungen vorenthalten.
+
+ Dieses gilt übrigens auch für die sehr wichtige Erweiterung sql_patches! Ist diese nicht aktiv, sehen Ihre Mitglieder keine Navigationspunkte im Menü (Sie als Admin ja), und das Menü sieht auch etwas verschoben aus. +
+ + + +
+ +
+ 16. Anfrage: Es sind sehr viele Patches / aktualisierte Erweiterungen vorhanden. Wie spiele ich diese am optimalsten ein?
+
+ Es gibt natürlich keine perfekte und mit wenig - oder gar keinem - Aufwand Anleitung hierzu. Versuchen Sie sich einfach etwas an diese relativ einfachen Schritte zu halten: +
    +
  • Laden Sie alle verfügbaren Patches und alle Erweiterungen herunter, die Sie haben wollen.
  • +
  • Entpacken Sie als erstes die Patches in der durchnummerierten Reihenfolge (der Dateiname fängt immer mit einer durchlaufenden Zahl an!)
  • +
  • Und zwar entpacken Sie diese alle mit Verzeichnisstruktur in ein gemeinsames Zielverzeichnis!
  • +
  • Danach sind die Erweiterungen dran. Hier können Sie wegen der stetigen Namensunterschiede "nach gut Düngen" entpacken.
  • +
  • Laden Sie sich vor dem Upload Ihre zuvor geänderten Templates/CSS-Dateien runter! Diese können zum Beispiel durch den Einbau von Banner-Rotationen geändert sein.
  • +
  • Laden Sie dann alles gemeinsam hoch.
  • +
  • Danach loggen Sie sich im Admin-Bereich ein (erst den kompletten Upload abwarten!) und gucken sich die neuen Aufgaben an.
  • +
  • Lesen Sie sich ruhig die Update-Texte durch. Manchmal sind dort nützliche Tipps untergebracht!
  • +
  • Stellen Sie alles ein, wie Sie es haben wollen.
  • +
+ Das sollte es dann schon gewesen sein... +
+ + + +
+ +
+ 17. Anfrage: Ich habe den Bestätigungscode eingegeben und wollte per RETURN-Taste bestätigen. Nun erhalte ich die Meldung, dass ich einen falschen Code eingegeben habe, obwohl er richtig ist.
+
+ Das Bestätigen von Mails per Druck auf die RETURN-Taste ist unter dem Internet Explorer derzeit gestöt. Machen Sie daher folgendes: +
    +
  • Deaktivieren Sie den Bestätigungscode im Admin-Menü unter Einstellungen --> Sonstige Einstellungen, indem Sie eine 0 eintragen.
  • +
  • Oder: Editieren Sie das Template mailid_enter_code.tpl und fügen Sie einen Hinweis ein, dass Ihre Mitglieder nur mit Klicken auf den Button bestätigen können.
  • +
+
+ + + +
+ +
+ 18. Anfrage: Ich erhalte von meinen Mitgliedern den Hinweis, dass das Design schief und krum aussieht. Wenn ich mir als Gast dies ansehe, kann ich gleiches festellen!
+
+ Seit einigen Versionen gibt die Möglichkeit, die CSS-Dateien per Admin-Bereich einzubinden oder + auch nicht einbinden zu lassen. Wenn Ihnen Ihre Mitglieder also oben genannten melden, müssen Sie + die CSS-Dateien im Admin-Bereich aktivieren. Ich habe dies deswegen gemacht, damit Sie gezieht die + CSS-Dateien auf Fehler hin (dopptelte CSS-Klassen, etc.) analysieren können, indem Sie die + CSS-Dateien deaktivieren und nicht umständlich von Server löschen und später wieder + hochladen müssen.
+
+ Sie können die CSS-Dateien wie folgt aktivieren und auch deaktivieren: +
    +
  • Gehen Sie im Admin-Menü auf Verschiedenes --> Erweiterungen und wählen Sie gewünschten Erweiterungen aus.
  • +
  • Klicken Sie auf Ändern und stellen Sie unter CSS? die Auswahl auf Ja um.
  • +
  • Speichern Sie dann die Einstellungen mit Einstellungen speichern ab.
  • +
+ Nun sollte auch für Ihre Mitglieder/Gäste alle CSS-Dateien geladen werden. +
+ + + +
+ +
+ 19. Anfrage: Welche Erweiterungen sollte ich immer aktuell halten? Und welche Templates sollte ich anpassen?
+
+ Halten Sie folgende Erweiterungen immer aktuell:
+ · sql_patches
+
+ Auch folgende Erweiterungen sich sehr wichtig für den "komfortableren" Betrieb des Scriptes:
+ · admins
+ · autopurge
+ · bonus
+ · cache
+ · mailid
+ · mediadata
+ · mods
+ · newsletter
+ · nickname
+ · optimize
+ · other
+ · register
+ · repair
+ · task
+ · user
+
+ Passen Sie mindestens folgende Templates noch an: (zu finden unter /templates/de/html/)
+ · index.tpl
+ · impressum.tpl
+ · agb.tpl
+
+ Beschreibungen zu den Erweiterungen finden Sie hier! +
+ + + +
+ +
+ 20. Anfrage: Ich bin bei einem Free-Hoster und habe dort das Script installieren können, was muss ich alles beachten?
+
+ · Einige Free-Hoster binden - egal wo im Script - eigenen Content (Iframes, PopUps usw.) ein.
+ · Diese eingebundenen Codes können die Funktion des Scriptes sehr stark beeinträchtigen.
+ · Wenn Sie also Probleme mit dem Bestätigungscode haben, deaktivieren Sie ihn im Admin-Menü, das Ändern von Templates ist hier nicht mehr nötig!
+ · Wenn die CSS-Dateien vom Script css.php nicht ordnungsgemäß wiedergegeben werden und den HTML-Code vom Free-Hoster enthalten, schalten Sie den Ausgabemodus des CSS-Codes im Admin-Bereich um auf direkt.
+
+ + + +
+ +
+ 21. Anfrage: Wieso kann ich mich nicht einloggen, obwohl ich alles richtig gemacht habe?
+
+ Viele Webmaster, die das Problem an mich herangetragen haben, hatten ihr Script auf einem Free-Hoster installiert (es ist nicht unmöglich mein Script auf + einen Free-Hoster zu installieren! Lesen Sie weiter!) und sich eine kostenlose Domain geholt. Anschliessend haben sie versucht, sich in den Admin-Bereich einzuloggen. Sie + wurden aber permanent ohne Fehlermeldung abgelehnt, obwohl Passwort, Login stimmten.
+
+ "Schuld daran" sind die Browser-Einstellungen, die das Setzen von Cookies durch Drittanbieter nicht gestatten. In diesem Fall ist nämlich Ihre Free-Hoster- + URL der Drittanbieter, weil sie anders lautet, als Ihre Free-Domain. Was Sie machen können ist, dass Sie die Free-Domain von "URL-Hiding durch ein Frameset" + umstellen auf "Direkte Weiterleitung (kein URL-Hiding)" (Bezeichnungen können abweichen!). Dann sollte das Problem im Normalfall beseitigt sein. +
+ + + +
+ +
+ 22. Anfrage: Der Bestätigungscode beim Bestätigen von Mails wird nicht angezeigt!
+
+ Der grafische Bestätigungscode wird Ihren Mitgliedern beim Bestätigen von Mails angezeigt. Er erscheint, sobald die Zeit im Bestätigungsframe abgelaufen ist + und muss im Eingabefeld wiederholt werden.
+
+ Dieser Bestätigungscode wird grafisch angezeigt und wird dynamisch erstellt. Dabei wird ein Bild namens code_bg.jpg oder code_bg.png verwendet, + welche beide ein kariertes Muster hinter dem Code erzeugen. Es wird also entweder ein JPEG-Bild oder ein PNG-Bild verwendet. Welches wird aber nun verwendet?
+
+ Auf Servern einiger Webmaster schien die JPEG-Unterstützung serverseitig nicht vorhanden zu sein. Ist dies der Fall, so schaltet mein Script um auf + PNG-Support, welcher schon öfters auf dem Server installiert ist.
+
+ Ist dies aber auch nicht der Fall, sollten Sie den Bestätigungscode im Admin-Bereich unter "Sonstige Einstellungen" ganz abschalten. (Code-Länge = 0!) +
+ + + +
+ +
+ 23. Anfrage: Wo finde ich aktualisierte Erweiterungen? Unter "Updates prüfen" finde ich sie nicht!
+
+ Sie finden die aktualisierten Erweiterungen genauso wie neue Erweiterungen unter folgenden Menüweg:
+
+ Verschiedenes --> Erweiterungen --> Nach neuen Erweiterungen suchen...
+
+ Den letzteren Link finden Sie unterhalb der Tabelle mit den ganzen Erweiterungen! +
+ + + +
+ +
+ 24. Anfrage: Und wie aktualisiere ich diese dann?
+
+ Auch hier können Sie im Grunde genommen die gleiche Vorgehenweise wie beim Updaten des Grundscriptes vorgehen:
+
+ · Entpacken Sie die Erweiterung in ein neues, leeres Verzeichnis.
+ · Alle geänderten Templates (also auch die, wo Sie Ihren Bannercode eingebaut haben!) sichern
+ · Allerdings brauchen Sie hier nur die Templates von der Erweiterung sichern, aber alle geänderten sichern schadet auch nicht...
+ · Laden Sie alles(!) von der Erweiterung hoch und überschreiben Sie alles.
+ · Laden Sie die gesicherten Templates wieder hoch und überschreiben Sie wieder alles.
+ · Wobei: Admin-Templates (Ordner: templates/de/html/admin/) sollten Sie immer mit den neuen Templates überschreiben!
+ · Rufen Sie den Admin-Bereich in der Willkommensseite auf (http://ihremailtauschseite/admin.php) und gucken Sie sich die Update-Aufgabe an.
+ · Dann können Sie die Update-Aufgabe ohne Probleme löschen, finden tun Sie diese nun unter Erledigte Aufgaben
+
+ Das sollte es theoretisch dann gewesen sein. Wenn Fehlermeldungen wie Dublicate column 'blabla' auftreten, einfach ignorieren! +
+ + + +
+ +
+ 25. Anfrage: Ich habe nun das Script installiert. Im Gastbereich kann ich aber das Menü nicht finden und es wird eine Fehlermeldung ausgegeben!
+
+ · Loggen Sie sich wieder in den Admin-Bereich über das Script http://ihrmailtausch/admin.php ein.
+ · Es sollten durch das Erweiterungsmanagement die folgenden Erweiterungen gelistet sein: mailid, mydata, online, other und sql_patches
+ · Markieren Sie die Aufgabe mit sql_patches, indem Sie das Kästchen in der Spalte ID anklicken
+ · Klicken Sie anschliessend auf den Button Bearbeiten und dann auf Registrieren (rechts neben den Info-Text
+ · Jetzt sollte das Gastmenü samt Mitgliedsmenü wieder arbeiten.
+
+ Verfahren Sie in gleicher Art und Weise mit allen anderen Erweiterungen, die Sie sich von meinem Server runterladen können: Runterladen, entpacken, entpackte Dateien hochladen (inc, theme, templates usw.), Willkommensseite im Admin-Bereich aufrufen, Aufgabe markieren, Bearbeiten, Registrieren, Einstellungen testen und zum Schluss aktivieren nicht vergessen, damit die Mitglieder/Gäste auch die Menüpunkte aufrufen können!
+ Und damit sind wir schon bei der nächsten FAQ... +
+ + + +
+ +
+ 26. Anfrage: Wie funktioniert das eigentlich mit der Tabelle "Registrierte Erweiterungen" (CSS / Aktiviert / Versionsnummer) ?
+
+ Wie in FAQ Nr. 25 kurz beschrieben, möchte ich es hier nochmals ausführlicher beschreiben, wie Sie im Admin-Bereich mit Erweiterungen umgehen. Dabei dreht sich + jetzt alles um den Menüpunkt "Verschiedenes --> Erweiterungen" bzw. die darin enthaltene Tabelle "Registrierte Erweiterungen".
+
+ Als erstes sollten Sie wie in FAQ Nr. 25 beschrieben die Erweiterung sql_patches registrieren. Dann sollte in der besagten Tabelle die Versionsummern auch + komplett erscheinen. Ich gehe also jetzt davon aus, dass dies geschehen ist und auch dass die Versionsummern angezeigt werden (ist wichtig, wieso wäre jetzt zu + detailliert!).
+
+ · Der Erweiterungsname ist im Grunde genommen nur eine Erkennungsmarke, die im Script intern verwendet wird.
+ · Die dazu gehöhrige Sprachdatei liefert die entsprechende Sprache (Deutsch derzeit, ich brauche freiwillige Übersetzer!
+ · Jetzt kommt die für Sie als Webmaster relevante Spalte CSS dran. Ein Ja bedeutet, dass eine mit der Erweiterung mitgelieferte CSS-Datei aktiviert, sprich eingebunden wird. Nein bindet sie analog dazu nicht ein, dass Design wird also voraussichtlich nicht korrekt dargestellt.
+ · Auch sehr wichtig - und hier wurden die meisten Anfragen dazu gemacht - ist die Spalte Aktiviert?: Ist die Erweiterung nicht aktiviert, können nur Sie als eingeloggter Administrator die Erweiterung und die dazu gehöhrigen Menüpunkte nutzen! Ist sie aktiviert, erst dann können Ihre Gäste/Mitglieder die Menüpunkte aufrufen und auch sehen!
+ · Die letzte Spalte Version ist wichtig, wenn Sie unter Nach neuen Erweiterungen suchen schauen, ob es neue Erweiterungen aber auch aktualisierte Erweiterungen gibt. Aktualisierte Erweiterungen tauchen nicht unter Updates prüfen auf! Zudem kann die Versionsnummer script-intern noch von Bedeutung sein, ob Jene oder Welche Aktion gestartet wird.
+
+ Merken Sie sich also am besten eines (oder drucken Sie sich diese Seite mit ©-Hinweis aus):
+
+ · Nur wenn Sie die Erweiterung samt CSS-Datei aktivieren, können Sie und Ihre Mitglieder die Funktionen (Menüpunkte) auch aufrufen und verwenden, anderfalls nur Sie als eingeloggter Administrator! Und die Konfiguration der Erweiterung wird geladen. +
+ + + +
+ +
+ 27. Anfrage: Ich hab mich bei einem Affiliate-System angemeldet und muss nun den HTML-Code einbinden. Wie tue ich dies, dass es auch funktioniert?
+
+ Seit dem Patch 385 (bzw. spätere Versionen als 0.2.0-pre9) können Sie in der Bestätigungsseite der EMail-Adresse einen Affiliate-Code einbinden. Nutzen Sie dazu das Template guest_confirm_table welches Sie im Ordner templates/de/html/guest/ auffinden werden.
+
+ Sie müssen dazu folgendes beachten und tun:
+
+ · Bei 99,9% aller Affiliate-Scripte gibt es einen sogenannten dynamischen Teil des Scriptes.
+ · Dieser wird sehr oft mit XXX gekennzeichnet und befinden sich auch als solches im Affiliate-Code
+ · Tauschen Sie das XXX einfach gegen {--__UID--} aus!
+ · Dann wird die User-ID des Mitgliedes an das Affliliate-System übertragen.
+
+ + + +
+ 28. Anfrage: Nachdem ich das Script installiert habe, bekomme ich Fehlermeldungen mit Table mxchange_themes does not exists!
+
+ Wenn diese und - nachdem Sie einige Erweiterungen installiert haben - noch andere ähnliche Fehlermeldungen erhalten (andere Tabellen fehlen), dann liegt dies an folgendem:
+
+ Meine Script verwenden alle beim Anlegen einer Tabellen einen Standartwert für die erste Spalte, welche ein durchlaufender Zähler ist.
+
+ Es kann nun mal ab und an vorkommen, dass auf Ihrem Server die MySQL-Version 4.1.x installiert ist. Diese macht definitiv Fehler!
+
+ Was Sie machen können ist, entweder den Hoster beauftragen, eine ätere Version (4.0.x scheint gut zu klappen), oder dies selber durchzuführen.
+
+ Ich werde hier bald eine automatische Umwandlung der fehlerauslösenden SQL-Befehle einbauen, damit das Problem umgangen ist. +
+ + + +
+ 29. Anfrage: Es ist die Rede von Neuinstallieren einer Erweiterung per Adminmenü!
+
+ Gehen Sie folgendermaßen beim Neuinstallieren von Erweiterungen vor:
+
+ · Sichern Sie erstmal alle zur Erweiterung gehöhrenden Templates ab, die Sie geändert haben.
+ · Meistens sind diese im gleichnamigen Verzeichnis unter templates/de/html/<Erweiterungsname> angelegt.
+ · Löschen Sie dann über das Adminmenü "Verschiedenes -> Erweiterungen" die Erweiterung heraus - Bestäten der Löschung nicht vergessen!
+ · Klicken Sie anschliessend immer noch im Adminmenü auf Willkommen.
+ · Wenn die Aufgabe nicht bereits gelöscht ist, wird sie automatisch erzeugt.
+ · Ansonsten müssen Sie diese unter "Gelöscht" oder "Erledigt" versuchen zu finden.
+ · Wählen Sie dann die Aufgabe aus, klicken Sie auf Bearbeiten und dann auf Registrieren.
+ · Laden Sie anschliessend Ihre gesicherten Templates wieder hoch.
+ · Nun sollte die Erweiterung wieder erneut installiert sein.
+
+ Beispielsweise müssen Sie derzeit so mit der Erweiterung mediadata verfahren, da eine + verknüpfte Sonderdatei nicht mit geladen wird. Diese Datei erzeugt aber die wichtigsten Einträge + in der Datenbank für die Mediadaten. Ensprechend stehen auf Mailbuchungen usw. auf 0. +
+ + + +
+ 30. Anfrage: Tabellen wie mxchange_config und mxchange_extensions fehlen!
+
+ Der häufigste Grund für das Fehlen von den Tabellen mxchange_config, mxchange_extensions + usw. war das vom Hoster gesperrte Unix-Programm mysql. Dieses Programm wird aber beim Einspielen der + SQL-Dateien benutzt. Folglich sind keine Tabellen in der eingestellten Datenbank vorhanden, was öfters zu + Verwirrung geführt hat.
+
+ "Ich habe doch alles richtig gemacht!", hiess es dann in den Mails. (Zugangsdaten richtig usw.)
+
+ Das haben Sie gewiss auch! Sie müssen jetzt auf die in der Dokumentationsdatei docs/readme.de + unter Abschnitt 3.b) beschriebene manuelle Installation zurückgreifen und diese Schritt-Für-Schritt + abarbeiten. Bitte lassen Sie dabei keinen einizgen Schritt aus. +
+ + + +
+ 31. Anfrage: Wenn ich die "Sonstige Einstellungen" abspeichern will, erhalte ich MySQL-Fehler.
+
+ Installieren Sie mindestens die Basis-Erweiterungen sql_patches und other und aktivieren Sie + diese auch im Adminmenü unter "Verschiedenes -> Erweiterungen". +
+ + + +
+ 32. Anfrage: Worin besteht der Unterschied zwischen dem EMail-Templates normal-mail.tpl und bonus-mail.tpl?
+
+ · normal-mail.tpl - Template für EMails, die von den Mitgliedern gebucht werden können.
+ · bonus-mail.tpl - Template für Bonus-Mails, die Sie als Administrator zusätzlich versenden können.
+
+ Damit Sie die Bonus-Mails auch versenden können, müssen Sie sich die Erweiterung bonus herunterladen und installieren. +
+ + + +
+ 33. Anfrage: Ich habe x {?POINTS?} bei der Mailbuchung gutgeschrieben bekommen. Wieso ist dennoch mein Kontostand 0 {?POINTS?} ?
+
+ Vermutlich haben Sie unter Einstellungen --> Anmeldeformular die Option + Anzahl zu bestätigender Mails, bevor die {?POINTS?} gutgeschrieben werden? auf die + Standart-Einstellung 5 belassen. Stellen Sie diese Einstellung um auf 0 und die + nächsten neuen Mitglieder sollten alles direkt gutgeschrieben bekommen.
+
+ Die Umstellung betrifft allerdings nicht bestehende Mitgliedschaften! Wenn Sie die auch ändern + wollen, müssen Sie folgende 3 MySQL-Befehle ausführen (phpMyAdmin hilft Ihnen dabei sehr gut):
+
+ 1. UPDATE {?_MYSQL_PREFIX?}_user_points SET points=points+locked_points WHERE locked_points>0
+ 2. UPDATE {?_MYSQL_PREFIX?}_user_points SET locked_points=0 WHERE locked_points>0
+ 3. UPDATE {?_MYSQL_PREFIX?}_user_data SET ref_payout=0 WHERE ref_payout > 0
+
+ Danach sollten alle Mitglieder die {?POINTS?} direkt gutgeschrieben bekommen. +
+ + + +
+ 34. Anfrage: Was bedeutet "Referral-Ebene 0" und wieso steht die auf 100%?
+
+ Die Referral-Ebene 0 - ich denke Sie ahnen es bereits - ist das Mitglied selber. Daher bekommt es auch + 100% von seinen eigen verdienten Punkten ab. Ich habe dies gemacht, damit alles über ein und das + selbe Referral-System abgewickelt werden kann.
+
+ Der Programmieraufwand nur für den User selber wäre im Verhältnis zum Nutzen zu hoch + gewesen. Zudem bleibt das System so übersichtlicher. Zwei Gründe, wieso es die Ebene 0 gibt. +
+ + + +
+ 35. Anfrage: Ich erhalte die Fehlermeldung Unknown column 'mt_word' in 'field list' beim Speichern von Einstellungen.
+
+ Der häufigste Grund hierfür war, dass die Erweiterung sql_patches nicht installiert + oder veraltet war. Dieses müssen Sie per Erweiterungsmanagement nachholen! Lesen Sie sich dazu am + besten die Dokumentation durch oder kommen Sie gerne in mein Forum. Ich helfe Ihnen dort gerne weiter. +
+ + + +
+ 36. Anfrage: Bei der Installation des Scriptes, kam die Fehlermeldung, dass der Finalizer die Installation nicht konnte abschliessen konnte.
+
+ Bei nahezu allen Anfragen, die uns per Mail erreicht haben, fehlten die Zugriffsrechte auf ein + Verzeichnis und eine Datei. Genauer gesagt sind es das Verzeichnisinc (CHMOD 777!) und die + Datei inc/config.php (CHMOD 666).
+
+ Stellen Sie bitte nicht grundsätzlich alle Dateien auf 666 und alle Verzeichnisse auf 777! Dies + ist wegen der Sicherheitsproblematik nicht empfehlenswert und wird von uns auch nicht supportet. +
+ + + +
+ 37. Anfrage: Wenn meine Mitglieder ihre Profildaten ändern wollen, erhalten sie ein leeres Formular, auch werden keine Daten geändert!
+
+ Die derzeitige Version 0.1.5 der Erweiterung mydata benötigt die Erweiterung + country, da diese eine weitere Tabellenspalte - die sonst ohne country fehlt - + hinzufügt. Die nächste Version wird wieder unabhängig von country sein + und somit auch ohne ihr funktionieren. +
+ + + +
+ 38. Anfrage: Kann ich einem bestimmten Mitglied Adminrechte geben?
+
+ Nein, das geht grundsätzlich nicht. Das Admin-Account ist ein zu den Mitglieder-Accounts + seperates Account (wird auch in einer seperaten Tabelle angelegt). Dies erhöht weiter die + Sicherheit des {?MAIN_TITLE?}-Scriptes. +
+ + + +
+ 39. Anfrage: Ich werde immer in den Admin-Bereich weitergeleitet. Was mache ich falsch, bzw. habe ich übersehen?
+
+ Sie müssen noch die Erweiterung sql_patches installieren und auch aktivieren. + Wie das geht, erfahren Sie in der nächsten FAQ. +
+ +
+ 40. Anfrage: Was bedeutet Erweiterungen installieren und aktivieren? Ich habe sie doch bereits hochgeladen!
+
+

Von meinem Server heruntergeladene + Erweiterungen enthalten eine fast identische Verzeichnisstruktur wie das herunterladbare Hauptarchiv. Sobald + Sie das Archiv einer beliebigen Erweiterung entpackt haben, finden Sie immer ein Verzeichnis + inc und DOCS vor.
+ Im letzteren sind die Lizenz und einige grundlegende "Dokumente" (Text-Dateien) vorhanden, die aber + für die Installation unrelevant sind. Bei einigen Erweiterungen kann auch eine oder mehrere Verzeichnisse + oder Dateien nebst den beiden Standart-Verzeichnissen vorhanden sein.

+

    +
  1. Laden Sie jetzt alle Dateien und Verzeichnisse bis auf DOCS auf Ihren Webspace hoch!
  2. +
  3. Loggen Sie sich in den Admin-Bereich ein (bevor Sie in den Gastbereich und Mitgliedsbereich kommen können, + müssen Sie ohnehin erst einmal die Erweiterung sql_patches aktivieren. Mehr dazu später!
  4. +
  5. Sobald Sie eingeloggt sind (ich gehe davon aus, dass Sie noch nicht die Erweiterung task hochgeladen + haben), erscheint eine neue Aufgabe.
  6. +
  7. In der Spalte Infos Sollte der Name Ihrer hochgeladenen Erweiterung eingetragen sein.
  8. +
  9. Dies ist der Uni*-Name, also der Dateiname Ihrer Erweiterung. Wenn Sie immer von {?MAIN_TITLE?}.org Erweiterungen + herunterladen ist er abzüglich des Präfixes ext- mit dem Archivnamen übereinstimmenden. + Die Erweiterung ext-sql_patches.zip wird also eine neue Aufgabe erzeugen, bei der in der Spalte + Infos sql_patches stehen wird.).
  10. +
  11. Als nächstes klicken Sie links unter der Spalte ID das Kästchen an, dass ein kleines + Häckchen (bei den meisten Browser wird es so dargestellt) angezeigt wird.
  12. +
  13. Anschliessend klicken Sie am Ende der Aufgabenliste auf Bearbeiten.
  14. +
  15. Die Anzeige wird sich jetzt komplett ändern und Sie sehen nebst einem Aufgabentext (das ist der gleiche + Beschreibungstext, den Sie aus meiner Webseite kennnen!) einige andere Daten. Weiter unten finden Sie eine Menge + SQL-Befehle aufgeführt, die Sie bitte nicht in z.B. phpMyAdmin oder ähnliche Produkte + einfügen. Die SQL-Befehle werden für Sie gleich automatisch ausgeführt!
  16. +
  17. Rechts neben den angezeigten SQL-Befehlen finen Sie recht mittig einen Button Registrieren (es + kann vorkommen, dass der Button sich nicht immer an der selben Stelle befindet, bitte verzeihen Sie mir dies. Ich + korregiere dies in der nächsten Version!).
  18. +
  19. Wenn Sie jetzt auf den Button klicken, wird die ausgewählte Erweiterung in Ihren Mailtausch registriert und + alle angezeigten SQL-Befehle der Reihe nach ausgeführt.
  20. +
  21. Wichtig: Es werden dabei keine Daten an {?MAIN_TITLE?}.org gesendet. Das Registrieren wird auf meiner + Webseite auch mal als "Installieren" bezeichnet. Es ist aber der gleiche Vorhang gemeint, dass nälich + die ausgewählte Erweiterung dem {?MAIN_TITLE?}-Script bekannt gemacht wird. Mit den technischen Details will ich Sie + jetzt aber nicht weiter verwirren. Gerne können Sie mich dazu mal im Forum/Chat ansprechen!
  22. +
  23. Nun sind alle Funktionalitäten in Ihrem Mailtausch für die Admins verfügbar.
  24. +

+

Damit auch Ihre Mitglieder diese nutzen können (die Erweiterung sql_patches muss immer + aktiviert sein), muss die Erweiterung auch aktiviert werden. Diesen Vorgang habe ich ebenfalls sehr einfach gehalten: +

    +
  1. Wenn nicht bereits geschehen, loggen Sie sich als erstes in den Admin-Bereich ein. Wenn Sie sich schon bereits im + Admin-Bereich befinden, klicken Sie links im Menü auf Willkommen.
  2. +
  3. Nun rufen Sie den Menüpunkt Verschiedenes und anschliessend Erweiterungen auf.
  4. +
  5. Sie sollten jetzt mindest die Erweiterung sql_patches, falls nicht, fahren Sie zuerst mit den oberen + Schritten fort und wiederholen Sie dann wieder diese Schritte vom Anfang an.
  6. +
  7. Bei einer Neuinstallation sollte die Erweiterung sql_patches (erstmal!) als einzige Erweiterung + vorhanden sein. Später können Sie in wie in gleicher Weise beschrieben Erweiterungen hinzuinstallieren!
  8. +
  9. Die sql_patches ist also noch deaktivieren. Erkennen können Sie dies, das in der Spalte + Aktiviert ein Nein eingetragen ist. Das wollen (und bei sql_patches + müssen Sie dies) wir nun ändern, da Sie bestimmt nicht jedem Besucher Ihre Admin-Logindaten anvertrauen + wollen.
  10. +
  11. Wieder in der Spalte ID setzen Sie ein Häckchen.
  12. +
  13. Da Sie die Erweiterung nur aktivieren wollen, klicken Sie einmal auf den Button De-/aktivieren.
  14. +
  15. Beachten Sie bitte, dass Sie diesen nicht doppelt anklicken! Bei den heutzutage existierenden schnellen + DSL-Verbindungen kann dies durchaus zwei Anfragen an Ihren Server sein. Die Folge davon wäre dann, dass die Erweiterung + wieder deaktiviert ist!
  16. +
  17. Nun sollten die Funktionalitäten der aktivierten Erweiterung(en!) Ihren Mitgliedern zur Verfügung stehen.
  18. +

+

Beachten Sie bitte, dass der Button nach dem Bäumchen-Wechsel-Dich-Prinzip arbeitet. Dies bedeutet, auch dass + wenn Sie beispielsweise eine deaktivierte und eine bereits aktivierte Erweiterung anklicken, dass beide + ihren Status ändern. Die zuvor deaktivierte wird also aktiviert und die zuvor aktivierte Erweiterung wird dann deaktiviert.

+
+ +
+ 41. Anfrage: Muss ich aus dem Archiv ext-blabla.zip nur ext-blabla.php hochladen?
+
+ Es müssen immer alle Dateien aus den ZIP-Archiven ext-blabla.zip hochgeladen werden. Das + Verzeichnis DOCS stellt dabei die Ausnahme dar und brauch somit nicht hochgeladen werden. Falls Sie nur + die ext-blabla.php hochladen, könen wichtige Templates und Zusatzscripte fehlen und dann + funktioniert die jeweilige Erweiterung nicht.
+
+ Hier gibt es wieder eine Ausnahme: ext-sql_patches.zip. Bei diesem ZIP-Archiv gibt es nur die ext-sql_patches.php, + die Sie bitte nach inc/extensions/ hochladen. Es ist also vollkommen richtig, dass Sie nur ext-sql_patches.php + hochladen können, da nur diese im ZIP-Archiv vorhanden ist. +
+ + + +
+ +
+Ihre Frage an den Support? Dann schnell in's Forum!
+Anmeldung ist jedoch Pflicht und dauert nicht lange! diff --git a/templates/de/html/forum.tpl b/templates/de/html/forum.tpl new file mode 100644 index 0000000000..cd7a30578b --- /dev/null +++ b/templates/de/html/forum.tpl @@ -0,0 +1,23 @@ +
+ Eigenes Support-Forum eingerichtet: +
+ +
+ Das auf SourceForge.net zur Verfügung stehende Forum-System erscheint + auf dem ersten Blick etwas zu verwirrend. Von daher habe ich mich entschieden, + ein einfacheres - ebenfalls freies Script - auf meinen eigenen Server zu + installieren. +
+ +
+ Merke dir nun den einfachen Link oder füge ihn in deine Lesezeichen ein: +
+ + + +
+ Die Anmeldung am Forum ist jedoch Pflicht und dauert nicht lange. +
diff --git a/templates/de/html/git.tpl b/templates/de/html/git.tpl new file mode 100644 index 0000000000..deb717abf7 --- /dev/null +++ b/templates/de/html/git.tpl @@ -0,0 +1,46 @@ +
+ ::: GIT ::: +
+ +
+ Hier findest du den GIT-Zugang zum Mailer-Projekt-Script. Du + solltest dazu GIT-Tools auf deinem Rechner installiert haben, schon habst + du Zugang zum gesamten Script mit allen Entwicklerdateien. +
+ +
+ Die schon zum Teil produktiv einsetzbare Repository findest du hier: + git://git.mxchange.org/mailer.git +
+ +
+ Im Forum habe + ich eine Anleitung eingestellt, die dir das Auschecken und + Aktualisieren erleichtern soll. Dort erkläre ich den Zugriff auf meine + GIT-Repository anhand von TortoiseGIT. +
+ +
+ Seit dem 29. Dezember 2012 hat sich die UUID auf + 09479b1e-2a70-4665-830c-aa85e5dac827 geändert. Wer + also vor diesem Datum den Quellcode heruntergeladen hat und jetzt + Fehlermeldungen erhält, muss unbedingt neu auschecken. +
+ +
+ Wichtiger Beta-Hinweis:
+ Das Script ist noch im Beta-Stadium und ist somit nicht + "stabil", da es immer wieder Bugs (Programmierfehler) haben + kann. Da ich nicht alle selber finden kann, bin ich auf die Mithilfe + von dir angewiesen. Daher meine Bitte: Installier das Script, teste es + aus, melde jeden Bug in meinem Forum oder Bug-Tracker und hab viel Durchhaltevermögen! + Dafür möchte ich mich schon mal im Voraus ganz herzlichst + bedanken. +
diff --git a/templates/de/html/link_us.tpl b/templates/de/html/link_us.tpl new file mode 100644 index 0000000000..8eb73b10a1 --- /dev/null +++ b/templates/de/html/link_us.tpl @@ -0,0 +1,78 @@ +
+ Meine Banner zum Verlinken und Downloaden +
+ +
+ Helfe mir, dass mein Script weiterhin frei verfügbar bleibt. Binde + dazu meine Banner oder Textlink in deine Webseiten ein. Schon an dieser + Stelle möchte ich mich bei dir bedanken. +
+ +
+ Und hier sind meine Banner: +
+ +
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="{?URL?}/images/banner/mxchange_scripts.jpg" border="0" width="468" height="60"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="{?URL?}/images/banner/mxchange_0_eur.jpg" border="0" width="468" height="60"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="{?URL?}/images/banner/mxchange.gif" border="0" width="468" height="60"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="{?URL?}/images/banner/mxchange_blue.jpg" border="0" width="468" height="60"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="http://imgpool.mxchange.org/banner/mxchange/mxchange_88x31.png" border="0" width="88" height="31"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="http://imgpool.mxchange.org/banner/mxchange/mxchange_free-120x600.jpg" border="0" width="120" height="600"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank"><img
+ src="{?URL?}/images/banner/fresh_468x60.jpg" border="0" width="468" height="60"
+ alt="{?MAIN_TITLE?}" /></a>
+
+{?MAIN_TITLE?}
+
<a href="{?URL?}" target="_blank">{?MAIN_TITLE?}</a>
+
+ +
+ Oder lade dir die Banner per Rechtsklick auf den Banner und Bild + speichern unter... herunter und auf deinen Webserver wieder hoch. + Dann ersparst du mir den Traffic für die Banner. +
+ +
+ PopUp mit 2 Sekunden Verzögerung +
+ +
+ Binde mein Popup ein:
+
<script language="Javascript" type="text/javascript"
+ src="http://ads.ship-simu.de/adpopup.php?n=a770964a&what=zone:16&target=_blank&top=100&left=100&status=1&delay=2">
+</script>
+  
+
diff --git a/templates/de/html/listed.tpl b/templates/de/html/listed.tpl new file mode 100644 index 0000000000..fdcb58a4a0 --- /dev/null +++ b/templates/de/html/listed.tpl @@ -0,0 +1,62 @@ +
+ {?MAIN_TITLE?} ist gelistet in folgenden Verzeichnissen
+ Tipp: Wenn ich {?MAIN_TITLE?} hier anmelden kann, so macht es mir doch nach... :-) +
+ +
+ Mitglied bei PHP-Resource.de + Ausgewählt von bunte-suche.de + + BellNet-Internetverzeichnis + Alles kostenlos + Flinks Webkataglog + + Diese Seite ist dabei: Spamfrei suchen... +
+ + + + + + + + diff --git a/templates/de/html/login_failtures.tpl b/templates/de/html/login_failtures.tpl new file mode 100644 index 0000000000..7cce8b08c9 --- /dev/null +++ b/templates/de/html/login_failtures.tpl @@ -0,0 +1,9 @@ +
+ +
diff --git a/templates/de/html/network_webmaster_infos.tpl b/templates/de/html/network_webmaster_infos.tpl new file mode 100644 index 0000000000..5598c9581a --- /dev/null +++ b/templates/de/html/network_webmaster_infos.tpl @@ -0,0 +1,185 @@ +
+
+ Informationen für Werbenetzwerkbetreiber +
+ +
+ Allgemeine Informationen +
+ +
+ Das {?MAIN_TITLE?} bietet eine universelle API-Anbindung, die hier + ext-network genannt wird. Mailtausch- oder + Paidmail-Betreiber können mit dieser Erweiterung über APIs + automatisiert z.B. Forced-Banner oder Paidmails einbinden - es wird + deutlich mehr als diese zwei Werbearten unterstützt. Diese Erweiterung + befindet sich zur Zeit in der aktiven Entwicklung. Damit ich diese + fertigstellen kann, möchte ich gerne möglichst viele + Werbenetzwerke aufnehmen, damit möglichst viele Webmaster mein Script + verwenden. +
+ +
+ + Welche Daten für welchen Zweck von Ihrem Werbenetzwerk + benötigt werden + +
+ +
+ Da ich dieses Script nicht nur für mich, sondern öffentlich + zugänglich unter der GNU GPL 2 entwickle, brauche ich neben einem + Account bei Ihrem Werbenetzwerk auch noch viel mehr Daten: +
    +
  • Zeichensatz: Dieses Script arbeitet + vollständig auf UTF-8, die meisten Werbenetzwerke laufen auf + ISO-8859-1, einige auch auf WINDOWS-1252.
  • + +
  • Trennzeichen für Daten und Zeilen: Dies ist + meistens gleich und ein senkrechter Strich (Pipe: |).
  • + +
  • HTTP-Abfragemethode: Ist meistens GET, besser + für den Datenschutz wäre POST, damit die Daten im Rumpf + der HTTP-Anfrage stehen und nicht in der Adresszeile.
  • + +
  • Freie API-Abfragen: Wie viele tägliche + API-Abfragen kostenlos zur Verfügung stehen.
  • + +
  • Gewerbeschein nötig: Einige Werbenetzwerke + verlangen für die Auszahlung in € oder gar für die + Anmeldung einen Gewerbeschein.
  • +
+
+ +
+ Dies sind erstmal die allgemeinen "Grunddaten" Ihres + Werbenetzwerkes, die ich mindestens brauche. Zudem brauche ich dann noch + mindestens eine ausführliche API-Dokumentation (am besten als PDF) + und/oder die nachfolgenden Daten: +
    +
  • API, Ziel- und Banner-URL: Manchmal werden Ziel- + und Banner-URL in der API-Ausgabe mitgeliefert, was natürlich + auch kein Problem darstellt.
  • + +
  • Zeiteinheit für Reloadsperre: Die meisten + benutzen hier Stunden, einige auch + Sekunden.
  • + +
  • Textcodierung: Bei einigen Werbenetzwerken wird + z.B. bei der Werbeart HTML-Mail der Werbetext mit BASE-64 kodiert, + damit das HTML fehlerfrei übertragen werden kann.
  • + +
  • Alle Abfrageparameter: Natürlich muss die API + Ihres Werbenetzwerkes auch mit Daten gefüttert werden. Genaue + Angaben sind hier unversichtbar (wie die Parameter heissen und + wozu sie dienen).
  • + +
  • Array-Index-Übersetzung: Meistens gibt die + API ein Array (Datenfeld) mit Pipes getrennt aus. Dabei hat jedes + Array-Element eine Bedeutung (z.B. Kampagnen-Id, Vergütung + usw.). Auch hier sind fehlerfreie Angaben unverzichtbar.
  • + +
  • Sub-Id Tracking: Unterstützt Ihr Werbenetzwerk + Sub-Id Tracking (es muss zu 99,999% die Ziel-URL erweitert werden), + so brauche ich auch hier genaue Angaben.
  • + +
  • Visual-Pay-Check: VPC können einige + Werbenetzwerke, ist Ihres eines davon, so brauche ich auch + hierfür Informationen.
  • + +
  • Vergütungscheck: Der so genannte V-Check + dient zur Endkontrolle, ob das Werbenetzwerk die Vergütung + getätigt hat. Bitte nennen Sie hier auch alle Parameter.
  • + +
  • Fehlercodes: Sowohl die API-Abfrage, als auch + VCheck können Fehlercodes (oder Meldungen) ausgeben. Diese + sind ebefalls wichtig, um Debugging seitens des Paidmailers + durchführen zu können.
  • +
+
+ +
+ Bitte denken Sie an Beispieldaten! Das hilft mir sehr gut bei der + Entwicklung des Scriptes. +
+ +
+ Entwicklungsphasen von ext-network +
+ +
+ Da die Erweiterung sehr gross und komplex ist, brauche ich dazu mehrere + (grobe) Schritte, um an das Ziel zu kommen. Erstmal wäre es zu + Programmierzwecken gut, wenn ich einer meiner Seiten bei Ihrem Werbenetzwerk + anmelden kann, dann kann ich sofort life alles testen. +
+ +
+ Die Entwicklung der API-Anbindung selbst teilt sich in 5 grosse Abschnitte + ein: +
    +
  1. APIs im Script aufnehmen (Daten ermitteln, siehe obere Informationen)
  2. + +
  3. API-Zugangsdaten abfragen (erledigt)
  4. + +
  5. APIs manuell abfragen (testweise; Alpha-Stadium)
  6. + +
  7. APIs per Cron-Job abfragen (noch kein Code vorhanden)
  8. + +
  9. Werbemittel an den passenden Stellen (z.B. Forced-Banner im + Forced-Banner-Bereich des Mitgliedsbereich) einbinden, dabei + eventuelle Ausschlussregeln (z.B. maximal X Forced-Banner pro + Seite) beachten (kein Code vorhanden)
  10. +
+
+ +
+ Anmerkungen +
+ +
+ Wie Sie nun sehr deutlich erkennen können brauche ich viele Daten und + alles muss stimmen. Da hier Tippfehler von uns beiderseits nicht + auszuschliessen sind, ist es immer gut, wenn ich mir Ihr Werbenetzwerk + einmal life ansehen kann - inklusive API-Ausgaben. +
+ +
+ "Gegenleistung" von mir +
+ +
+ Da ich mit meinem Script allgemeinnützig (eher "volunteer") + tätig bin, gibt es für Ihre Arbeit keine Vergütung - auch + nicht in virtueller Währung. Was ich Ihnen aber anbieten kann, + möchte ich Ihnen kurz erklären: +
    +
  • Nach der Aufnahme erhalten Sie im Forum einen + Backlink durch meinen Referral-Link.
  • + +
  • Jeder neuer Webmaster, der mein Script nutzt, sieht im Adminbereich + erneut meine Referral-Links. Sie erhalten also auch von dort aus + Verlinkung Ihres Werbenetzwerkes - und das sogar zielgerichtet auf + Webmaster.
  • + +
  • Jeder Webmaster trägt bei der Eingabe seiner API-Zugangsdaten + seinen Referral-Link ein. Dieser wird für seine Gäste + (wahlweise) und Mitglieder angezeigt. Dies ist bei einigen + Paidmailern so Gang und Gebe.
  • +
+
+ +
+ Mit mir Kontakt aufnehmen +
+ +
+ Mir am liebsten ist es, wenn Sie im Bug-Tracker + sich einmal anmelden und ein neues Ticket aufmachen. Dann kann das gesamte + Team Ihnen weiterhelfen. Alternativ geht es auch per Mail. +
+
diff --git a/templates/de/html/news-2003.tpl b/templates/de/html/news-2003.tpl new file mode 100644 index 0000000000..e22f354b80 --- /dev/null +++ b/templates/de/html/news-2003.tpl @@ -0,0 +1,39 @@ +
+ : : : News-Archiv 2003 : : : +
+ +
+ 26.12.2003 - 04:20 Uhr: Neues Release v0.1.0-pre11 freigegeben!

+ Dieses pre-Release fixt (hoffentlich?) einen Bug beim Logout aus dem + Mitgliedsbereich. Zudem habe ich den gesamten Code für die Konstante URL + umgeschrieben, damit keine doppelten Slashes (//) in der URL stehen. +
+ + + +
+ 23.12.2003 - 20:00 Uhr: Ich bin endlich mit meiner Projekt-Seite Online gegangen!

+ Das Mailer-Project lies sich tatsächlich zu einer Portal-Software mit + Mitglieds- und Admin-Bereich umrüsten. Ich bin damit auch gleich Online + gegangen und bin auf eine interessante Zukunft gespannt! +
+ + + +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 +
diff --git a/templates/de/html/news-2004.tpl b/templates/de/html/news-2004.tpl new file mode 100644 index 0000000000..cd63d688a7 --- /dev/null +++ b/templates/de/html/news-2004.tpl @@ -0,0 +1,751 @@ +
+ : : : News-Archiv 2004 : : : +
+ +
+ 31.12.2004 - 21:55 Uhr: Neues Release v0.2.0-pre8 freigegeben

+ Knapp vor Sylvester gibt es endlich eine neue Version, ein weiterer Grund zu + feiern. Wieso, dass erfährst du in der folgenden Auflistung. +
    +
  • Theme-Support fertiggestellt (noch nicht Update von meinem Server)
  • +
  • Seitentitel endlich änderbar (auch kannst du die Dekorationen am Rand entfernen.)
  • +
  • Scriptbeschleunigung einserseits durch Beseitigung von Variablenproblemen, andererseit durch die reparierte cache-Erweiterung
  • +
  • Weitere Template-Auslagerungen im Admin-Menü
  • +
  • Referral-Rallye repariert (Mails wurden nicht versendet und teilweise keine Punkte vergütet)
  • +
  • Pflichtfelder im Anmeldeformular wieder eingebaut
  • +
  • Diverseste Erweiterung repariert
  • +
+
+ +
+ 26.12.2004 - 18:05 Uhr: Mailbuchungsseite wieder funktionstüchtig

+ In der Mailbuchungsseite hat sich ein "netter" Fehler eingeschlichen. + Dieser hatte dafür gesorgt, dass die Buchung nicht abgeschlossen werden + konnte, da immer Seite 1 sichtbar wurde. +
+ +
+ 11.12.2004 - 18:45 Uhr: Problem mit Installationsroutine endlich beseitigt

+ Lange (10 Tage um genau zu sein) hat es während der Installationsphase + Scriptfehler gegeben, nun sind endlich alle Fehler beseitigt. Bitte lade dir + das unten stehende Patch runter. +
+ + + +
+ 08.12.2004 - 07:45 Uhr: Neue Versionen von Erweiterungen zu früh hochgeladen

+ Die folgenden Erweiterungen habe ich ausversehen zu früh hochgeladen:
+ +
transfer, top10, task, register, nickname, bonus und active
+ + Bei diesen Erweiterungen ist schon die geplante neue Verzeichnisstruktur + für sogenannten Themes mit enthalten. Folge ist, dass die CSS-Dateien + nicht mehr geladen werden. Was du nun machen musst, ist folgendes: +
    +
  • Entpacke die Erweiterungen in ein gemeinsames Verzeichnis
  • +
  • Kopiere alle Dateien aus dem Verzeichnis /theme/css/ nach /css/
  • +
  • Anschliessend sollten wieder alle CSS-Dateien ladbar sein.
  • +
+ In naher Zukunft werde ich das Patch aber rausgeben. Dann kannst du deinen + Mitgliedern verschiedene Designs anbieten. :-) +
+ +
+ 06.12.2004 - 10:25 Uhr: Fehler in Installation beseitigt, cache-Erweiterung ist noch instabil

+ Bitte lade dir das unten stehende Patch herunter, wenn du das Script neu + installieren willst, in der Installation hat es erneut einen Fehler gegeben. + Zudem ist die cache-Erweiterung instabil. Bitte wundere dich nicht, wenn du + Erweiterungen teilweise gar nicht installieren oder aktualisieren kannst. +
+ + + +
+ 01.12.2004 - 19:10 Uhr: Neues Release v0.2.0-pre7 freigegeben

+ Mit dem ersten Dezember 2004 gebe ich nun die neuste Version v0.2.0-pre7 frei. + Auch in dieser Version habe ich punkto Sicherheit vieles getan. +
    +
  • Bug "unknown function ext_is_active()" in der Installationsroutine beseitigt
  • +
  • Sofortige / verzögerte / manuelle Weiterleitung von der index.php Seite zur modules.php?module=index Seite
  • +
  • CSS-Dateien werden nun nicht mehr direkt sondern üer das Script css.php geladen
  • +
  • Laden der Erweiterungen geändert und Fehler beseitigt: Wenn mit einer Erweiterung eine besondere Datei (wie inc/birthday_mails.php für die birtday-Erweiterung) mit geladen werden soll, so werden diese in einem gemeinsamen Datenfeld gesammelt und nach dem Laden der Erweiterungen nachgeladen.
  • +
  • Sämtliche Variablen mit den eigenen Funktionen bigintval() und SQL_QUERY_ESC() abgesichert
  • +
  • Du kannst nun endlich die Standart-RefID vom Admin-Bereich aus ändern. In älteren Versionen musstest du die ID in modules.php und index.php direkt eintragen und bei jedem Update waren diese wieder auf "0" gesetzt.
  • +
  • Die Anmeldeseite enthielt einen Parser-Fehler.
  • +
  • Wenn du Erweiterungen per Ändern-Button de-/aktiviert hast, so werden endlich mit dem De-/Aktivieren verknüpfte SQL-Anweisungen ausgeführt.
  • +
  • Erweiterung active im Script inc/modules/guest/action-online.php vorbereitet (und die Erweiterung ist auch endlich verfügbar.)
  • +
  • Ziel-URL in ref.php kann nun zwischen Anmeldeformular und Eingangsseite hin und her geschaltet werden.
  • +
  • In der mailid-Erweiterung war ein böswilliger Fehler: Die wichtige Variable $uid wurde unter sehr "exotischen" Einstellungen (register_global auf false gesetzt) nicht an die Funktion IMG_CODE() übertragen.
  • +
  • Problem mit schwarzer Schrift und weissem Hintergrund beseitigt (wegen Fehler im ausgegeben Code von css.php)
  • +
  • cache-Erweiterung vorbeitet und auch schliesslich bereit gestellt zum Download. Diese Erweiterung hat bei mir im Intranet die SQL-Anfragen deutlich reduziert, tweilweise auf ein Drittel sogar.
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 26.11.2004 - 17:15 Uhr: Fehler wegen Standart-RefID im Anmeldeformular beseitigt

+ Soeben ist mir ein "parse error im Anmeldeformular + (register-Erweiterung) selber aufgefallen. Bitte lade dir unbedingt das + 271'er Patch herunter. +
+ + + +
+ 26.11.2004 - 17:00 Uhr: TOP10-Liste möglich

+ Soeben habe ich die top10-Erweiterung hochgeladen. Diese Erweiterung erzeugt + im Gastbereich deines Mailtausches drei TOP-Listen: Häufigsten Einlogger, + Best-Verdiener und stärksten Werber. Evtl. plane ich noch weiteres in + dieser Erweiterung aufzunehmen. +
+ +
+ 18.11.2004 - 19:50 Uhr: Monatliche Aktiv-Rallyes endlich möglich

+ Mit dem neusten Patch (266) und der neusten Version der bonus-Erweiterung ist + nun endlich die langerwartete Aktiv-Rallye möglich. Wie diese + funktioniert, erfährst du hier. +
+ +
+ In dem Patch sich allerdings ein "Fehler" in die + mailid_top.php-Datei eingeschlichen: Ich habe nicht meine + zum Fehlerauffinden nötige Zeile entfernt. Dies ist bereits mit dem 267'er Patch behoben. :-) +
+ +
+ 14.11.2004 - 14:00 Uhr: Wichtige Hinweise zur aktuellen pre6-Version

+ Mit neustem Update ist das Script für die unten angebebene + rewrite-Erweiterung vorbereitet. Leider hat dies zur Folge, dass es (um genau + zu sein) vor der Installation zu einem Fehler kam, es fehlte die Funktion + ext_is_active(). Bitte lade dir dazu das folgende Patch herunter: +
+ + + +
+ Dann ist eine .htacess-Datei mit im Paket vorhanden. Diese funktioniert nur, + wenn auf Ihrem Server die Apache-Erweiterung mod_rewrite + installiert ist. Dies geschieht meistens durch den Support deines Hosters. Ist + diese Erweiterung nicht installiert - was in der Vergangenheit auch + vorgekommen ist - so führt dies zu einem Zugriffsfehler 403. In diesem + Fall solltest du die gennannte .htaccess-Datei vom Server löschen. +
+ +
+ 11.11.2004 - 19:15 Uhr: Neues Release v0.2.0-pre6 freigegeben

+ Ein bischen später als erwartet, habe ich (eigentlich schon ab gestern) + das pre6-Release der 0.2.0'er Reihe freigegeben. Auch hier habe ich vieles + korregiert und punkto Sicherheit getan. Neu ist auch die eigen entwickelte + Funktion bigintval(), welche sehr große gerade Zahlen + (die Fachleute unter Ihnen mögen mir die Wortwahl verzeihen) absichert + (vergleiche dazu die PHP-Funktion intval() mal.) +
+ + + +
+ 28.10.2004 - 21:00 Uhr: rewrite-Erweiterung im Alpha-Stadium freigegeben

+ Per CVS-Tree war die Erweiterung schon vorher erhältlich. Nun kannst dur + diese aus deinem Admin-Bereich herunterladen. Was es genau mit dieser auf sich + hat und was du noch alles herunterladen musst, damit es klappt, kannst du + dieser FAQ + entnehmen. +
+ +
+ 24.10.2004 - 00:30 Uhr: Geänderte Support-Zeiten

+ Die Support-Zeiten für den telefonischen Support haben sich wegen einer + Umschulungsmaßnahme geändert: +
+ +
+ Geändert hat sich nur die Startzeit am Freitag von 13:00 Uhr auf 14:00 Uhr. +
+ + + +
+ 14.10.2004 - 19:45 Uhr: Punktetransfer fertiggestellt

+ Das Überweisen von Punkten zwischen deinen Mitgliedern ist nun mit der + soeben hochgeladenen transfer-Erweiterung und nur fehlerfrei mit dem 235-Patch + möglich. Dieses Patch stellt die Datei img.php im + Hauptverzeichnis bereit, welches den z.B. beim Ausfüllen einer + Überweisung den Touring-Code ausgibt. +
+ +
+ 04.10.2004 - 15:40 Uhr: CVS Repository wieder Online

+ Den sogn. CVS-Zugriff auf mein Projekt habe ich wieder freigegeben.
+
+ Eine Anleitung dazu findest du hier... (Link veraltet) +
+ +
+ 30.09.2004 - 23:00 Uhr: Neues Release v0.2.0-pre5 freigegeben

+ Früher als erwartet, habe ich ein neues Release hochgeladen. Leider + hat die englischsprachige ChangeLog etwas drunter gelitten, aber dafür + habe ich mir mit der ebenfalls englischsrpachigen Release Notes Mühe + gegeben, alle wichtigen Infos zusammenzutragen. +
+ + + +
+ 17.09.2004 - 09:00 Uhr: Neues Release v0.2.0-pre4 freigegeben

+ Bei diesem Pre-Release hat sich dateitechnisches geändert. Wegen der + Umlizensierung sind auch viele Erweiterungen hinzugekommen. +
    +
  • Der gesamtes templates-Ordner hat sich geändert: Die Doppelendung ist entfallen. dafür gibt es mehr Unterverzeichnisse (templates/xx/emails/ bzw. templates/xx/html/; wobei xx der 2-stellige Sprachcode ist).
  • +
  • Alle *_functions.php-Dateien habe ich aus dem inc-Verzeichnis in das neue inc/libs/-Verzeichnis verschoben, damit das inc-Verzeichnis übersichtlicher wird.
  • +
  • Das guest_menu_whats.tpl-Template habe ich in zwei neue Dateien guest_menu_row.tpl und guest_menu_buttom.tpl umbenannt. Somit ist es möglich, wie auf dieser Projekt-Seite grafisch anspruchsvollere Menüs zu erzeugen.
  • +
  • Datenbank-Layer geändert. Es kann nun ein Datenbank-Typ angegeben werden. Die entsprechende Bibliothek sollte dann auch im inc/db/-Verzeichnis vorhanden sein.
  • +
  • Einige SQL-Abfragen - und es werden noch sehr viele folgen - habe ich mit der neuen Funktion SQL_QUERY_ESC() abgesichert. Damit sind viele SQL-Injektionen (Angriffsart auf die Datenbank) verhindert.
  • +
+ Wen dir das Umstellen der Templates zu aufwendig ist, so kannst du mir gerne + den gesamten Templates-Ordner als ZIP-Datei zumailen (RAR klappt bei mir + öffters nicht.). Ich schicke dir dann die umbenannten Dateien wieder zu. + Bitte speichere auch den relativen Pfad mit ab. +
+ + + +
+ 13.09.2004 - 19:30 Uhr: Wenn mal der Bestätigungscode nicht angezeigt wird..

+ Ich habe von einigen Webmastern gehöhrt, dass der Banner-Code nicht + eingeblendet wird, wenn das Script auf einem sogn. Free-Hoster (kostenloser + Hoster) installiert wird. +
+ + + +
+ 08.09.2004 - 01:15 Uhr: LITE-Version und alle PRO-Versionen eingestellt

+ Es gibt jetzt nur noch das Mailer-Projekt zum freien Download. Das Wort + "frei" ist im Sinne von Freiheit und nicht + Freibier zu verstehen. Weiteres zum Thema "Freie + Software" entnehme bitte den Seiten der Free Software Foundation (FSF + Europe). Hier gelangst du zu den GNU-Projekten.
+
+ +
+ 02.09.2004 - 14:15 Uhr: v0.2.0-pre3 erneut hochgeladen

+ Beim letzten Upload war der wichtigiste Teil, die Lizenz-Datei nicht mit vorhanden. Ich habe diese nun mit eingebunden und erneut hochgeladen. +
+ +
+ 28.08.2004 - 01:00 Uhr: Pro-Erweiterungen fertiggestellt

+ Ich habe endlich eine ganze Reihe von Erweiterungen für die + Pro-Versionen fertig gestellt. +
    +
  • Rallyes: Starte eine Ref-Rallye und setze Punkte als Preise für die ersten X Plätze aus.
  • +
  • Modul-Verwaltung: Titel im Browser, wie &qout;Unbekanntes Modul (admin/index/login)" gehöhren der Vergangenheit an.
  • +
  • Nickname: (Nur Pro-Complete) Lasse deine Mitglieder sich selber einen Nicknamen geben, Zahlen im Login-Formular und Ref-Link gehöhren nun auch der Vergangenheit an.
  • +
+
+ +
+ 27.08.2004 - 19:00 Uhr: Neues Release v0.2.0-pre3 freigegeben

+ Ein weiteres pre-Release habe ich soeben freigegeben. Auch hier hat sich + wichtiges getan: +
    +
  • Installationsprobleme behoben.
  • +
  • Kategorien, unbest. Mails, Referrals können immer aufgerufen werden, egal ob das Account gesperrt oder freigegeben ist.
  • +
  • Fehlendes modules=xxxx hinzugefügt.
  • +
  • Die von mir im englischen Original-Kommentare entnehme bitte der + ChangeLog Notes auf SourceForge.net +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 01.08.2004 - 10:40 Uhr: Neues Release v0.2.0-pre2 freigegeben

+ Ein weiteres pre-Release habe ich soeben freigegeben. Auch hier hat sich + wieder vieles getan: +
    +
  • CSS-Klassen vereinfacht
  • +
  • Kuriose SQL-Fehler beseitigt (falsche Variable verwendet)
  • +
  • Das Cookie refid zur Speicherung der Referral-ID wird nun sauber neu gesetzt, wenn diese in der URL steht. Somit sollte auch endlich die richtige ID im Anmeldeformular stehen.
  • +
  • Bei aktiviertem Wartungsmodus kannst du noch immer /admin.php aufrufen und dich einloggen (ging vorher nicht.)
  • +
  • Weitere Details entnehme bitte der Online-ChangeLog .
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 09.07.2004 - 13:00 Uhr: Neues Release v0.2.0-pre1 freigegeben

+ Früher als erwartet, gebe ich die Version frei. Die alte hat einfach bei + der Installation zu viel Ärger bereitet. Ggf. kann auch der Patch ein + tiefer noch nicht eingebunden sein. +
+ + + +
+ 07.07.2004 - 21:29 Uhr: Doppelter / vor der modules.php? Bitte selber bugfixen

+ Zwischen Zeile 65 ($URL = "http://"....) und 66 ($PATH = ...) kommt folgendes rein: +
while (substr($URL, -1, 1) == "/") {$URL  = substr($URL, 0, -1); }
+
+ + +
+ 01.07.2004 - 00:20 Uhr: Profilaktualisierungserinnerungen nicht mehr LITE

+ Mailer-Project sendet Erinnerungsmails an die Mitglieder aus, die seit + (Standrtwert) 1/2 Jahr nicht mehr ihr Profil geändert haben. Dieses + Feature ist mit dem neusten Patch aus der LITEFree-Version + entfernt und ist zu einer ProFree-Erweiterung geworden. + Allen Webmastern werde ich diese noch zukommen lassen. +
+ +
+ 20.06.2004 - 01:40 Uhr: Neues Release v0.2.0 freigegeben

+ Diese Version ist endlich stabiler geworden. Auch die Installationsroutine + scheint endlich besser zu klappen. Sollten Sie dennoch Probleme haben, schaue + bitte in den FAQs und Dokumentionen auf dieser Webseite nach. Was diese + Version alles mit sich bringt, ist reichlich und ich liste nur die wichtigsten + Änderungen auf: +
    +
  • FIXED Installationroutine arbeitet endlich besser. Auch die Admin-Erst-Registrierung klappt nun sicherer.
  • +
  • FIXED action-Variable aus der URL entfernt, damit Suchmaschinen deinen Mailtausch besser einlesen (indexing) k&opuml;nnen. Um den Suchmaschinen es noch "schmackhafter" zu machen, werde ich bald die refid ebenfalls aus der URL entfernen und als Cookie auslagern.
  • +
  • FIXED Unzählige kleine Fixes, wie beispielsweise das Updaten der Datenbank, beim Erweiterungsmanagement.
  • +
  • NEU Noch nicht freigegebene {?POINTS?} werden in der {?POINTS?}übersicht getrennt angezeigt.
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 01.06.2004 - 22:20 Uhr: In eigener Sache

+ FAQs und die Dokumentations-Sektionen habe ich weiter ausgebaut. Sollten Sie dennoch nicht fündig werden, schicken Sie mir bitte einfach eine Mail: webmaster (at) mxchange (dot) org +
+ +
+ 30.05.2004 - 21:50 Uhr: Neues Release v0.1.0-pre27 freigegeben

+ Diese Version ist nahazu ein Template/CSS-Release. Ich habe viele + HTML-Formulare aus dem Script ausgelagert als Templates und einige CSS-Klassen + hinzugefügt. Was sich sonst noch geändert hat, ist der folgenden + Aufstellung zu entnehmen: +
    +
  • FIXED Erweiterungs-Management arbeitet nun endlich korrekt alle SQL-Befehle ab. Hier musste das Handling der SQL-Befehle geändert werden.
  • +
  • FIXED Wartungsmodus nun auch per Admin-Bereich ein- und ausschaltbar. Dadurch wird dein Mailtausch komplett gesperrt. Nur Admins können dann noch im Script "unterwegs" sein.
  • +
  • FIXED HTML-Attribut "width" aus vielen what-Dateien in CSS-Klassen ausgelagert. Dies behebt (hoffentlich?) Darstellungsschwierigkeiten unter Firefox.
  • +
  • FIXED Diverse Templates aus der mailid_top.php heraus generiert. Nun kannst du auch diese Datei nach deinen Wünschen hin anpassen.
  • +
  • FIXED action-Dateien aus Erweiterungen werden nun endlich fehlerfrei geladen (wichtig für die Erweiterung "paidlinks", mit der du deinen Werbekunden Werbeplätze und deinen Mitgliedern mehr Verdienstmöglichkeiten anbieten kannst).
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 01.05.2004 - 21:50 Uhr: Neues Release v0.1.0-pre26 freigegeben

+ Diese Version enthält noch mehr Patches als sein Vorgänger: + 27 Patches. (ca. 340 kByte ZIP-Dateien). Hier alle + Änderungen kurz vorgestellt: +
    +
  • NEU Ref-ID kann im Anmeldeformular abgeschaltet werden. Sie wird dann nur noch angezeigt und ist nicht editierbar.
  • +
  • NEU IP-Zeitperre im Anmeldeformular. Damit wird den Fakern noch ein Riegel vorgeschoben.
  • +
  • NEU Automatisches Freischalten der Mailbuchung im Mitgliedsbereich; kann auch ausgeschaltet werden.
  • +
  • NEU Wartungsmodus intergriert (derzeit nicht per Admin-Bereich umschaltbar, trage ich aber bald noch nach)
  • +
  • NEU Versand nach Postleitzahl nun endlich möglich.
  • +
  • NEU Nicht zugewiesene Tasks werden Ihnen zugewiesen, sobald Sie diese bearbeiten.
  • +
  • NEU Task-Zuweisungen können nun auch wieder aufgehoben werden.
  • +
  • NEU Tasks können auch gelöscht werden.
  • +
  • FIXED Erweiterungs-Management verarbeitet nun korrekt die Daten vom Server und zeigt auch Versionsnummern mit an.
  • +
  • FIXED Mein eigener HTML-Code wird nun in vielen Modulen (what-Dateien) kompiliert.
  • +
  • FIXED Nur bestätigte Accounts erhalten nun auch Mails.
  • +
  • FIXED Erneute Anforderung des Bestätigunglinkes klappt endlich.
  • +
  • FIXED Bonus-Mails werden nicht mehr gelistet, wenn Sie Mails eines einzelnen Mitgliedes anzeigen lassen.
  • +
  • FIXED Globale Datenfelder werden alternativ aus $GLOBALS generiert.
  • +
  • FIXED Problem zwischen den Erweiterungen html und html_mail behoben. Diese dürfen aber dennoch nicht gleichzeitig installiert sein.
  • +
  • FIXED Fehlende SQL-Anweisungen (aufgrund von Updates an der Datenbank) in upgrade-full.sql eingebaut.
  • +
  • FIXED Abschliessender Slash aus der Konstante URL während der Installationsphase entfernt.
  • +
  • Sehr viele Formulare aus Scripte als Template ausgelagert (einfacher anpassbar).
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 19.04.2004 - 00:30 Uhr: Neues Release v0.1.0-pre25 freigegeben

+ Ganze 10 (.) Patches enthät diese Version. Hier ein Auschnitt von den + geänderten/korregierten Scripten: +
    +
  • NEU Start- und einmaliger Referral-Bonus werden erst nach x bestätigten Mails tatsächlich vergütet. (Vergütungssperre)
  • +
  • NEU Update-Modus zum Erweiterung-Management hinzugefügt: Wenn Datenbank Updates nötig sind, werden diese automatisch durchgeführt.
  • +
  • NEU Erste Erweiterung ist Online: Admin-Verwaltung
  • +
  • FIXED Bestätigung von Mails arbeitet wieder einwandfrei; war zeitweise nicht möglich, da eine Tabellenspalte nicht vorhanden war.
  • +
  • FIXED Erweiterungen werden nun fehlerfrei gesucht und angezeigt.
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 18.04.2004 - 19:40 Uhr: Erste Erweiterung veröffentlicht: Admin-Verwaltung

+ Soeben habe ich die erste Erweiterung freigegeben. Weiteres kannst du dazu im + Admin-Bereich erfahren. Die Datei pw.php im Hauptverzeichnis + ist somit veraltet. +
+ +
+ 16.04.2004 - 18:10 Uhr: Wichtige Template-Änderung

+ Mit dem neusten 38'er Patch habe ich das Template + header.tpl.de an das Template + guest_header.tpl.de angehängt. Es kann also + anschließend gelöscht werden. Neu ist auch + guest_goto_top.tpl.de, welches den "Nach + oben"-Link enthält. +
+ +
+ 13.04.2004 - 20:30 Uhr: Neues Release v0.1.0-pre24 freigegeben

+ Wie beim vorherigen Patch angekündigt bringt dieses Release einiges neues mit: +
    +
  • Erweitertes Task-Management (Bearbeiten geht nur.)
  • +
  • Erweiterungs-Management hinzugefügt: Neue Erweiterungen werden beim Einloggen in den Admin-Bereich (oder beim Klick auf Willkommen sofort erkannt und als neuen Task hinzugefügt; Aktivieren/Deaktivieren und Löschen von Erweiterungen geht auch).
  • +
  • Verschiedene Fixes, wie: Template-System, Cookie-Pfad, CSS-Datei erweitert und und...
  • + + Hier geht es zur den Downloads weiter... +
+ +
+ 13.04.2004 - 20:00 Uhr: Cookie-Pfad-Problem gelöst

+ Erneut hat sich ein Fehler in databases.php eingeschlichen. Diese habe ich + mit dem 34'er Patch beheben können. Das 35'er Patch enthält + eine verbesserte what-updates.php und eine Sortierfunktion, die Arrays mit + assoziativen Elementen durchsortieren kann. Es wurden nur neuere Patches und + in alpabetischer Reihenfolge angezeigt. +
+ +
+ Um der riesigen Patch-Liste ein Ende zu setzen, habe ich mich entschlossen, + doch nicht ein Stable sondern ein pre24 zu machen. Die Liste ist einfach zu + lang. Neu in der pre24 wird das Erweiterungs-Management und ein endlich zum + Teil funktionierendes Task-Management (nur Bearbeiten geht.). +
+ +
+ 09.04.2004 - 12:25 Uhr: Problem mit modules.php

+ In der modules.php gab es seit einigen Patches eine Änderung am + Sicherheitssystem. Dieses "escape-t" gefärdende Zeichen + wie (,),/,$ und auch den . raus. Dies ist aber beim Eingaben der E-Mail + Adresse nicht wünschenswert, da dann der . in einen \. umgewandelt + wird. +
+ +
+ Was Sie machen müssten ist, in die modules.php reingehen und den . + rausnehmen: +
$HTTP_POST_VARS[$key] =
+     str_replace("/", "\/",
+     str_replace("'", "{QUOT}",
+     str_replace("$", "{DOLLAR_TAG}",
+     str_replace("(", "{OPEN_TAG}",
+     str_replace(")", "{CLOSE_TAG}",
+     str_replace("{--", "{OPEN_TEMPLATE}",
+     str_replace("--}", "{CLOSE_TEMPLATE}",
+     $secvalue)))))));
+
+ +
+ 27.03.2004 - 01:45 Uhr: Mamut-Patch (über 100 kByte.)

+ Das Patch es mal wieder ganz besonders in sich. (Nicht nur weil es erst nach + dem 3. Upload die richtigen Dateien enthielt...) +
    +
  • Viele Formulare (derzeit nur einfache) aus (fast) allen Menüs in externe Templates ausgelagert; auch die kleine Online-Box. Bald werden auch noch sämtliche andere dynamisch erzeugte Formulare in Templates ausgelagert. Die dynamischen Inhalte werden dann zuvor in eine Konstante eingefügt.
  • +
  • Vorsicht: Impressum-Template aktualisiert.
  • +
  • "Sie sind hier"-Links mit jeweiliger Klasse (guest_, member_, admin_content) erweitert. Hier werde ich wohl bald eine xxx_here Klasse erzeugen?
  • +
  • OpenTable() Aufrufe in vielen Modulen (alle drei Typen) so verändert, dass diese per CSS-Datei ansprechbarbar sind.
  • +
  • Klassen-Änderungen an vielen Formularen (Admin-Bereich ist komplett fertig überarbeitet).
  • +
  • Neue Klassen admin_title, admin_table, impressum_header und impressum_body hinzugefügt.
  • +
  • Die Dateien inc/modules/guest/what-mailid.php und de.php (Hauptverzeichnis.) können gelöscht werden.
  • +
+
+ +
+ 20.03.2004 - 20:00 Uhr: Neues Release v0.1.0-pre23 freigegeben

+ Soeben habe ich das pre23-Release freigegeben. Diese Version enthält u.a. + ein verbessertes Template-System, mehr Dokumentation, SQL-Index' für + verschiedene Tabellenspalten und ein verbessertes Sicherheitssystem, das + gefährliche Zeichen unschädlich macht, wie beispielsweise $, + ( und ). +
+ + + +
+ 20.03.2004 - 20:00 Uhr: Bitte aktuelles 20'er Patch downloaden

+ Das Patch erweitert einige Tabellenspalten um einen Index. Dieses soll (laut + eines anderen Programmierers) die Abfragen beschleunigen. Derzeit arbeite ich + diese Erweiterung noch in die Vollversion ein. +
+ +
+ 20.03.2004 - 04:00 Uhr: Neues Release v0.1.0-pre22 freigegeben. (vom 14.03.2004)

+ Hier hat sich wieder einiges getan: +
    +
  • NEU: Support-Seite für Mitgliedsbereich vorerst komplettiert.
  • +
  • NEU: Länge des Bestätigungscodes variierbar (empfehlenswert: 3 - 6)
  • +
  • FIXED: Funktion SQL_AFFECTEDROWS() sollte nun wieder funktionieren ("or"-Teil entfernt)
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 10.03.2004 - 02:00 Uhr: Frühlingsgefühle auch bei mxchange.org

+ Ich starte mit neuem Design in den Frühling und hoffe weiterhin auf + viel Erfolg mit meinem Script. +
+ +
+ 03.03.2004 - 22:00 Uhr: Upps, Fehler erst jetzt entfernt

+ Upps, in der pre21 war ein Fehler im gerade vermeidlich korregiertem Part: + Cookie-Pfad. Wenn das Script im Hauptverzeichnis installiert wurde, wurde die + Domain als Pfad gespeichert, was logischerweise falsch ist. Bitte lade dir + erneut das pre21 herunter. +
+ +
+ 02.03.2004 - 22:30 Uhr: Neues Release v0.1.0-pre21 freigegeben

+ Und hier ist gleich eine ganze Menge gefixed und hinzugefügt: +
    +
  • NEU: E-Mail Adresse wird in der Installationsphase abgefragt (Konstante WEBMASTER in der config.php)
  • +
  • NEU: Benachrichtigung des Mitgliedes, wenn sein Profil nicht mehr Up-To-Date ist (Standart-Wert: 1/2 Jahr)
  • +
  • NEU: Header-Template für Mitglied- und Gastmenü. Dieses sitzt oberhalb des regulären Header-Templates.
  • +
  • NEU: Weitere Menü-Templates für obrige Menüs: Titel und Menüpunkt
  • +
  • NEU: Alte Buchungen und Bonus-Mails lassen sich per Admin-Bereich löschen. Bei der Normal-Mail wird der Werber benachrichtigt.
  • +
  • NEU: ChangeLog-Datei (englisch) begonnen
  • +
  • FIXED: Sprachenvariable lang in ein Cookie ausgelagert und aus der URL entfernt.
  • +
  • FIXED: Textübergabe an SQL-Datenbank und in Mails aus Formularen klappt nun reibungslos (addslashes und stripslashes waren falsch verwendet.)
  • +
  • FIXED: Deutsche Datum- / Zeitangabe im header-Template gefixed (kein am/pm mehr)
  • +
  • FIXED: Speicherpfad für Cookies wird automatisch korrekt erkannt.
  • +
  • FIXED: Andere Einstellungen verschönert (in Unterbereiche unterteilt)
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 29.02.2004 - 00:35 Uhr: Weitere Templates für die Menüsysteme "Gast" und "Mitglied"

+ Und zwar sind folgende hinzugekommen: +
    +
  • Menü-Haupttabllenkopf: Hier können Sie dann bequem Hintergrundbilder o.ä. einfügen.
  • +
  • Menü-Titel: Das Menüsystem ist in Blöcke unterteilt. Diese haben eine Titelzeile, die Sie nun auch ändern können (nicht nur per CSS-Klasse.)
  • +
  • Menüpunkt: Jeder Menüpunkt kommt aus diesem Template.
  • +
+ Nun sollte es einfacher sein, das Script an deine Bedürfnisse anzupassen. + Später werden wir hier wohl ein richtiges Template-System erzeugen, als + "nur" ein Teil-Template-System. +
+ +
+ 28.02.2004 - 20:50 Uhr: Admin-Menüs fehlen?

+ Fehlt dir ein paar Menüs im Admin-Bereich wie + "{?POINTS?}-Gutschrift", "Kategorien auflisten" und + "Updates prüfen"? Dieses kleine SQL-Fix + erweitert dein Admin-Menü um die genannten fehlenden Einträge. +
+ +
+ Und schaue gleich mal unter Verschiedenes / Updates prüfen nach. :-) +
+ +
+ 24.02.2004 - 19:50 Uhr: Neues Release v0.1.0-pre20 freigegeben

+ Nach langer Pause bringe ich endlich das ersehnte Update auf pre20 raus. In + dieser Version habe ich die URL-Blacklist, Mitgliederdaten-Tabelle und ein + sehr grosses Problem gefixed, dass während der Installation auftritt. + Die Installation sollte endlich wieder klappen. +
+ + + +
+ 07.02.2004 - 15:00 Uhr: Neues Release v0.1.0-pre18 freigegeben

+ Nach 6 Tagen Arbeit habe ich endlich wieder eine neue Version fertig gestellt. + Mit der neuen Online-Liste hat sich jedoch ein neuer Fehler eingeschlichen. + Ich muss hier unbedingt den Grund des Fehlers finden. :-( +
+ + + +
+ 01.02.2004 - 16:30 Uhr: Neues Release v0.1.0-pre17 freigegeben

+ Die SQL-Anweisungen sind nun in einer externen Bibliothek (inc/db/lib.php) + ausgelagert. Somit sollte es für Sie einfacher sein, diese auf andere + Datenbanken umzuschreiben. Zudem kann bei Mailempfang Urlaub + keine Mails mehr gebucht werden. +
+ +
+ 31.01.2004 - 07:30 Uhr: Neues Release v0.1.0-pre16 freigegeben

+ Und wiedermal ist einiges fertig geworden: +
    +
  • Vom Mitglied nicht bestätigte Mails sind vom Admin einsehbar und löschbar.
  • +
  • Das Mitglied sieht nun, wie viele {?POINTS?} es pro unbestätigter Mail erhält und wie viel es gesamt erhalten kann.
  • +
  • In der vom Mitglied buchbaren Mails sind nun Platzhalter verwendbar. Diese kann das Mitglied beim Buchen mit eingeben: +
      +
    • %anrede% - Anrede des Empfängers
    • +
    • %vorname% - Vorname
    • +
    • %nachname% - Nachname
    • +
    +
  • +
+ Hier geht es zur den Downloads weiter... +
+ +
+ 30.01.2004 - 22:20 Uhr: Sehr wichtiges Patch freigegeben. Bitte vom Admin-Bereich downloaden

+ Das Patch behebt einen Versand-Fehler. Viele Mitglieder eines anderen + Mailtausches haben sich beschwert, sie würden zu viele Mails empfangen. + Nach Prüfung der betroffenen Accounts stellte sich dies auch als war raus.
+ Der Fehler war ein - eigentlich - simpler Variablen-Fehler... Patch entfernt. +
+ +
+ 27.01.2004 - 23:20 Uhr: Neues Release v0.1.0-pre15 freigegeben

+ Bei dieser Version ist endlich möglich, die von den Mitgliedern + ausgewählte Kategorien vom Admin-Bereich aus anzeigen zu lasssen. +
+ + + +
+ 25.01.2004 - 05:25 Uhr: Auch ich vergesse mal was..

+ Das neuste Patch korregiert zwei Fehler: +
    +
  1. Das neu zugesandte Passwort wird nun endlich in der Datenbank gespeichert.
  2. +
  3. Profildaten ändern prüft nun, ob das Passwort auch eingegeben wurde.
  4. +
+ Das Patch ist wiedermal übder den Admin-Bereich herunterladbar. +
+ +
+ 25.01.2004 - 04:20 Uhr: Neues Release v0.1.0-pre14 freigegeben

+ Bereits versendete Mails von den Mitgliedern werden nun nicht mehr unter + EMail-Details ansehen gelistet, sondern tauchen im neuen + Menüpunkt EMail-Archiv auf. Ein Patch ist zudem + über den Admin-Bereich der Vorgänger-Version v0.1.0-pre13 + erreichbar. +
+ +
+ Wichtig. Dieses Patch erweitert auch die + what-updates.php beim Update-Link (Voll-Update) mit der aktuellen + Sprache. Bitte lade dir ebenfalls diesen Patch runter. +
+ + + +
+ 16.01.2004 - 18:50 Uhr: Fehler in action-Dateien behoben

+ Kurz nachdem ich die Version 0.1.0-pre13 freigegeben habe, merkte ich, dass + etwas in der Menüleiste oben nicht stimmte. Patch + entfernt. +
+ +
+ 16.01.2004 - 18:30 Uhr: Neues Release v0.1.0-pre13 freigegeben

+ Das Tabellen-Problem mit dem Internet Explorer scheint aus der Welt zu + sein. +
+ + + +
+ 16.01.2004 - 16:40 Uhr: Wichtiges Patch

+ Offensichtlich hat mein erster Co-Coder seinen Banner-Code - mit oder ohne + Absicht ist erstmal dahingestellt - eingebaut gelassen. Ich habe einfach eine + ältere Version der Datei genommen. Patch entfernt. +
+ +
+ 15.01.2004 - 20:30 Uhr: Internet-Explorer Problem behoben

+ Auf vielen Seiten wird das Menü unter dem Internet Explorer breiter + dargestellt als es soll. Das Patch entfernt. Im Laufe der + nächsten Versionen werde ich alle anderen Scripte durchgehen und + erweitern. +
+ +
+ 13.01.2004 - 22:20 Uhr: Neues Release v0.1.0-pre12 freigegeben

+ In dieser Version kommen folgende (eigentlich selbstverständliche) Sachen + hinzu: +
    +
  1. Gesamtguthaben an Punkten unter dem {?POINTS?}-Guthaben-Link
  2. +
  3. Referral-Anzahl und Gesamtanzahl in selber Übersicht
  4. +
+ Dann hat ein Mailtausch-Betreiber für mich (hoffentlich) das Einloggen + und Ausloggen gefixt. (Danke nochmals für die Arbeit). +
+ + + +
+ 01.01.2004 - 01:20 Uhr: Frohes Neues

+ Auch mxchange.org wünscht seinen Besuchern und Mailtausch-Betreibern ein + frohes Neues. Zugleich bringe ich ein Patch raus, mit dem es nun möglich + ist, sämtliches zu editieren bzw. löschen:
+
    +
  • Kategorien
  • +
  • Referral-Ebenen
  • +
  • Mailarten
  • +
  • Anzahl Mails pro Tag
  • +
+ Die Referral-Banner werden wohl erst im naechsten Release mit editierbar sein. +
+ + + +
+ Weitere interessante News findest du nun in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2003 +
diff --git a/templates/de/html/news-2005.tpl b/templates/de/html/news-2005.tpl new file mode 100644 index 0000000000..c4062c1d4b --- /dev/null +++ b/templates/de/html/news-2005.tpl @@ -0,0 +1,737 @@ +
+ : : : News-Archiv 2005 : : : +
+ +
+ 31.12.2005 - 17:00 Uhr: Knapp vor Neujahr doch zwei FAQs.

+ Diese betreffen beide die Installationsphase des Scriptes. Zum einem ging es + dabei um den fehlgeschlagenen Finalizer, zum anderen um eine Fehlende Spalte + 'mt_word'. Lese dir dazu einfach die beiden neuen FAQs durch, wenn du + ebenfalls auf diese Fehler stösst:
+
+ 35. Anfrage wegen der fehlenden Spalte
+ 36. Anfrage wegen des Finalizers. +
+ +
+ 30.12.2005 - 20:40 Uhr: Weitere Update-Welle an den Erweiterungen

+ Dieses Mal betrifft es eher keine Sicherheitslöcher, sondern nur die + bessere Lesbarkeit und somit besseres Verständnis des Quellcodes. Du + solltest aber mediadata mindestens auf die Version + 0.0.5 aktualisieren, denn dort ist nun ein weiterer - nicht + fataler - Fehler ausgemerzt.
+
+ Dieser Fehler entstand nach dem die Mail komplett versandt wurde. Das Script + hat dann versucht, eine Null (0) aufzuaddieren. Eine scriptinterne Funktion + (SQL_QUERY_ESC()) hat aber aus mir unerklärlichen Gründen die Null + entfernt. Der somit enstandene SQL-Befehl war somit ungültig. Es wurden + aber dennoch die korrekten Werte in die Mediadaten-Tabellen eingetragen.
+
+ Du solltest die mediadata aktualisieren, damit der SQL-Fehler + beseitigt ist und deinen Mailtausch nur "unschön" aussehen lässt. +
+ +
+ 26.12.2005 - 15:00 Uhr: Game-Engine kommt schrittweise voran

+ Aufgrund der hohen Anfrage bezöglich der Game-Engine (die zum + Anschliessen externer Webseiten verwendet werden kann, wie z.B. Spiele, + Banken usw.), habe ich mich entschlossen, diese voranzubringen. Sie bietet + derzeit die folgenden Befehlsgruppen und Befehle an:
+
+ Befehlsgruppen:
+ · Verschiedene Status des Export-Eccounts (status.php)
+ · Daten des Export-Accounts (export.php)
+ · Daten eines Mitgliederaccounts im Nur-Lesen-Zugriff (rmember.php)
+
+ Befehle:
+ · Anzahl Abfragen (freie, gekaufte, verbrauchte), Status des Hauptaccounts (= Mitgliedsaccount)
+ · Punkteguthaben, Mailbuchungen, persöngliche Daten, usw.
+ · Teilnehmende Mitglieder in Bettel- und Aktiv-Rallye
+
+ Die Game-Engine kannst du derzeit nur per CVS erreichen, da diese noch sehr + experimentell ist. Sobald sie aber betriebsbereit ist, werde ich sie als + ZIP-Archiv zum Downloaden bereitstellen. +
+ +
+ 22.12.2005 - 13:40 Uhr: Sicherheitsupate an 13 Erweiterungen freigegeben

+ Soeben habe ich 13 meiner Erweiterungen aktualisiert. Dieses Mal sind die + Include-Befehle in den action-Dateien besser gegen Angriffe abgesichert. Ich + empfehle hier allen Webmastern das Update einzuspielen.
+
+ Zudem habe ich wieder die Zusatzangebote entfernen müssen, da sie doch + einen zu starken "geschäftlichen Charakter" aufweisen und ich + keinen Gewerbeschein habe. +
+ +
+ 05.12.2005 - 21:10 Uhr: Umbauten an der Webseite abgeschlossen

+ Die erste grosse Umbau-Aktion - das Umstellen vom "ich" auf + "wir" ist somit abgeschlossen. Die gesamten News bleiben aber davon + verschont. Auch habe ich (okay, hier ein ich nochmal), die + Texte etwas umgeschrieben, damit sie ansprechender klingen.
+
+ Als nächstes kommen die Zusatzangebote dran. Eines vorweg verraten: Es + wird 3 Arten von Angeboten geben. Einzelangebot, Komplettpaket und Individualangebote. +
+ +
+ 04.12.2005 - 19:25 Uhr: Zusätzliche Angebote nun Online

+ Ich habe nun endlich die lang angekündigten Zusatzangebote eingestellt + (einige kannst du bereits unentgeldlich nutzen, diese werden aber + kostenpflichtig werden). Lade dir dazu meine aktuelle Preisliste vom Server + als PDF, Excel oder OpenOffice2.0-Tabelle herunter.
+
+ Seite existiert nicht mehr. +
+ +
+ 30.11.2005 - 21:00 Uhr: Benachrichtigung wegen Aktiv- und/oder Bettel-Rallye fertiggestellt.

+ Die geplante Verbesserung des Scriptes, eine Benachrichtigung einzubauen, + wenn eine Bettel- bzw. Aktiv-Rallye gestartet oder gestoppt wurde, ist nun + fertig und seit gestern Abend auf dem Server. +
+ +
+ Du kannst dabei auch für Aktivierungsbenachrichtigungen eine + Vergütung und Wartezeit einstellen. Dann werden Die + Aktivierungsbenachrichtigungen als Bonus-Mails versendet. Du musst dazu auch + die Erweiterung bonus installiert haben, auch wenn du nur + die Bettel-Erweiterung installiert hast und vergütete Benachrichtigungen + aussenden willst. +
+ +
+ Deine bereits bestehenden Mitglieder erhalten nach Update der Erweiterungen + beg und bonus erstmal keine Nachrichten, da + diese erstmal deaktiviert sind. Wenn du also willst, dass dennoch die + bestehenden Mitglieder auch eine Benachrichtigung erhalten, schalte diese + einfach ein. +
+ +
+ Auch habe ich das Anmeldeformular ein wenig verbessert. Zum einem kannst du + jetzt bestimmen, ob Ja oder Nein als + Standart-Auswahl in den Kategorien gesetzt ist. Zum anderen werden neue + Mitglieder optional (also auch abschaltbar) über bereits laufende + Rallyes informiert. Dies geschieht ebenfalls entweder per unvergüteter + Benachrichtigung oder per Bonus-Mail und durch die selben Einstellungen + geändert werden. +
+ +
+ 29.11.2005 - 17:30 Uhr: Neues Testing-Archiv mit bis Patch-Level 492 freigegeben.

+ Seit ein paar Minuten existiert ein neues Testing-Archiv der Version + 0.2.0-pre10 mit allen Patches (bis 492) inklusive auf den SourceForge.net + Servern zum freien Download. Hier findest du die Download-Seite dazu:
+
+ Download-Link veraltet. +
+ +
+ 26.11.2005 - 21:15 Uhr: Erscheinungstermine meiner Scripte

+ Wegen mehrfacher Anfragen, wann diese oder jene Erweiterung erscheinen wird, + habe ich mich kurz entschlossen, eine kleine Liste aufzustellen. Sie ist + keinesfalls komplett. Ich plane noch viel, viel mehr zu programmieren. Aber + sie sollte erst das wesendliche beinhalten und dir wenigstens einen kleinen + Überblick geben, wann welche Erweiterung hier erscheinen wird. +
+ +
+ Auch ist die Liste keine "Terminliste" in dem Sinne, sondern eher als sich "dynamisch + ändernde Prioritätenliste" anzusehen. +
+ +
+ Der Link ist bereits nicht mehr gültig. +
+ +
+ 26.11.2005 - 15:35 Uhr: Zugriffsrechte und die Dummy-Datei

+ Nach langer Suche nach einen mysteriösen Fehler, wieso bei einer + Installation des Scriptes immer das Verzeichnis inc als + beschreibbar galt, obwohl 555 (CHMOD) eingestellt war, habe ich den Fehler im + Script inc/functions.php gefunden. Es wird nämlich zum + Testen der Rechte eine temporäre Datei angelegt. Nach dem Testen wurde + sie allerdings nicht mehr entfernt, was zu den mysteriösen Fehlern + führte. Das aktuelle Patch 490 beseitigt diesen. +
+ +
+ 19.11.2005 - 13:05 Uhr: Aktiv-Rallye und Bettel-Rallye repariert.

+ In den beiden Rallyes hatte sich der Fehlerteufel eingeschlichen. Dieser ist + nun endlich raus. +
+ +
+ In der Aktiv-Rallye wurden die hinzugeschalteten Boni nicht bein der + Sortierung der Userliste berücksichtigt. Folglich war die Reihenfolge der + Gewinner nicht richtig und somit auch vielleicht die falschen Mitglieder + benachrichtigt. +
+ +
+ In der Bettel-Rallye trat nur bei Verwendung des Nicknames als User-ID auf. + Dieser wurde falsch in eine Zahl umgewandelt. Das hatte zur Folge, dass immer + das erst bettelnde und nicht das aktuell bettelnde Mitglied die {?POINTS?} + gutgeschrieben bekommen hat. +
+ +
+ Dann habe ich zwei weitere Befehle der Game-Engine hinzugefügt: Daten zur Aktiv-Rallye und + Bettel-Rallye anzeigen. +
+ +
+ 17.11.2005 - 22:00 Uhr: Sicherheitsupdate 487 sichert Script gegen XSS-Attacken ab

+ In dem Datenfeld-Element PHP_SELF des globalen Datenfeldes + $_SERVER wird der Pfad und der Name des aktuell + ausgefürhrten Scriptes abgespeichert. Dieser kann durch eine geschickt + geänderte URL manipuliert werden. Fremde Skripte lassen sich somit bequem + ausfüren - unter der IP-Nummer des jeweiligen Servers versteht sich. +
+ +
+ Dieses Patch sichert nun das besagte Datenfeld-Element (hoffentlich + genügend) ab, in dem es nicht nur viele Zeichen mit + htmlentities() in HTML-konforme Zeichen umwandelt (Aufruf des + fremden Scriptes ist somit verhindert oder erschwert), sondern auch durch + Entfernen der angehängten URL des fremden Scriptes. +
+ +
+ Wenn dir das zu technisch ist, lade dir einfach den Patch runter. Im + Normalfall sollte sich am Verhalten des Scriptes nichts ändern. Das Patch + kannst du wie gewohnt per Downloads von meiner Seite runterladen oder direkt + aus deinem Admin-Bereich. +
+ +
+ Es ist somit das zweite sicherheitsrelevante Patch in Folge. +
+ +
+ 17.11.2005 - 21:00 Uhr: Anmeldung im Forum sollte wieder arbeiten

+ Wegen eines Scripte-Updates klappte die Anmeldung zum Forum nicht. Es fehlten + noch ein paar Einstellungen in der config.php. Nun sollte die Anmeldung wieder klappen. +
+ +
+ BTW: Die Game-Engine (welche per CVS-Zugang erreichbar ist) versteht nun 5 Befehle. +
+ +
+ 09.11.2005 - 14:40 Uhr: Sicherheitsupdate 486 schliesst Lücke in lib-mysql3.php

+ Das Script inc/db/lib-mysql3.php wiess eine + Sicherheitslücke in der Funktion SQL_QUERY_ESC() auf, die verhindern + soll, SQL-Injektionen durchführen zu können. Der Fehler war schlicht + ein Aufruf der Funktion COMPILE_CODE() vor dem Zusammenbau der SQL-Anweisung. + Das Patch 486 schliesst diese Lücke. +
+ +
+ Zudem plagt mich derzeit leichtes Fieber und Schüttelfrost, weshalb ich + jetzt nur vermindert weiter am Script arbeiten kann. +
+ +
+ 23.10.2005 - 21:00 Uhr: Neues Testing-Archiv enthält alle Patches

+ Seit heute Abend steht ein neues Testing-Archiv mxchange-testing_0.2.0-pre10_485 mit allen bereits + eingespielten Patches zum Download über die SourceForge.net-Server zur + Verfügung. +
+ +
+ 23.10.2005 - 01:45 Uhr: Bettel-Rallye nun möglich.

+ Mit dem neusten Patch 483 und den aktuellen Versionen der Erweiterungen + beg und task ist nun eine optional + aktivierbare Bettel-Rallye mit Rallye-Übersicht im Admin- und + Mitgliedsbereich möglich. +
+ +
+ Zudem habe ich die Aktiv-Rallye (bonus.) insofern + abgesichert, dass bestehnde Bonus-Vergütungen bei Abschaltung der + Aktiv-Rallye um 00:00 Uhr (täglicher Reset.) den Mitgliedern + gelöscht werden. Ansonsten ist es möglich, dass Mitglieder mit + Bonus-Guthaben bei erneuter Aktivierung wieder "Im Rennen" sind. +
+ +
+ 22.10.2005 - 17:30 Uhr: Mal etwas historisches...

+ Und das gleich in doppelter Bedeutung: Am 11. September 2003 tauchte zum + ersten Mal Mailer-Project auf einem östereichischen Server auf. Seit + August 2003 (genaues Datum leider unbekannt, da ich die nicht freigegebenen + Versionen nicht mehr auf meiner Festplatte habe) bin ich nun dabei, + Mailer-Project voranzutreiben. +
+ +
+ Die erste veröffentlichte Version (alle Versionen waren mal auf SourceForge.net zu + finden) ist die mxchange-0.0.4 und ist mal gerade 50 KByte + gross gewesen. Die aktuelle Version 0.2.0-pre10 ist knapp 200 KByte gross. +
+ +
+ Alle diese Versionen findest du nun auf meinem Server:
+  · {?URL?}/downloads/cvs-nightly/archive/ +
+ +
+ 08.10.2005 - 14:00 Uhr: Hinweise zum Updaten der Mediadaten-Erweiterung

+ Solltest du nach Updaten der Erweiterung mediadata auf die + aktuelle Version 0.0.4 keine Mailbuchungen in den Mediadaten angezeigt bekommen, + installiere die Mediadaten einfach per Adminmenü neu. Wie das geht habe + ich in der FAQ Nr. + 29 genau beschrieben. +
+ +
+ 04.10.2005 - 19:25 Uhr: Endlich wieder eine News .;-)

+ Nach fast vier Monaten taucht unter mxchange.org-News endlich wieder eine + News auf. In der Zwischenzeit hat sich viel um dem Sponsorenbereich getan - + die Screenshots können Sie weiterhin in der Photo-Gallerie finden. +
+ +
+ Und seit ein paar Wochen existieren sogenannte "Testing-Archive" auf den SourceForge.net-Servern. + Dieses beinhalten die bis einschliesslich zur angegebenen Patch-Level (das + ist derzeit 478) alle Patches. Ein langes und mühevolles Hochladen der 60 + Patches entfällt somit. +
+ +
+ Der Download-Link ist bereits veraltet. +
+ +
+ 10.06.2005 - 19:25 Uhr: Photo-Gallerie eingerichtet.

+ Unter photos.mxchange.org ist nun eine + Gallerie eingerichtet. Dieses bietet dir Screenshots von meinem Desktop an, + der die neusten Entwicklungen aller meiner Scripte anzeigt. Schaue es + dir doch einfach mal an. +
+ +
+ 28.05.2005 - 21:15 Uhr: Forum auf v0.4.1 gedowngradet.

+ Soeben habe ich das Forum auf die Vorgänger-Version 0.4.1 gedowngradet. + Das Aktualisieren auf die neue Version war bis jetzt gescheitert. +
+ +
+ 30.04.2005 - 19:00 Uhr: Screenshots der aktuellen Entwicklungen

+ Schaue dir die neuesten Entwicklungen an. Die hier aufgeführten Bilder + stammen aus meinem Intranet. +
+ +
+ 17.04.2005 - 20:20 Uhr: Aktualisierter Verdopller auf mxchange-demo.de.

+ Den Admin-Bereich der Vorab-Version v0.0.6 des Verdopplers kannst du dir nun + unter mxchange-demo.de + ansehen. Es sind z.B. eine Gruppenauszahlungsfunktion (erst ab mindests X + Auszahlungen wird ausgezahlt) hinzugekommen. +
+ +
+ 15.04.2005 - 21:10 Uhr: Alle Erweiterungen auch von mxchange.org erreichbar.

+ Ich habe mich nun umentschieden, die Download-Links zu allen verfügbaren + Erweiterungen auch über diese Webseite verfügbar zu machen. Vorher + waren die Erweiterungen nur aus dem Admin-Bereich deines Mailtausches + erreichbar. Ich habe mir selber damit auch eine grosse Erleichterung angetan, + da ich jetzt nur noch eine Datei ändern brauch. +
+ +
+ 04.04.2005 - 21:10 Uhr: Support-Forum eingerichtet

+ Hier findest + du das Support-Forum. Allerdings ist es noch auf Englisch (laut Forum des + Scriptes soll die deutsche Übersetzung vielleicht mit nächster + Version fertig sein.) +
+ +
+ 03.04.2005 - 20:30 Uhr: Patches wieder verfügbar

+ In einer Textdatei auf dem Server (die die Beschreibung zu den Patches + enthalten) war ein Zeilenumbruch zu viel. Entsprechend wurden nur Patches bis + theoretisch. Nr. 401 angezeigt. Du solltest jetzt wieder aus deinem + Adminbereich alle Patches bis derzeit 406 einsehen können. +
+ +
+ 01.04.2005 - 17:30 Uhr: Freigabe des Release 0.2.0-pre11 verschoben

+ Die Freigabe des nächsten Releases 0.2.0-pre11 wird + sich aller Voraussicht nach noch weiter verschieben. Der primäre Grund + hierfür ist die derzeit stark beschädigte (und auch komplett + überholbedürfte) Installationsroutine des Scriptes. In der Zwischenzeit + geht es mit anderen interessanten Erweiterungen weiter. +
+ +
+ 25.03.2005 - 15:05 Uhr: Halb-automatische Installation

+ Derzeit ist die halb-automatische Installation gestöhrt. Bitte weiche auf + die manuelle Variante aus. Ich werde in nächster Zukunft die Installation + komplett überarbeitet haben. Es wird dann auch der "Wizard" + wegfallen und dafür eine deutlich übersichtlichere und einfach + bedienbare Version der Installation mit integriert sein. +
+ +
+ 06.03.2005 - 19:10 Uhr: Patch 392 mit Schönheitsfehler

+ Im Patch 392 - welches das automatische Aktualisieren der sogn. Patch-Level + ermöglicht - ist versehentlich die Version pre11 mit eingeflossen. Das + fehlerhafte Patch habe ich nun korregiert und erneut hochgeladen. Bitte lade + es dir erneut herunter. +
+ +
+ 392-Patch_Level_Update_FIX.zip + (6795 Bytes) +
+ +
+ 02.03.2005 - 19:30 Uhr: Neues Release v0.2.0-pre10 freigegeben.

+ Ganze 30 Patches sind in der neusten Version + mxchange-0.2.0-pre10 enthalten. Ich habe beispielsweise ein + sehr grosses Problem in der Mailbuchungsseite, Mailversand und auch Probleme + mit fehlenden Funktionen (weil eine Include-Datei nicht permanent eingebunden + war) behoben. Was ich alles genau an Fehlern beseitigt habe, möchte ich + dir hier vorstellen (wenn auch einige Patches zum einem Punkt zusammengefasst + sind): +
    +
  • FIXED: Im Sende-Pool (der die Mails automatisch etappenweise versendet) war ein schwerwiegender Fehler: Es wurden zwar Mails versendet, leider aber nicht in der gewünschten Etappengrösse, inklusive der Bonus-Mails. Zudem wurde keine Verstand-Bestätigung sowahl an das Mitglied als auch an den Administrator versendet.
  • +
  • FIXED: Cookie-Problem im Referral-Sytem (es wurde immer die Standart-RefID gesetzt und nicht die Referral-ID aus der URL) beseitigt.
  • +
  • FIXED: Wenn du an Affiliate-Programmen (Partnernetzwerke mit Pflichteinbindung von HTML-Codes) dran teilnehmen willst und den HTML-Code in deinem Mailtausch einbauen willst, so ist dies nun möglich.
  • +
  • FIXED: Admin-Bereich: Link zum Mitgliedsprofil korregiert (es wurde nach dem Patch 364 immer auf what=list_refs verlinkt)
  • +
  • FIXED: Templates in Hinblick auf den bald anstehenden Frameset-Support umbenannt (damit diese nicht konfliktieren)
  • +
  • FIXED: Leichtgewichtigen Fehler im Bestätigungslink (zum Freischalten des Mailtausch-Accounts) beseitigt.
  • +
  • FIXED: Login-Prozedur auf die neue Version der Bonus-Erweiterung vorbereitet (Aktiv-Rallye.)
  • +
  • FIXED: Die Erweiterung muss aktiv bleiben, damit auch das Gast- bzw. Mitgliedsmenü eingeblendet wird.
  • +
  • FIXED: Speicherung der Profildaten des Mitglieds repariert.
  • +
  • FIXED: Der Admin kann nun endlich das Standart-Theme (welches er als Standart gesetzt hat) in der Datenbank abspeichern. Somit bekommen auch Ihre Mitglieder das Design beim ersten Aufruf Ihres Mailtausches das Design zu sehen.
  • +
  • FIXED: In der Datenbank nicht registrierte Module werden bei Aufruf des Modules automatisch dazugefügt. Somit können Sie auch beispielsweise dem Bettellink einen eigenen Browser-Titel setzen.
  • +
  • FIXED: Wenn der Admin eingeloggt ist, werden endlich wieder alle Erweiterungen und deren Konfigurationsdaten - auch deaktivierte - geladen.
  • +
  • FIXED: Wenn keine Nachkommastelle in einer auszugebenen Zahl vorhanden sind, wurde dennoch das Komma am Ende angehängt.
  • +
  • FIXED: Ist der Admin eingeloggt, werden nun wichtige Admin-Includes geladen (derzeit admin-inc.php)
  • +
  • FIXED: Zusammenzählen der Punkte von Mitgliedern optimiert - es ist jetzt dazu nur noch eine SQL-Anweisung nötig.)
  • +
  • FIXED: Ausgabe des CSS-Codes repariert.
  • +
  • FIXED: Im Admin-Bereich wird die Konfiguration mit einer einheitlichen Funktion gespeichert. Hier war ein Fehler beim Umgang mit dem Semikolon, was zwangsläfig abgespeicherte Daten unbrauchbar machte.
  • +
  • FIXED: Mitglieder müssen jetzt endlich eine bestimmte Mindestanzahl von Mails (=Minimum-Empfänger) buchen.
  • +
  • FIXED: Es ist jetzt für deine Mitglieder möglich, das vergessene Passwort entweder durch Eingabe der User-ID oderEMail-Adresse oder (neu.) des Nicknamens sich zuschicken zu lassen. Vorher musste man User-ID und EMail-Adresse eingeben.
  • +
  • FIXED: Im Copyright-Hinweis fehlte das aktuelle Jahr 2005, ist auch wichtig...
  • +
+ Wenn du bereits mein Script installiert hast, lohnt sich dennoch das Updaten + (zumal du dann wieder neue Patches aus deinem Admin-Bereich sehen + kannst), da ich vor dem Upload der Version noch einiges an Fehlern + gefunden und beseitigt habe. +
+ +
+ Was wird es in der Zukunft noch geben? +
+ +
+ · HTML-Newsletter beispielsweise, den deine Mitglieder gegen eine einstellbare Gebühr auch abbestellen können (oder eben regulär durch Account-Löschung).
+ · Es wird auch sogn. Question-Mails geben (was das bei mir wird, verrate ich erstmal nicht.)
+ · Stark verbesserte User-Liste im Admin-Bereich (pro Eintrag zwei Zeilen, wegen Überbreite der Tabelle)
+ · Mailbuchung: Maximal leistbare Mails in Kategorien in Verbindung mit Punkteguthaben (damit man sich das Rechnen sparen kann)
+ · Kostenpflichten Support, Update- und Installations-Service, den du bis zu 2 Jahre lang buchen kannst (natürlich auch länger.)
+
+ +
+ Und mit Sicherheit noch eine ganze Menge mehr. Zu viel will ich dir nicht verraten... +
+ +
+ 23.02.2005 - 22:00 Uhr: Neue FAQs 25 - 27 fertiggestellt

+ Die FAQs beschätigen sich mit Themen, wie das Erweiterungsmanagement + funktioniert, wie überhaupt Erweiterungen eingerichtet (registriert) + werden und wie du einen Affiliate-HTML-Code in das Script einbinden kannst. +
+ +
+ 22.02.2005 - 22:40 Uhr: Endlich beseitigt...

+ Mit dem neusten Patch (384b) ist endlich ein Fehler aus dem Sende-Pool + verbannt. Zudem war ein Fehler in der Aktiv-Rallye. Beide Fehler möchte + ich dir mit praktischen Beispielen näher bringen: +
+ +
+ Sende-Pool: +
    +
  • Nehmen wir mal an, du hast als Sende-Interval 10 Mails eingestellt (es werden also 10 Mails pro Seitenbesuch=Klick im Script versendet)
  • +
  • Mein Script hat aber immer 1 Mail pro Klick versendet und keine Benachrichtigung versendet, dass die Mail ausgesendet wurde.
  • +
  • Zudem wurden die Bonus-Mails in einem Rutsch ausgesendet und nicht in 10er Schritten
  • +
  • Alles dieses ist jetzt endlich behoben.
  • +
+
+ +
+ Aktiv-Rallye: +
    +
  • Du versendest gerade eine grosse Mail im kleinen Schritten, der Versand kann also sagen wir mal 10 Minuten dauern (dafür hast du aber auch niedrigere Serverlast.)
  • +
  • Jetzt fangen die ersten Mitglieder an, die Mail zu bestätigen und die Aktiv-Rallye-Funktion berechnet den Rang.
  • +
  • Genau hier ist der Fehler: Es wurden die Anzahl der Bestätigungslinks und der versendeten Mails genommen.
  • +
  • Folgerung: Falsche Ränge (öfters Minus-Werte, was zu leeren Tabellen führte)
  • +
  • Ich habe hier nun die gezählten Klicks einfach als Rang genommen und siehe da: Es klappt.
  • +
+ Übrigens: Wenn du nicht weist, wie du eine Erweiterung + aktualisieren sollst, schaue dir am besten die FAQs 23 und 24 + an. +
+ +
+ 21.02.2005 - 21:35 Uhr: Gravierender Fehler in Mailbuchungsseite behoben...

+ Es wurde beim Ermitteln der nötigen {?POINTS?} die maximale Anzahl von + Usern in der Kategorie gewählt und nicht die vom Mitglied eingegebene. + Resultat: Das Script beschwerte sich, der User hätte nicht genügend + {?POINTS?} auf dem Konto. Ein Rechenbeispiel:
+
    +
  1. Das Mitglied wählt eine Kategorie XYZ mit maximal 15 Empfängern aus.
  2. +
  3. Es stellt die Mailart "3 {?POINTS?} Kosten / Mail"ein.
  4. +
  5. Es hat aber nur {?POINTS?} für 10 Empfänger und gibt 10 ein.
  6. +
  7. Das Script hatte bis zu dieser Version 3 {?POINTS?} * 15 = 45 {?POINTS?} gerechnet, hat das Mitglied mehr oder gleich 45 {?POINTS?}, fiehl dieser Fehler nicht auf.
  8. +
  9. Hatte es aber, wie hier im Beispiel 31 {?POINTS?}, konnte es nicht mehr buchen.
  10. +
  11. Jetzt ist der Fehler endlich weg. Mache dies bitte deinen Mitgliedern bekannt.
  12. +
+
+ +
+ 19.02.2005 - 20:00 Uhr: Neustes Patch mit Schönheitsfehler...

+ Im neusten Patch hat sich ein "Schönheitsfehler" eingeschlichen: + Es ist ausversehen die Basis-URL aus meinem Intranet mit eingebunden worden. +
+ +
+ Download-Link ist bereits veraltet. +
+ +
+ Das Patch mit dem Schönheitsfehler habe ich bereits korregiert. Du kannst + es dir ohne weiteres runterladen und einspielen. +
+ +
+ 18.02.2005 - 18:45 Uhr: Verdoppeln bis der Arzt vorbeikommt. (Scherz)

+ Nein, ganz im Ernst: Soeben habe ich die Verdoppler-Erweiterung fertig + gestellt. Tipp: Seien Sie aber vorsichtig, wenn du die + Verdopplung-Erweiterung in Verbindung mit Geld nutzt, das kann leicht als + Pyramiden-, oder Schnellballsystem ausarten (was nicht legal ist). +
+ +
+ 13.02.2005 - 14:15 Uhr: Demo-Seite war im Wartungsmodus

+ Auf meiner Demo-Installationsseite war der Wartungsmodus + eingeschaltet. Offensichtlich hat dies ein demo-Admin getan und vergessen, + diesen wieder abzuschalten. Ich habe nun den Menüpunkt deaktiviert. +
+ +
+ 10.02.2005 - 19:40 Uhr: Problem mit Theme-Support beseitigt.

+ Mit dem neusten 363'er Patch ist auch ein Problem beseitigt - bzw. eine + fehlende Anweisung eingefügt. Wenn der Admin das Standart-Theme + einstellen wollte, wurde es zwar auf seinem Rechner geändert, aber nicht + in der Datenbank gespeichert. Folglich hat jedes Mitglied das + default-Theme angezeigt bekommen. +
+ +
+ Du kannst dir das Patch wie gewohnt hier oder aus + deinem Admin-Bereich unter Verschiedenes - Updates prüfen + runterladen. +
+ +
+ 08.02.2005 - 21:45 Uhr: Problem mit fehlendem Gast- und Mitgliedsmenü beseitigt.

+ Mit dem neusten 361'er Patch ist auch ein Problem bei nicht-installierter + sql_patches-Erweiterung beseitigt. Das gesamte Gast- und Mitgliedsmenü + war ausgeblendet und eine Fehlermeldung "Unbekannte Aktion aufgerufen + oder Script hat Fehler gemacht" tauchte auf. Dieses alles ist nun mit dem + genannten Patch beseitigt. +
+ +
+ Hier kannst du + dir das Patch herunterladen. (Lizenz akzeptieren und dann ist unterhalb + des Download-Buttons eine Tabelle mit allen aktuellen Patches. Lese dir dazu + unbedingt die Dokumentation PATCHES.de durch.) +
+ +
+ 04.02.2005 - 19:15 Uhr: CVS Repository aufgeräumt.

+ In der CVS-Repository (auf Deutsch: Ablage, + Depot, Lager) waren viele überflüssige Dateien und + von mir ausversehen hochgeladene enthalten. Soeben habe ich diese bereinigt. +
+ +
+ 30.01.2005 - 15:30 Uhr: Neues Release v0.2.0-pre9 freigegeben.

+ Sage und schreibe 46 Patches mit einer Gesamtgrösse von + über 650 kBytes enthält diese neue Version mein + Mailtauschscriptes. Was hier alles neu ist und an Fehlern beseitigt ist, + möchte ich dir kurz vorstellen: +
    +
  • SECURITY: In diversen Basis-Scripten (welche sich im Hauptverzeichnis des Mailtausches befinden) waren Sicherheitslöcher und die an das Script übergebenen Variablen waren nicht ausreichend gegen Angriffe abgesichert.
  • +
  • NEU: Weitere Sperren in der Anmeldung werden aufgehoben, wenn du als Admin eingeloggt bist.
  • +
  • NEU: Es werden diverse Erweiterung standartmäßig aktiv gehalten. Dies ist zum Beispiel die sehr wichtige Erweiterung sql_patches.
  • +
  • NEU: META-Beschreibung (Description) wird nun aus dem Mailtausch-, Modul- und what-Titel dynamisch zusammengesetzt und nur im Gastbereich eingesetzt.
  • +
  • NEU: Die Kommaanzahl kann zwischen 1 und 5 eingestellt werden.
  • +
  • NEU: Teile der Installationsroutine ausgelagert in Templates.
  • +
  • NEU: Ich feiere meinen ersten Beta-Tester. :-) Du findest ihn in der Datei DOCS/de/AUTHORS.txt
  • +
  • NEU: Das Gast- und Mitgliedsmenü kann nun per Admin-Bereich deaktivert werden.
  • +
  • NEU: Das Template-System (sowohl HTML- als auch Mail-Templates) kann nun in admin-, guest- und member-Templates aufgeteilt werden. Die HTML-Templates lassen sich zudem in weitere Bereiche wie install, mailid und ext unterteilen.
  • +
  • NEU: IP-Nummer und Browserbezeichnung werden in vielen Mails an den Admin mit übertragen.
  • +
  • NEU: Beschreibung der Erweiterung wird nun auch im Aufgabentext eingeblendet (kein erneuter Download von meinem Server erfolgt dabei; die Beschreibung befindet sich in den Templates ext_???.tpl.
  • +
  • FIXED: Täglicher Reset (dieser wird um 00:00 Uhr jeden Tag ausgeführt)
  • +
  • FIXED: Menüsystem ist nur dann erreichbar, wenn auch die dazugehöhrige Erweiterung aktiviert wurde.
  • +
  • FIXED: Anrede in vielen Mails an die Mitglieder
  • +
  • FIXED: Admin kann endlich fehlerfrei Accounts aus seinem Bereich bestätigen
  • +
  • FIXED: Problem in inc/footer.php beseitigt.
  • +
  • FIXED: Unter Punkteguthaben wurde nicht die korrekte Punkteanzahl (ohne Abzug) ausgewählt, um Auszahlungsmethoden aufzulisten.
  • +
  • FIXED: Problem in der Registrierung von neuen Erweiterungen beseitigt.
  • +
  • FIXED: Anbindung des PHP interen Caches zur Beschleunigung von PHP-Scripten funktioniert nun.
  • +
  • FIXED: Anzeige der Sie sind hier Zeile repariert.
  • +
  • FIXED: Admin-Bereich: Ändern des Statuses der Gast- und Mitgliedsmenüpunkte ist jetzt eindeutiger.
  • +
  • FIXED: Ändern des Themes/Designs klappt wieder.
  • +
  • FIXED: Refferal-ID wurde nicht gesetzt, wenn der Admin eine Standart-RefID ausgewählt hatte.
  • +
  • FIXED: Variablen- und Template-Problem in der Aufgabenauflistung, nachdem man auf Bearbeiten geklickt hatte.
  • +
  • FIXED: In inc/stylesheet.php war ein Fehler, es wurde kein Design mehr geladen.
  • +
  • FIXED: Klicks auf Werbebanner werden wieder korrekt verarbeitet.
  • +
  • FIXED: Wird das Script ohne einem what-Wert (z.B. modules.php?module=index aufgerufen, wird nun keine Fehlermeldung mehr angezeigt.
  • +
  • FIXED: Alle neuen bzw. aktualisierten Erweiterungen und Patches werden nun schneller sortiert.
  • +
  • FIXED: Neues freies Design Solid-Business geht an den Start. Es ist - wie der Name sagt - solider gestaltet und ist seitdem ich es freigegeben habe nur auf Zuspruch gestossen.
  • +
  • FIXED: Löschen von Normal-Mails durch den Admin war gestört.
  • +
  • FIXED: Die Bestätungslinks von den Mails werden nun fehlerfrei automatisch gelöscht.
  • +
  • FIXED: Cookie-Fehler in Eingangsseite (index.php) behoben.
  • +
  • FIXED: Fehler im Modul login.php beseitigt und Template member_goto_top.tpl ist neu dazugekommen.
  • +
  • FIXED: Der Jackpot wird wieder mit Punkten "aufgeladen".
  • +
  • FIXED: Korriose Fehlermeldungen des Scriptes, wie Hallo Herr Mustermann,... beseitigt.
  • +
  • FIXED: Weitere HTML-Auslagerungen in Templates: Admin-Bereich (Erstanmeldung des Admins und Login-Formular, Referral-Links im Mitgliedsbereich und Bestätigung Ihrer Mail-Adresse abgeschlossen)
  • +
  • FIXED: PNG- oder JPEG-Bildchen für den Bestätigungscode zum Bestätigen von Mails wird automatisch ausgewählt.
  • +
  • FIXED: Irrtümlicherweise wurde das Semikolon gegen ein Dollar-Zeichen ausgetauscht.
  • +
  • FIXED: Verbesserung im Mitgliedsbereich / Unbestätigte Mails: Die Tabelle mxchange_pool wird nicht mehr benötigt, es lassen sich somit viele nicht abgelaufene Mails bestätigen.
  • +
+
+ +
+ 29.01.2005 - 14:35 Uhr: Patch 329, Klappe #2

+ Das Patch 329 habe ich heute erneut hochladen müssen, da ein + aktualisiertes Template fehlte. Wenn du bereits bis zum aktuellsten Patch + 356 alles runtergeladen und eingespielt hast, lade dir dieses Patch bitte + nicht runter. Es könnten sonst Dateien überspielt werden, + die bereits mit aktuelleren (höhere Nummer am Anfang des Dateinamens) + korregiert sind. +
+ +
+ 26.01.2005 - 21:35 Uhr: Wenn mal das Gastmenü nicht angezeigt wird...

+ Seit einigen Versionen ist die Erweiterung sql_patches ein + sehr wichtiger Bestandteil des Scriptes geworden. Ist diese nicht installiert, + wird seit neusten Patches das gesamte Gast- und Mitgliedsmenü nicht mehr + eingeblendet. Was du also tun musst, ist, aus deinem Admin-Bereich heraus + die Erweiterung sql_patches herunterzuladen. Diese und viele + andere interessante Erweiterungen findest du unter Verschiedenes + --> Erweiterungen --> Nach neuen Erweiterungen suchen (den Link + findest du unterhalb der Tabelle mit den Erweiterungen). +
+ +
+ Damit dies einfacher wird, werde ich ab der neuen Version v0.2.0-pre9 (kommt + Ende Januar raus) mit beifügen. Welche Erweiterungen noch ganz wichtig + ist, entnimmst du bitte der FAQ Nr. + 19. +
+ +
+ 25.01.2005 - 20:30 Uhr: Generierung des grafischen Bestätigungscodes mit Patch 352 verbessert.

+ Der grafische Bestätigungscode wird Ihren Mitgliedern beim + Bestätigen von Mails angezeigt. Das dies durchaus Probleme verursachen + kann, haben die letzten Support-Anfragen einiger meiner "Mitglieder + bewiesen. +
+ +
+ Wenn dir technische Details interessieren, lese dir bitte dazu die FAQ Nr. 22 + durch. Dort habe ich auch beschrieben, was du zu hast, wenn gar nichts mehr + hilft. +
+ + + +
+ 24.01.2005 - 21:50 Uhr: Gravierende Änderung seit Patch Nr. 340/345 .

+ Im Patch 340 ist eine neue Version des Gastmodules index.php + und im Patch 345 eine neue Version des Mitgliedermodules + login.php mit enhalten. Diese beiden Patchen haben eine + kleine - aber dennoch gravierende - Änderung am Aufbau des Tables + guest (Patch 340) und des Tables member_main + (Patch 345) bewirkt. Es wird kein abschliessendes </TABLE> vor dem + Template guest_footer.tpl bzw. + member_footer.tpl mehr eingefügt. +
+ +
+ Du musst in das jeweilige Template am Anfang das fehlende + </table> einfügen. Dann sollte die Ausgabe des Codes wieder + korrekt aussehen. +
+ +
+ 20.01.2005 - 18:45 Uhr: Sonstige Einstellungen (Admin-Bereich) verbessert.

+ Dort hat sich folgendes getan: +
    +
  • Selbe beworbene URL nicht mehr bewerbar (0 = URL kann sofort wieder gebucht werden)
  • +
  • Gütigkeitsdauer der Bestätigungslinks (0 = Bestätigungslinks laufen nie ab)
  • +
  • Sperrzeit des Mitgliedprofiles nach Änderung (0 = Mitglied kann sein Account immer und sofort ändern)
  • +
  • Profilaktualisierungsinterval (0 = Es wird keine Mail zum Profilaktualisierunng durch das Mitglied ausgesendet)
  • +
  • Erneute Aussendung der Mail (0 = Siehe oben)
  • +
+ Damit diese auch tatsächlich funktionieren, musst du dir das Patch + Patch wegen Scripteupdate entfernt. runterladen und folgende + Erweiterungen aktualisieren, in Klammern steht die mindestens nötige + Versionsnummer: +
    +
  • autopurge (0.2.4)
  • +
  • mydata (0.0.7)
  • +
  • other (0.1.0)
  • +
  • profile (0.0.5)
  • +
+
+ +
+ 12.01.2005 - 18:40 Uhr: Fehler im Referral-System beseitigt

+ In der Datei inc/session.php war ein Fehler. Dieser hat + bewirkt, dass immer die Standart-RefID als Referral-ID im Cookie gespeichert + wird. Mit dem neusten Patch (bitte spiele auch die vorherigen Patches ein, da + diese inkrement aufeinander aufbauen.) ist der Fehler beseitigt. +
+ + + +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2006.tpl b/templates/de/html/news-2006.tpl new file mode 100644 index 0000000000..4cd58094de --- /dev/null +++ b/templates/de/html/news-2006.tpl @@ -0,0 +1,193 @@ +
+ : : : News-Archiv 2006 : : : +
+ +
+ 26.06.2006 - 16:20 Uhr: Neue Software installiert

+ Seit ein paar Minuten steht nun ein Bug-Tracker und mein persönlicher + Weblog zur Verfügung. +
+ +
+ · Mantis Bug-Tracker für das Mailer-Project
+ · Mein persönlicher Weblog
+ · Secure Linux Project - Zum Einrichten eines Linux-Systems mit hoher Festplattenverschlüsselung
+ +
+ 23.03.2006 - 18:15 Uhr: Testing-Release PL511 freigegeben!

+ Das neue Testing-Archiv enth&aul;lt gleich alle aktuellen Patches (509 bis + 511). Du kannst aber auch die Patches selber runterladen - falls du bereits + mein Script installiert hast. Dann hast du auch alle Neuerungen. +
+ +
+ Beispielsweise ist ein stark verbessertes Passwort-System mit + "gesalzenen" Hashes, vermixten Hash-Reihenfolgen, Primzahlen und und + und dazu gekommen. Dieses neue Hashing-System soll so genannte + Dictionary-Attacks von deinem Mailtauscher/Paidmailer fernhalten, indem ein + "Salt" zum Passwort-Hash hinzugefügt wird. Will der Angreifer + dein Script mit der besagten Attack-Art angreifen, muss er jedes Mal seine + Passwortliste erneut durchberechnen. +
+ +
+ Lese dazu weitere Beiträge durch:
+ · Password Hashing, by James McGlinn (PHP Security Consortium)
+ · Begriffsdefinition auf Wikipedia (Wörterbuch-Angriff)
+ · User-Kommentare zum PHP-Befehl md5() (Scrambling)
+
+ +
+ 18.03.2006 - 16:05 Uhr: Endlich mal wieder News!

+ Nach fast zwei Monaten Pause gibt es hier wieder News. Grund für die + lange Pause war einfach, dass ich nicht dazu kam, hier etwas zu schreiben. + Mittlerweile sind aber Patch 504 bis 508 erschienen, die ich hier kurz + vorstelle: +
+ +
+ · Patch 504: Löschen der Cache-Datei config.cache klappt wieder.
+ · Patch 505: Fehler beim Laden von Erweiterungen behoben.
+ · Patch 506: Diverse kleinere Dinge korregiert.
+ · Patch 507: Unnötiges Löschen der Cache-Datei config.cache beseitigt (hat sonst zu vielen Datenbankabfragen geführt).
+ · Patch 508: Eine Einstellung wurde in die Erweiterung register verschoben (bitte aktualisieren!)
+
+ +
+ Zudem kommt bald das Patch 509 mit erneuten Bugfixes und ein gegen + Brute-Force-Attacken besser abgesichertes Passwort-System hinzu. Testen tue + ich dies bereits unter meinem Wernis-Paidmailer Wernis-Schleuder.de. Das tolle + daran ist: Für deine Mitglieder werden keine neuen Passwörter + generiert. Die Umstellung auf das neue System erfolgt vollkommen automatisch + beim nächsten Login. +
+ +
+ Wann das Patch rauskommt, weiss ich erst, wenn alle Tests auf der besagten + Adresse positiv verlaufen sind. +
+ +
+ 28.01.2006 - 21:55 Uhr: Patch Nr. 503 optimiert Script

+ Mit dem Patch 503 sind einige überflüssige Funktionsaufrufe - wie + z.B. str_replace() und auch COMPILE_CODE(), + die von mir geschrieben wurde - herausgekürzt, was somit zur + kürzeren Laufzeit des Scriptes beigetragen hat. Bitte lade dir auch + dieses Patch herunter. +
+ + + +
+ 27.01.2006 - 18:30 Uhr: Neues Testing-Release v0.2.0-pre10 PL502 freigegeben!

+ Das neue Testing-Release v0.2.0-pre10 mit Patch-Level 502 beinhaltet alle Patches und kommt mit einer + Fülle von Verbesserungen und Korrekturen am Script. Wenn Sie Interesse an den Details haben, + lesen Sie sich bitte die englischsprachigen Release Notes auf dem SourceForge.net-Servern durch. +
+ +
+ 26.01.2006 - 21:30 Uhr: Patch Nr. 501 erweitert das Script mit einem "kleinen aber"....

+ Folgende Fehler sind im Script beseitigt bzw. Scriptteile geändert: +
+ +
+ · Gesamtguthaben an Bonus-{?POINTS?} wird nun korrekt + berechnet (bzw. Verfahrensweise nur geändert!)
+ · Die Cache-Datei config.cache wird nach Erweiterungs- + Updates nun auch gelöscht und neu erstellt.
+ · Update-Aufgaben werden nach "Bearbeitung" nicht + mehr als Erledigt gesetzt. Dies hatte sonst den Anschein, die Update-Aufgaben müssten + erledigt werden, um die Erweiterungs-Updates einzuspielen, was aber automatisch geschieht.
+ · Fatalen Fehler in inc/mysql-manager.php beseitigt.
+ · Fehlende Variable in inc/functions.php war nicht + initialisiert, wird jetzt mit "Leer" initialisiert (nichts)
+ · Sämtliche mailto-Links umgeändert auf das bald + kommende Web-Kontaktforumular, mit ohne zusä&tzlicher EMail-Software private Kurzmitteilungen + direkt an die Mitglieder gesendet werden können. +
+ +
+ Allerdings hat sich auf Grund des geänderten mailto-Linkes ein Fehler in + "Mitglieder ohne Werber auflisten" eingeschlichen. Dieses + kannst du so ohne weiteres nicht beseitigen. Ich werde gleich morgen - nach + der Umschulung und anschliessenden wichtigen Einkäufen - die zur + Fehlerbeseitigung benötigten Erweiterungen hochladen und vorher + nochmals testen. +
+ +
+ 17.01.2006 - 20:50 Uhr: Patch Nr. 500 beiseitigt Problem mit dem Unterstrich.

+ URLs wie z.B. what=rettet_das_internet + waren durch einen abgesicherten Unterstrich nicht mehr erreichbar. Der fehlerverursachende Unterstrich + ist nun trotz Sicherheitsrisiko (wegen z.B. PHP_SELF; XSS-Attacken benutzen dies) wieder entfernt. + Aber dennoch bin ich zuversichtlich, solche Attacken dank ausgetauschtem Dollarzeichen und + (hoffentlich) abgesicherter $_SERVER['PHP_SELF'] mein Script nichts ausmachen + werden. +
+ +
+ Lade dir also bitte das Patch runter. Es wird auch ein weiterer Teil aus dem + Gastmenü in ein Template ausgelagert, der interessant sein kann, wenn du + das gesamte Menüsystem umbauen willst. Damit bin ich auch einigen Bitten + von Webmastern entgegen gekommen, die dies benötigten. +
+ +
+ 05.01.2006 - 22:40 Uhr: Update an Erweiterungen fertig.

+ Diese jetzt auf dem Server verfügbaren Erweiterungsupdate betreffen zum + Teil das De- bzw. Aktivieren eines verknüpften Modules (wenn dieses + gesperrt ist, kann kein Mitglied/Gast darauf zugreifen), zum anderen Fehler + bei nicht installierten anderen Erweiterungen. Was genau im Einzelnen kaputt + ist, erfährst du am Ende dieser Auflistung der Updates: +
+ +
+ · beg - 0.1.9
+ · bonus - 0.8.0
+ · doubler - 0.1.3
+ · mailid - 0.2.6
+ · mydata - 0.1.6
+ · newsletter - 0.0.9
+ · order - 0.4.5
+
+ +
+ Die Erweiterungen beg, bonus, + doubler, mailid und order + mussten wegen der besagten Modulverknüpfung aktualisiert werden. In der + Erweiterung tratt ein Fehler auf, wenn die Erweiterung + country nicht installiert ist. Ein simples + %s sorgte in einer SQL-Anweisung für ein leeres + Formular. +
+ +
+ Als letztes war ein "Fehler" im Newsletter-Versand, wenn die + Erweiterung html_mail nicht installiert war: Es wurde dennoch + die Auswahl angeboten, HTML-Newsletter zu versenden, was jetzt nicht mehr + stattfindet. Zudem klappt das Umwandeln von URLs in Text-Newslettern auch + wieder. +
+ + + +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2007.tpl b/templates/de/html/news-2007.tpl new file mode 100644 index 0000000000..ad4da67437 --- /dev/null +++ b/templates/de/html/news-2007.tpl @@ -0,0 +1,173 @@ +
+ : : : News-Archiv 2007 : : : +
+ +
+ 29.12.2007 - 00:40 Uhr: Mailer-Project 0.2.1-RC5 auf sfnet.net erschienen

+ In dem heutigen RC5 ist nun die PHP-Klasse PHPMailer hinzugekommen, welche + eine freie Bibliothek ist. Ich bediene mich an ihrer gut implementierten + SMTP-Authorisierungslösung, welche die bei einigen Hostern + (schwachsinnigerweise) deaktivierte mail()-Funktion von PHP umgeht. Happy + mail-exchanging. ;-) +
+ +
+ 22.12.2007 - 22:35 Uhr: Mailer-Project 0.2.1-RC4 auf sfnet.net erschienen

+ Noch rechtzeitig vor Weihnachten habe ich das RC4-Release auf sf.net + hochgeladen. Gefixt ist die Installationsroutine, diverse Template-Bugs und + andere kleine Dinge. Das vorherige 514' Patch brauchen Sie somit nicht + mehr downloaden. +
+ +
+ 16.12.2007 - 22:10 Uhr: Neuer Patch 514 beseitigt Fehler im Bestätigungsframe

+ In dem aktuellen Release-Candidate 3 hat sich ein kleiner Fehler + eingeschlichen. Dieses Mal war es der Zahlengenerator, der Zufallszahlen + für den Bestätigungsframe erstellt. Dort hat sich ein + Minuszeichen eingeschlichen, welches das Bestätigen von Mails + verhindert hatte. Bitte laden Sie sich unbedingt dieses Patch zum RC3 + herunter. +
+ +
+ 12.12.2007 - 21:05 Uhr: Mailer-Project 0.2.1-RC3 auf sfnet.net erschienen

+ RC3 ist soeben auf den SourceForget.net-Server zum Download verfügbar. + Ich habe einen weiteren Fehler in der "Template-Engine" gefixt, der + das Anzeigen von vielen "Notice-Zeilen" bewirkte und noch ein + paar kleinere Dinge mehr. +
+ +
+ 02.10.2007 - 22:50 Uhr: Mailer-Project 0.2.1-RC2 fixt Template-Engine-Fehler

+ Im Template-Parser "COMPILE_CODE" war ein Fehler enthalten, der das + korrekte Anzeigen von vielen Seiten im Admin-Bereich verhindert hat. RC2 fixt + diesen Fehler. +
+ +
+ 02.10.2007 - 22:50 Uhr: Mailer-Project 0.2.1-RC1 hochgeladen.

+ Soeben habe ich einen möglichen Release-Candidate hochgeladen. Das + Beta-Stadium ist somit beendet und ein "stabiles" + ist angepeilt. Seit bitte so nett und testet es erneut durch. Ich habe einiges + gefixt - und im Vergleich zum Alpha1 eine riesen Menge mehr - und bin auf euer + Feedback wieder angewiesen. +
+ +
+ Danke auch hier an alle, die mir geholfen haben. Das hat mein Projekt ein + ganzes gutes Stück besser und stabiler gemacht. +
+ +
+ Und ja: Hier wird kein "Sie" mehr geschrieben, sondern mehr Community. :-) +
+ +
+ 15.06.2007 - 20:05 Uhr: Mailer-Project 0.2.1-Alpha1 hochgeladen und Jagd auf den Fehlerteufel eröffnet

+ Nach mehr als einem Jahr (23.03.2006) habe ich ein neues Release von + Mailer-Project freigegeben: +
+ +
+ Mailer-Project 0.2.1-Alpha1 ist raus. + [Download hier] +
+ +
+ Gleichzeitig eröffne ich hiermit offziell eine Jagd auf den Fehlerteufel + - denn der hat vieles in den vorherigen Versionen kaputt bekommen. Also, jagen + wir ihn! +
+ +
+ Dies ist allerdings auch die letzte Version aus der 0.2'er Serie. Ich + habe vor, 0.2.1 stabil zu bekommen - zur Not ein paar Finals - und dann voll + konzentriert auf den Rewrite von Mailer-Project zu zu arbeiten. Denn + schliesslich soll irgentwann mal 0.3.0 herauskommen und dann auch irgentwann + mal die 0 vor dem ersten Punkt auch entfallen ... +
+ +
+ Also in anderen Worten gesagt: Mailer-Project Mail-Exchange wird stabiler, + deutlich benutzerfreundlicher - was es bereits jetzt schon gut ist - und + komplett in objekt-orientierter Programmierung aufgesetzt. Also sozusagen, + komplett umgebaut. +
+ +
+ Genug der vielen Worte, lade dir frei (Freiheit bitte, kein Freibier) meine + Software herunter und habe dran Teil! +
+ +
+ 13.02.2007 - 22:35 Uhr: Installation nun endlich einfacher.

+ Ach, was sieht man da? News auf mxchange.org. :-) Immer noch von der selbigen + Hand ... Person geschrieben, die im August 2003 den Versuch gestartet hat, + den Mailtausch-Markt - damals schon reichlich überschwemmt mit + Mailtauschern - komplett zu revolutionieren, indem das Skript - der Motor + jeder grossen Webseite - frei zugänglich gemacht wurde und unter die GMI + GPL gestellt wurde. +
+ +
+ Und was ist nun nach fast 5 Jahren daraus geworden? +
+ +
+ Ein Mailtausch-Skript mit einer flexiblen und offenen API - wenn auch wenig + dokumentiert, aber nicht ist... - das wegen langer Inaktivität in + Vergessenheit geraten ist und nun endlich wieder voran kommt. Schaue mal auf + mxchange-demo.de vorbei. + Dort ist nun kein Admin-Login mehr, sondern der neu rauskommenden + Installationsassistent in den ersten Lebensjahren zu begucken. Noch kannst du + dort nichts wirklich anfangen... Aber wage doch mal ein Blick dort vorbei und + "unter die + Motorhaube" ... +
+ +
+ Ja, keine Tabellen mehr, sondern alles feine div-Container und CSS. (IE-User + mögen mir meine Abneigung und das daraus resultierende kleine Chaos + verzeihen, erst wird der Firefox 2.0 (Iceweasel), dann Opera, dann Safari und + auch IE6/7 unterstützt). Das bringt natürlich viel Arbeit mit sich, + die ich hier für "Lau" anbiete. +
+ +
+ Solange wie ich hier mit meinem neuen Beta-Testern und gleichzeitig auch + Übersetzern an der 0.3.0 rumfeile, kannst dur dir gerne die im Forum + erh&auuml;ltliche 0.2.0-pre10 PL511 runterladen und austesten. Wenn du dabei + auf Fehlermeldungen stossen solltest, so werfe bitte nicht gleich das + Handtuch. Ich arbeite auch noch an der Verbesserung von 0.2.0 weiter. :) +
+ +
+ So, hier ist nun der Link zu meiner Anleitung. +
+ +
+ Vielleicht wird ja doch noch was aus meiner Vision... ;-) +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2008.tpl b/templates/de/html/news-2008.tpl new file mode 100644 index 0000000000..16a4de9e0a --- /dev/null +++ b/templates/de/html/news-2008.tpl @@ -0,0 +1,47 @@ +
+ : : : News-Archiv 2008 : : : +
+ +
+ 04.09.2008 - 02:00 Uhr: 0.2.1-RC5 entfernt

+ Heute habe ich die ohnehin zu stark verbuggte Version + 0.2.1-RC5 von den SourceForge.net Servern entfernt und auf + die im SVN verfügbare 0.2.1-FINAL umgestellt. Bitte + lädt euch nur noch diese nun immer herunter, die RC5 wird hiermit nicht mehr + unterstützt. +
+ +
+ 25.01.2008 - 11:10 Uhr: SVN eingerichtet

+ Gestern Abend habe ich das Subversion auf meinem + Server eingerichtet und Mailer-Project 0.2.1-FINAL (noch nicht auf sf.net + hochgeladen) importiert und vorbereitet (trunk, branches und tags vorbereitet). +
+ +
+ Das SVN könnt ihr derzeit nur ohne ssh euch aus dem trunk holen:
+ {?URL?}/repos/mailer/ +
+ +
+ Somit ist das Script auch aus dem Web herunterladbar. Per SVN+SSH kann ich + leider keinen Zugang hergeben, den wollte ich nur mir vertrauenswürdigen + Programmierern anvertrauen. Ich hoffe, dies stosst auf breites + Verständnis. +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2009.tpl b/templates/de/html/news-2009.tpl new file mode 100644 index 0000000000..6aef74a28f --- /dev/null +++ b/templates/de/html/news-2009.tpl @@ -0,0 +1,76 @@ +
+ : : : News-Archiv 2009 : : : +
+ +
+ 16.12.2009 - 03:05 Uhr: Update abgeschlossen

+ Das lange hinausgeschobene Update an mxchange.org (und + ship-simu.org) ist nun endlich zum Abschluss gekommen + und die aktuelle Revision 1663 ist nun aufgespielt. Seit dem letzten Update + hat die Performance deutlich zugenommen, es werden weniger SQL-Abfragen + abschickt und viele, viele XHTML- und CSS-Verbesserungen, sowie Bugfixes sind + mit eingeflossen. Rundum ist diese Revision nun deutlich stabiler als seine + Vorgänger. +
+ +
+ 04.12.2009 - 10:20 Uhr: mxchange.org wird umgebaut

+ Nach langer Stille auf dieser Seite nun endlich wieder eine News. Dieses Mal + betrifft es komplett mxchange.org. Ich möchte von dem geschäftlich + klingendem "Sie" und "uns" wegwechseln zu einer lockeren + Form. Hier gibt es nur euchdu (lockerer Umgang, aber mit + Regeln im Forum) und mxchange.org. +
+ +
+ Dann habe ich noch die Roadmap, Voraussetzungen + und Erscheinungstermine + auf den aktuellen Stand gebracht. +
+ +
+ Im weiteren Verlauf des Nachmittages werde ich weitere Seiten aktualisieren + und mit CSS-Klassen ausstatten. +
+ +
+ 14.03.2009 - 21:20 Uhr: 0.2.1-FINAL in Vorbereitung

+ Endlich eine News auf {?URL?} und gleich eine gute: Die finale Version + 0.2.1-FINAL ist auf den Weg! Den aktuellen Stand könnt ihr unter Roadmap im Bug-Tracker sehen. Dort + ist bis zum finalen Release ein Prozentbalken zu sehen. +
+ +
+ Danach wird es scripttechnisch bedingt nur noch Fixes zur bereits auslaufenden + 0.2.1-FINAL geben. Die 0.3.0 wird - unter einem anderen + Namen - dann die 0.2.1-FINAL komplett ersetzen. +
+ +
+ Hier ist die + Forumankündigung dazu. +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2010.tpl b/templates/de/html/news-2010.tpl new file mode 100644 index 0000000000..c6569d425b --- /dev/null +++ b/templates/de/html/news-2010.tpl @@ -0,0 +1,98 @@ +
+ : : : News-Archiv 2010 : : : +
+ +
+ 26.08.2010 - 11:15 Uhr: Wichtige Revisionen verfügbar +
+ +
+ Am gestrigen Mittag ist Revision 2097 auf dem Subversion-Server erschienen. + Das Update betrifft über 600 (!) Dateien und stellt die CSS-Struktur + (fast) komplett auf eine einfachere Struktur um. Dies wurde mir in der + letzten Zeit schon öfters gesagt (per Chat oder Mail) und ich habe nun + darauf reagiert. Mehr dazu im Forum-Announcement. +
+ +
+ 20.06.2010 - 19:15 Uhr: Server-Konfiguration gefixt +
+ +
+ In meiner Serverkonfiguration war ein Timeout (Zeitüberschreitung) zu + kurz eingestellt. Dies sorgte beim Auschecken für + Verbindungsabbrüche und sollte nun behoben sein. +
+ +
+ 08.06.2010 - 02:50 Uhr: Darstellung durchsichtiger/gesperrter Menüs +
+ +
+ Durchsichtige bzw. gesperrte Menüs im Gast- und Mitgliedsbereich werden + nun für den eingloggten Administrator farbig hervorgehoben. Die + Farbmarkierungen lassen sich bequem per CSS ändern und sind seit + Revision 1811 dabei. +
+ +
+ 01.05.2010 - 03:50 Uhr: Expression-Language schreitet voran +
+ +
+ Derzeit bastel ich an einem Gross-Update herum. Es soll die gesamte (vor + einigen Commits neu eingeführte) Expression-Language komplett umgebaut + werden. Ich hatte an einigen Stellen gemerkt, dass diese nicht so flexibel + ist, wie ich es mir erhoffe. Und zudem muss noch mehr gecacht werden, da + noch zu viel Zeit beim Kompilieren drauf geht - auch wenn sich hier einiges + seit vor dem ersten 0.2.1-Release getan hat. Zum Beispiel kostet das + Kompilieren (nur Konfiguration) der SQL-Anweisungen etwas an Over-Head. + Daher plane ich auch diese zu cachen. +
+ +
+ Auch soll endlich ein Lösch-Button im Adminbereich kommen, der die + gecachten Templates und SQL-Anweisungen mit einem Klick entfernbar macht. + Das Cachen dieser Template hat bereits schon grosse Auswirkungen auf die + Gesamtperformance. Was vor mindestens 4 Jahren noch mit ~1 Sekunde + Aufbauzeit dauerte, dauert jetzt nur noch einen Bruchteil davon - mein + eigener Server mal davon ausgenommen... ;-). Z.B. habe ich in der + Installation im Intranet (4x 2.5 GHz, 8 GB RAM) teilweise unter 0,1 Sekunden + Aufbauzeit, was defintiv eine gute Geschwindigkeit für solch + umfangreiche Scripte ist, wie es Mailer-Project ja nun ist. +
+ +
+ Ein weiteres Werbenetzwerk (AdStraight.de) wird auch mit dem nächsten + Commit dabei sein (oder übernächsten, wie es halt passt). Bei + dieser Erweiterung wird sich auch vieles tun. Z.B. waren Änderungen an + den Datenbanktabellen nötig, um noch flexibler zu sein (die Erfahrung + die ich beim Aufnehmen der Werbenetzwerke gemacht habe zeigte mir dies). +
+ +
+ Es wird aber auch bereits als veralteter markierter Code (Template-System) + aus dem Script ganz verschwinden, da dieser wohl (endlich!) nicht mehr + gebraucht wird. Bitte seit hier weiterhin so gut und meldet mir alle Bugs. +
+ +
+ Wer sich also wundert, dass hier seit ein paar Wochen nichts los ist, ich + arbeite hinter den Kulissen am Update. +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2011.tpl b/templates/de/html/news-2011.tpl new file mode 100644 index 0000000000..c37af86068 --- /dev/null +++ b/templates/de/html/news-2011.tpl @@ -0,0 +1,67 @@ +
+ : : : News-Archiv 2011 : : : +
+ +
+ 27.08.2011 - 05:50 Uhr: "Umstellung auf "du" abgeschlossen +
+ +
+ Die Umstellung von dem "Sie" und "uns" hier auf + mxchange.org ist heute Nacht nun vollbracht. Das Forum weist noch ein paar + Stellen auf, diese folgen aber auch bald. Die FAQ-Seite habe ich noch nicht + umgeschrieben, mir quallmt der Kopf vom vielen Umstellen. :-) +
+ +
+ Auch habe ich an der ext-network weiter dran + getüftelt. Es können die Interface-Zugangsdaten und die Daten + zum Werbeart-Handler (mehr dazu folgt im Wiki) abgespeichert und auch wieder + geändert werden. Dann sind weitere Werbenetzwerke dazugekommen. Das + Script zum Abfragen der APIs ("Interfaces") ist zwar schon + vorhanden, jedoch aber erstmal leer. Ich will mir dort mehr Gedanken zu + machen, wie ich das Abfragen der APIs implementieren kann, was dann auch im Wiki ausführlich dokumentiert wird. +
+ +
+ 09.08.2011 - 20:15 Uhr: "Registrieren" von Erweiterungen ... +
+ +
+ ... ist mit Revison 2593 nun auf "Installieren" umgetauft. Dies + war noch ein Relikt aus den Anfängen von {?MAIN_TITE?} und ist nun + begraben. "Installieren" sollte für die meisten Benutzer + eindeutig zu verstehen sein, dass hier eine Erweiterung installiert wird. + Scripteintern bleibt die alte Bezeichnung jedoch noch vorhanden, da sonst + die Funktionen, Variablenbezeichner und Sprachelemente mit der + Installationsroutine in Konflikt geraten können. +
+ +
+ 30.06.2011 - 17:30 Uhr: Erweiterung ext-coupon fertiggestellt in der Beta-Version +
+ +
+ Mit Revision 2363 (bitte HEAD auschecken, es gab mittlerweile weitere + Änderungen) ist die Erweiterung ext-coupon zum + Versenden von Gutscheinen in der Beta-Version verfügbar und zum + Beta-Testen freigegeben. Bitte checke aber weiterhin HEAD aus und nicht eine + sepzifische Revision, dies erleichtert das Supporten, da alle die gleichen + Scripte und Templates haben. +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2012.tpl b/templates/de/html/news-2012.tpl new file mode 100644 index 0000000000..aa56e8e200 --- /dev/null +++ b/templates/de/html/news-2012.tpl @@ -0,0 +1,137 @@ +
+ : : : News-Archiv 2012 : : : +
+ +
+ 30.12.2012 - 22:30 Uhr: Guten Rutsch! +
+ +
+ Ich wünsche allen Webmastern, Forenmitgliedern und -moderatoren einen + guten Rutsch in' neue Jahr 2013. Bleibt mir treu, auch wenn hier mal + weniger passiert. +
+ +
+ 28.12.2012 - 23:30 Uhr: Template-System verbessert +
+ +
+ Mit Revision 3074 habe ich das Caching von allen Templates stark + überarbeitet und dabei die Ladegewschwindigkeit um zirka 10 bis 20 + Prozent verbessert. Zudem werden nun alle Cache-Dateien per include() + nachgeladen und nicht mehr mit readFromFile(), was auch zur schnelleren + Ausführung des Scriptes beiträgt. +
+ +
+ 26.12.2012 - 19:20 Uhr: Frohe Weihnachten +
+ +
+ Ich wünsche euch allen und euren Familien frohe Weihnachten und einen + guten Rutsch in's neue Jahr 2013. 2012 ist bald um. Für das + {?MAIN_TITLE?} habe ich mir für nächstes Jahr viel vorgenommen. + Nicht nur soll die AJAX-Installation - heute kam ein weiterer Commit dazu + raus - fertigstellen, sondern auch mehr Erweiterungen und viele TODOs, die + ich gesammelt habe. +
+ +
+ Auch möchte ich die Bugliste + kleiner bekommen. +
+ +
+ 12.11.2012 - 20:30 Uhr: {%pipe,translateComma=3000%} Commits erreicht +
+ +
+ Heute Abend ist der {%pipe,translateComma=3000%}'ste erreicht. Dieser + diente allerdings nur einem Bugfixing und einem kleinen Rewrite, so dass + die besser gekapselte Funktion + addExtensionChangeTableColumnSql verwendet wird. Zudem + hatte sich ein kleiner Fehler eingeschlichen, wo der Dritte Parameter nicht + gegeben war. +
+ +
+ Aktuell ist das Installieren einiger Erweiterungen nicht möglich, den + genauen Fehler lokalisiere ich aktuell, also bitte hier etwas Geduld. :-) +
+ +
+ 21.10.2012 - 14:00 Uhr: Erweiterung ext-booking ist als Beta-Version fertig +
+ +
+ Mit den Commits 2881 und 2882 ist nun die Erweiterung + ext-booking fertig geworden. Mit ihr ist ein Kontoauszug + (ab Installationszeitpunkt) aller Kontobewegungen (inklusive aller + Guthabenkonten) möglich. Der Administrator kann sich diesen pro + Mitglied anzeigen lassen und die Auszugsdaten (nicht die Buchungen selbst) + löschen. +
+ +
+ Erstmal ist die Erweiterung so akzeptabel, was ich mir noch vorstellen + kann, ist eine automatische Bereinigung der Tabelle + {?_MYSQL_PREFIX?}_user_booking durch den täglichen + Reset. +
+ +
+ 18.10.2012 - 21:00 Uhr: Feature Sub-Id ist fertig +
+ +
+ Ein kleineres Feature, genaueres Tracking mit Sub-Ids, ist fertig geworden. + Dabei haben die Mitglieder die Möglichkeit, ihren Referral-Link + genauer verfolgen zu können. Z.B. kann das Mitglied pro Besuchertausch + und Mailtausch, wo es den Referral-Link bewirbt, eine Sub-Id vergeben und + kann dann sehen, von wo die Anmeldung eines geworbenen Mitgliedes her kommt. +
+ +
+ 07.10.2012 - 00:55 Uhr: Dereferrer ist nun besser abgesichert und Sub-Id Tracking kommt voran +
+ +
+ Der Dereferrer unter modules.php?module=loader ist nun besser + gegen Spam-Attacken gesichert. Bei dieser Art von Spamangriff nutzt der + Spammer das "Ansehen" (Reputation) der Webseite aus, auf dem + der Dereferrer läuft, um höher in den Suchergebnissen zu + rutschen. Zudem kann er damit URL-Sperren auf z.B. Blogs oder Foren leicht + umgehen. Diese Art von Angriff ist nur durch ein stark erhöhtes + Aufrufen des Dereferrers erkennbar (wenn gleichzeitig wenig URLs durch die + Mitglieder gebucht werden). +
+ +
+ Revision 2841 und schließlich 2842 enthalten dazu die + nötigen, wenigen Änderungen. Alle Templates müssen dazu + *nicht* angepasst werden, da der Aufruf des Dereferrers + in der Funktion generateDereferrerUrl() gekapselt ist. +
+ +
+ Zudem kommt das für Mitglieder bald mögliche Tracking durch Sub-Ids + voran. +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news-2013.tpl b/templates/de/html/news-2013.tpl new file mode 100644 index 0000000000..84fa21a41b --- /dev/null +++ b/templates/de/html/news-2013.tpl @@ -0,0 +1,47 @@ +
+ : : : News-Archiv 2013 : : : +
+ +
+ 06.01.2013 - 21:50 Uhr: Werbenetzwerk-Erweiterung kommt voran #2 +
+ +
+ Mit Revision 6271 - bitte nicht über die hohe Revisionsnummer + wundern, Änderungen vor 2008 sind hinzugekommen - ist nun ein + größeres Update dazugekommen. Erstmal können nun die APIs + der supporierten Werbenetzwerke angefragt werden. Auch musste ich ein paar + Referral-Links korregieren, da diese sich geändert hatten. Dann sind + weitere Werbeart-Handler dazu gekommen, der Parameter "size" + erlaubte bei einigen Werbenetzwerken mehr als ein Bannerformat (z.B. nicht + nur 468x60, sondern auch 88x31, 234x60 und 120x600). +
+ +
+ 03.01.2013 - 02:30 Uhr: Werbenetzwerk-Erweiterung kommt voran +
+ +
+ Aktuell ist die manuelle Abfrage der konfigurierten (und auch aktivierten) + Werbenetzwerke nun möglich. Dazu verwende ich ajax.php, + das ein allgemeines AJAX-"Backend" ist. Bereits jetzt gibt es + neue + Screenshots aus dem Adminbereich. +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news.tpl b/templates/de/html/news.tpl new file mode 100644 index 0000000000..9d6ba9b84e --- /dev/null +++ b/templates/de/html/news.tpl @@ -0,0 +1,38 @@ +
+ : : : Aktuelle News : : : +
+ +
+ 04.01.2013 - 22:00 Uhr: GIT soll es sein! +
+ +
+ Ab heute wird der Quellcode vom {?MAIN_TITLE?} mit GIT verwaltet, die alte SVN-Repository ist + bereits vollständig migriert. Auch sollten soweit alle Links + umgestellt sein, ausser die im Forum. Diese werde ich in Laufe dieser + Woche noch mit umstellen. +
+ +
+ Und sorry, dass es sehr lange keine News hier gab. Auf meinem + MicroBlog ging es mit den + Updates weiter. Also, das Projekt ist nicht tot. :-) +
+ +
+ Weitere, interessante News findest du in den News-Archiven:
+ 2013 · + 2012 · + 2011 · + 2010 · + 2009 · + 2008 · + 2007 · + 2006 · + 2005 · + 2004 · + 2003 +
diff --git a/templates/de/html/news_archive_warning.tpl b/templates/de/html/news_archive_warning.tpl new file mode 100644 index 0000000000..7232f8a0b2 --- /dev/null +++ b/templates/de/html/news_archive_warning.tpl @@ -0,0 +1,15 @@ +
+ Hinweis zum News-Archiv: +
+ +
+ Diese Nachrichten sind zu Archivierungszwecken aufbewart und spiegeln nicht + mehr den aktuellen Stand der über Subversion beziehbare Revision wieder. + Solltest du hier also Tipps zum Reparieren von diversen Dingen sehen, so sehe + bitte davon ab, dies zu tun. Diese Tipps sind mit der neusten Revision nicht + mehr gültig und können deinen Paidmailer komplett zerstören. + Auch gibt es auf die Hinweise aus diesen News-Archiven keinen Support mehr. + Lediglich die Worte "Kunde", "Sie(-tzen)" und + "uns" wurden von mir ausgetauscht und der HTML-Tag <br /> + gegen <div> ausgewechselt. +
diff --git a/templates/de/html/page_footer_links.tpl b/templates/de/html/page_footer_links.tpl new file mode 100644 index 0000000000..12aff733c6 --- /dev/null +++ b/templates/de/html/page_footer_links.tpl @@ -0,0 +1,23 @@ +
+ Nokia + GNU GPL v3 + YaCy + Project Honeypot + I love Free Software! + Stop ACTA! +
diff --git a/templates/de/html/partner.tpl b/templates/de/html/partner.tpl new file mode 100644 index 0000000000..f3019fff62 --- /dev/null +++ b/templates/de/html/partner.tpl @@ -0,0 +1,84 @@ +
+
+ Besuche doch mal meinen neuen Partner! Er wird sich mit Sicherheit + darüber freuen: +
+ +
+
+
+ WDS66 - Promotion-Portal europaweite Promotion-Services ab 0 €! +
+ +
+ Mit Wernis kannst du in Zukunft (fast) alles tun, was du auch mit Geld + kannst: Online-Games spielen, Einkaufen, Werbung buchen und und und! Und + das ganze vor einem europaweitem Publikum! +
+ + +
+
+ +
+
+
+ Slapped.de - Fun, Jokes und Stuff4Webmaster +
+ +
+ Auf slapped.de findest du coole Witze zu allen möglichen Themen - nicht nur Hygienetipps, + Schwangerschaft und Musterung. Die Seite wird häufig aktualisiert und es kommen + täglich viele neue Witze hinzu! +
+ + +
+
+ +
+
+
+ Mousepad-Art! +
+ +
+ Hochwertige Mousepads im multikulturellen Design. +
+ + +
+
+ +
+ Hier geht es weiter zu meinen anderen Projekten: +
+ +
+
+
+ Ship-Simu - Reedereisimulation +
+ +
+ Gründen Sie eine virtuelle Reederei an den bedeutestens Welthäfen. Oder treten Sie einer + Reederei als Angestellter bei und arbeiten Sie sich bis in die Chef-Etagge hoch. +
+ + +
+
+ +
diff --git a/templates/de/html/philosophy.tpl b/templates/de/html/philosophy.tpl new file mode 100644 index 0000000000..cb6a27c3f6 --- /dev/null +++ b/templates/de/html/philosophy.tpl @@ -0,0 +1,51 @@ +
+ Die Philosophie dieses Projektes +
+ +
+ Mailer-Project ist ein freies Script - wobei das Wort "frei" eher + im Sinne von Freiheit und nicht im Sinne von + Freibier zu verstehen ist - welches von meinem Server + herunterladbar ist. +
+ +
+ Aber wieso nun mache ich dies? Ich könnte hiermit auch viel, viel Geld + verdienen. Viele haben mir dies bereits vorgeschlagen und verstehen meinen + Gedankenansatz hier leider nicht. Ich möchte daher meine Vorstellungen + und Ziele mit diesem Projekt etwas näher erklären: +
+ +
+ Es gibt auf dieser Welt sehr viele kommerzielle Lizenzen, die die Rechte der + Menschen einschränken und ihnen die Weitergabe und Veränderung am + Produkt verbieten. Mit meinem Mailer-Project möchte ich den Menschen + die nötige Freiheit wieder zurückgeben, die ihnen mit den + kommerziellen Produkten genommen beziehungsweise eingeschränkt wird. +
+ +
+ Mir geht es dabei zweitrangig um's Geld (was aber nicht heissen soll, + dass ich alles "kostenlos" anbiete oder mache). +
+ +
+ Vielleicht gefällt euch ja mein Script so gut, dass der eine oder + andere mir eine Spende zukommen lassen möchte? Es ist von meiner Seite + her nur eine Bitte und keinen Zwang für denjenigen. Weiterhin kann hier + alles ohne einer "Zwangsspende" heruntergeladen werden oder + Support per Forum + wahrgenommen werden. +
+ +
+ Wer jetzt den rechtlichen Hintergrund wissen will, der lese sich bitte die + Lizenz GNU + General Public License 2 für Version 0.2.1-FINAL und für + Mailer-Project 0.3.0 die GNU GPL 3 durch. Ich bin kein Rechtsanwalt, der + da genauere Auskunft geben könnte. +
+ +
+ Vielen Dank im Voraus für's Verständnis. +
diff --git a/templates/de/html/photos.tpl b/templates/de/html/photos.tpl new file mode 100644 index 0000000000..e261048a53 --- /dev/null +++ b/templates/de/html/photos.tpl @@ -0,0 +1,18 @@ +
+ Screenshot-Gallerie mit Zusatzbildern +
+ +
+ In der Gallerie findest du zahlreiche Screenshots von meinem + Mailtauschscript. Aber auch ein paar Bilder von meiner Wohnung und mir + selbst sind dort zu finden. +
+ +
+ Genug geredet. Hier ist der Link: +
+ + diff --git a/templates/de/html/powered.tpl b/templates/de/html/powered.tpl new file mode 100644 index 0000000000..298a7a3e1b --- /dev/null +++ b/templates/de/html/powered.tpl @@ -0,0 +1,218 @@ +
+ {?MAIN_TITLE?} unterstützt: +
+ +
+ {?MAIN_TITLE?} unterstützt folgende Online-Aktionen und allgemeinnützige + Vereine: +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  + + + + + + + + + + +
+ Verein für Kinder mit besonderen Bedürfnissen e.V. +
+ Wir helfen behinderten, hilfsbedürftigen Kindern und deren Familien, die ebenfalls + delphinunterstützte Therapien anstreben. Dies geschieht durch Information, Beratung + und finanzielle Unterstüzung. Wir wollen so dazu beitragen, dass Lebensqualität + verbessert und stabilisiert wird. Da Eltern die Kosten für delphingestützte Therapien + im Ausland selbst aufbr /ingen müssen -z.B. in Key Largo (Florida) etwa 13.000 Euro- + benötigt unser Verein möglichst viele Mitglieder, Sponsoren und Spenden. Dies umso + mehr, als wir nun nach unserer Satzungs- änderung bundesweit helfen können. +
+
 
 
  + + + + + + + + + + +
+ Rettet Das Internet! +
+ Rettet das Internet: Neues Urheberrecht, Filesharing, Abmahnungen. P2P und MP3, Zensur und + Monopolisierung. Privatkopie, legal und illegal; Gebündelte Aktion gegen Monopolisierung + und Kommerzialisierung des Internets. Buttonnetzwerk gegen Kriminalisierung von Surfern und + Webmastern. +
+
  + + + + + + + + + + +
+ Against TCPA +
+ As TCPA would take all the freedom mankind fought for, now we have to fight again to keep this freedom. +
+
 
 
  + + + + + + + + + + +
+ Deutsches Rotes Kreuz +
+ Das Rote Kreuz ist Teil einer weltweiten Gemeinschaft von Menschen in der internationalen + Rotkreuz und Rothalbmondbewegung, die Opfern von Konflikten und Katastrophen sowie anderen + hilfsbedürftigen Menschen unterschiedslos Hilfe gewährt, allein nach dem Maß + ihrer Not.
+ Im Zeichen der Menschlichkeit setzt das Rote Kreuz sich für das Leben, die Gesundheit, das + Wohlergehen, den Schutz, das friedliche Zusammenleben und die Würde aller Menschen ein. +
+
 
 
  + + + + + + + + + + +
+ Weißer Ring e. V. +
+ Der Weiße Ring e. V. ist die einzige bundesweite Hilfsorganisation für + Kriminalitätsopfer und ihre Familien. Der gemeinnützige Verein tritt auch + öffentlich für die Interessen der Betroffenen ein und unterstützt den + Vorbeugungsgedanken. +
+
 
 
  + + + + + + + + + + +
+ Ihre Aktions- oder Vereinsseite hier? +
+ Du besitzt eine Webseite, die Aktionen wie die hier aufgeführten oder ähnliche + unterstützen oder selber durchführen? Oder du präsentierst einen + allgemeinnützigen Verein, der auf Spenden angewiesen ist, um seine Aktivitäten + durchzuführen? Dann sende mir doch eine Mail! Meine aktuellen Kontaktdaten findest + du dazu im Impressum.
+
+ Du erhälst von mir eine eigene kleine Seite innerhalb von mxchange.org, welche du selber frei + gestalten kannst - ich muss nur eventuell Anpassungen vornehmen, damit die Seite in mein System + eingefügt werden kann. Oder ich übernehme dies auch gerne für dich.
+
+ Zudem erhälst du einen Werbeaccount auf meinem AdServer. Ich schalte gerne Textlink-Kampagnen + und Kampagnen für 468x60- bzw. 88x31-Grafikbanner auf. Auch biete ich nun Werbeplätze + für 120x600-Skyscraper an, jedoch alles nicht hier auf mxchange.org, sondern auf anderen + privaten Projekten von mir. Andere Formate werden derzeit leider nicht unterstützt. Deine + Kampagnen sind unbegrenzt und laufen nicht ab.
+
+ Und alles dies erhälst du von mir kostenlos, deine eigenen Online-Gebühren + musst du schon selber zahlen. Nur einen Gegenlink (gerne auch mit - wie bei mir für + dich - einer kleinen Beschreibung meiner Seite, die du hier findest. Welchen Text du davon + verwendest, ist dir ganz überlassen. +
+
 
+
+ +
+
+ Hinweise:

+ · Solltest Sie mit einer Aufnahme + deiner Webseite auf meiner nicht mehr einverstanden sein, genügt nur ein + kurzer Anruf bei mir oder eine EMail und ich entferne wieder ihre Seite. +
+
+ +
+
+ · Für den Text und Grafiken ist + der jeweilige Betreiber er verlinkten Webseite selber verantwortlich. Auch + liegen alle Rechte am Text/Grafiken bei dem Anbieter - wenn nicht anders + angegeben. +
+
+ +
+
+ · Trotz sorgfätiger + Überprüfung der hier vorgestellten Vereine und Aktionsseiten kann es + dennoch mal vorkommen, dass ein "schwarzes Schäfchen" sich + dazwischen befindet. Ich distanziere mich hiermit ausdrücklich von diesen + und deren Inhalten und bitte dich, dies zu verzeihen und mir eine Nachricht + zukommen zu lassen. Schon jetzt danke ich für dein Entgegenkommen. +
+
diff --git a/templates/de/html/profile-update.tpl b/templates/de/html/profile-update.tpl new file mode 100644 index 0000000000..8b9eac8e6e --- /dev/null +++ b/templates/de/html/profile-update.tpl @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + +
 
+ + + + + + +
  +
Vielen Dank, dass Sie uns + auf dem Laufenden halten wollen!
+
+ Wenn Sie jetzt Ihr Profil aktualisieren wollen, klicken Sie einfach + unten auf den Button. War unsere Benachrichtigung ein Irrtum, so + können Sie mit einem Klick die Benachrichtigung abschalten. Sie + werden dann für längere Zeit von unserem System keine + Benachrichtigungen erhalten.
+
+ Bitte haben Sie nochmals für diese Massnahme Verständnis. + Auch wir möchten aktuelle Daten haben, damit wir unseren + {?MT_WORD?} reibungslos betreiben können und es kommt auch + unseren Werbekunden zugute.
 
+
 
+
+
+
+
+
 
diff --git a/templates/de/html/rallye_test.tpl b/templates/de/html/rallye_test.tpl new file mode 100644 index 0000000000..0771374e2f --- /dev/null +++ b/templates/de/html/rallye_test.tpl @@ -0,0 +1,3 @@ +Dieses Template heisst rallye_test.tpl.de, das Sie gerne weiter verwenden können:
+
+Speichern Sie eine Textdatei ab, die rallye_?????.tpl.de heissen muss. Anstelle der ? dann den Namen! \ No newline at end of file diff --git a/templates/de/html/references.tpl b/templates/de/html/references.tpl new file mode 100644 index 0000000000..a6c9872739 --- /dev/null +++ b/templates/de/html/references.tpl @@ -0,0 +1,41 @@ +
+ Meine Referenzen-Liste +
+ +
+ Hinweis zu dieser Liste +
+ +
+ Die hier aufgeführten Mailtauscher sind von fast Anfang an dabei gewesen + bzw. beide sind mein eigenen Wernis-Paidmailer. +
+ +
+ Es werden hier wieder neue Mailtauscher aufgenommen! Mehr dazu im Forum. +
+ +
+ + + + + + + + + +
+ Wernis4Mails-Mailtausch + + Zum Anbieter +
+ Wernis-Schleuder-Mailtausch + + Zum Anbieter +
+
diff --git a/templates/de/html/register_header.tpl b/templates/de/html/register_header.tpl new file mode 100644 index 0000000000..8cc84651c5 --- /dev/null +++ b/templates/de/html/register_header.tpl @@ -0,0 +1 @@ +Anmeldeformular zum {?mt_word?} {?MAIN_TITLE?}: diff --git a/templates/de/html/releases.tpl b/templates/de/html/releases.tpl new file mode 100644 index 0000000000..cf1c9d2951 --- /dev/null +++ b/templates/de/html/releases.tpl @@ -0,0 +1,31 @@ +
+ Voraussichtliche Erscheinungstermine für die geplanten Erweiterungen +
+ +
+ Folgendes grosses am Script ist noch geplant:
+ · Game-Engine: Zirka Ende 1. Quartal 2006
+ · Sponsorenbereich: Zirka Mitte 2010, eher unbekannt
+ · SignUp-Sektion: Hängt ab vom Sponsorenbereich; ca. 2-3 Monate später
+ · SEO-Aufbesserung (ext-rewrite wird ersetzt durch ext-seo): unbekannt
+ · Surfbar: unbekannt
+ · Support diverse Werbenetzwerke (ext-network): unbekannt
+ · Tresor: unbekannt
+ · Events: unbekannt
+ · Kontoauszug: unbekannt
+ · Übersetzung der deutschen Texte ins Englische: unbekannt, wird nach Fertigstellung von 0.2.1-FINAL angegangen.
+
+ +
+ Folgende hier angekündigte Punkte sind bereits fertiggestellt:
+
(Freigabe erfolgte am Datum in den Klammern)
+ · Aufbesserung der Erweiterungen beg und bonus: Zirka Ende 2005 (01.12.2005)
+
+ +
+ Wichtige Hinweise:
+ · Die angegebenen Termine sind nur Schätzungen und sind auch nicht als Prioritätenliste anzusehen.
+ · Zudem habe ich auch privat viele Termine, mache keine Umschulung zum FAE mehr und bin noch immer in einer Beziehung. :-)
+ · Alle Angaben ohne Gewä/ehr!
+ · Letzte Aktualisierung: 04.12.2009
+
diff --git a/templates/de/html/requirements.tpl b/templates/de/html/requirements.tpl new file mode 100644 index 0000000000..ce61e91900 --- /dev/null +++ b/templates/de/html/requirements.tpl @@ -0,0 +1,31 @@ +
+
+ Voraussetzungen (bzw. worauf ich getestet habe): +
+ +
+
+ Um alle meine Scripte einsetzen zu können, wird folgendes minimales Server-System benötigt:
+ · LAMP-Umgebung (Linux, Apache, MySQL, PHP4/5)
+ · PHP mindestens in der Version 4.1.0 oder höher (ätere Versionen sind auch wegen der Sicherheitslöcher nicht empfehlenswert und könnten auch Fehler verursachen.
+ · PHP sollte aber nicht Version 4.3.10 sein, da diese Version dem Anschein nach zu viele Bugs (= Programmierfehler, seitens PHP) enthält.
+ · Eine MySQL v3.x/v4.x/v5.x Datenbank (bereits angelegt; wird nicht vom Script angelegt; InnoDB ist optional möglich und sollte bei Vorhandensein auch genutzt werden)
+ · Ca. 10 bis 20 MB Webspace (reine Scripte + Grunddaten ohne Mitglieder oder Mailbuchungen gerechnet)
+ · 1 bis 2 GB freien Traffic (später noch mehr)
+ · Eigenen Webspace (auf sogn. Free-Hostern kam es in der Vergangenheit wegen Werbeeinlendungen seitens des Free-Hosters und Serverauslastung zu massiven Problemen).
+ · 512 MB RAM / CPU: 1,66 GHz Minimum, aber 2,5 GHz und 2-4 GB RAM tun auch nicht weh... *grins*
+ · Die Funktionen gzcompress() und gzuncompress() werden derzeit im Dereferer aka. Loader benötigt.
+
+ +
+ Sonstiges:
+ · Leichte Kenntnisse in HTML und CSS, um die Templates besser anpassen zu können.
+ · Optional: 50 bis 100 € für die Promotion des neuen Mailtauschdienstes, mindestens 2 Jahre Investion einkalkulieren.
+ · Oder: Kostenlos bei meinen Partnern und in den Linkverzeichnissen.
+
+
+ + +
diff --git a/templates/de/html/rettet_das_internet.tpl b/templates/de/html/rettet_das_internet.tpl new file mode 100644 index 0000000000..e59d4e2fbd --- /dev/null +++ b/templates/de/html/rettet_das_internet.tpl @@ -0,0 +1,42 @@ +
+ Aktion für ein freies Internet +
+ +
 
+

Kostenpflichtige Abmahnungen gegen private Homepages?
+
 
+
Seit Jahren bekommen unbedarfte kleine Webmaster und Homepagebesitzer aus heiterem Himmel Abmahnungen mit Gebühren von über 500 Euro bis zu (in +Einzelfällen) 10 000 Euro. Die Tendenz ist steigend!
+
 
+
Wie ist das überhaupt möglich?
+
 
+
    +
  • Jeder der etwas im Internet veröffentlicht, also jede Homepage (den Ausdruck "privat" gibt es im Internetrecht überhaupt nicht), unterliegt + automatisch dem Wettbewerbsrecht, und dem neuen Urheberrecht sowieso.
  • +
  • An jedem schöpferischen Produkt, Foto, Grafik, Midi, Text, Zitat besteht ein Urheberrecht. Es gibt im deutschen Recht kein "Public Domain"! Jeder der + also mehr als seinen persönlichen Lebenslauf und Privatfotos veröffentlicht, liefert sich automatisch der Willkür von Rechteinhabern und deren + (selbsternannten?) Vertretern aus.
  • +
  • Das deutsche Recht erlaubt es, Anwaltsgebühren dem Abgemahnten in Rechnung zu stellen. So kommen mit einem einzigen Verwarnbrief erhebliche Gebühren von 500 + Euro aufwärts zustande!
  • +
+
 
+
Was kann man tun?
+
 
+
Seit Jahrzehnten schon wird die deutsche Politik und Gesetzgebung im wesentlichen durch Interessenverbände und Lobbies bestimmt. Privatpersonen und kleine +Unternehmen haben keine Lobbies. So wundert es wenig, dass sich im Laufe der Jahre im Internet eine Gesetzgebung etablieren konnte, die Interessen und Schutzbedürfniss +von Privatpersonen mit Füßen tritt.
+
 
+
Es gilt jetzt
+
 
+
    +
  • Ein Problembewußtsein zu schaffen. Zu informieren und auf Mißstände hinzuweisen. Und zwar nicht in einem Internet-Magazin auf Seite 203, sondern in der + großen Öffentlichkeit.
  • +
  • Ein Gefühl der Solidarität unter den Webmastern herzustellen. Eine Lobby der kleinen nicht- und semiprofessionellen Homepages. Denn noch sind wir in der + Mehrheit.
  • +
  • WIR sind das Internet!
  • +
+
 
+
Besucht  Rettet-das-Internet.de und tragt Euch in unsere Liste ein!
+
 
+Copyright (c) 2003 http://www.rettet-das-internet.de diff --git a/templates/de/html/roadmap.tpl b/templates/de/html/roadmap.tpl new file mode 100644 index 0000000000..70c2b51fe2 --- /dev/null +++ b/templates/de/html/roadmap.tpl @@ -0,0 +1,55 @@ +
+ Roadmap +
+ +
+ Unter dem Menüpunkt + Erscheinungstermine + findest du ungefähre Angaben zu den Fertigstellungspunkten der + nächst herauskommenden Erweiterungen. +
+ +
+ Auf dieser Seite versuche ich zu schätzen, wann es endlich soweit ist + und die Version v0.3.0 herauskommen wird. Zuerst aber will + ich dir mal ein paar Dinge verraten, die neu sein werden: +
+ +
+ · Vollständige Neuprogrammierung im OOD unter PHP5 (kein PHP4 mehr).
+ · Komplett XHTML 1.0 Transitional validierbar.
+ · Verbessertes Template-System, endlich weniger Template-Schnipsel.
+ · Nochmals verbesserte SEO-Links für höheren PR.
+ · Komplett neues (bei {?MAIN_TITLE?} jedenfalls) Konfigurationssystem.
+ · Keine Tables, sondern alles div-Tags (weitgehenst barrierefrei).
+ · Administrationsbereich wird komplett anders funktionieren und aussehen.
+ · Mehr AJAX und -freie Version in einem Script.
+
+ +
+ Wie du unschwer erkennen kannst, wird dies - neben den besagten + Fertigstellungen der unzähligen + Erweiterungen - viel, viel Zeit kosten. Ich kann somit leider nicht sagen, + wann die Version v0.3.0 auf meinem Server zum Download bereit + stehen wird, jedoch aber dass es passieren wird. :-) +
+ +
+ Aber lasse dich hier nicht entmutigen: Die jetztige Version + v0.2.1-FINAL bietet schon ein durchaus gut funktionierendes + Mailtauschscript. +
+ +
+ Schaue dir gerne meine fertigen Erweiterungen zum + Hauptscript an. Vielleicht interessiert dich ja schon die eine oder + andere Erweiterung? +
+ +
+ Wichtige Hinweise:
+ · Ich habe privat viele Termine: Ich mache keine Umschulung zum FAE mehr, habe den SCWCD abgeschlossen und bin noch immer in einer Beziehung. ;-)
+ · Alle Angaben ohne Gewä/ehr und Pistole!
+ · Letzte Aktualisierung: 27.08.2011
+
diff --git a/templates/de/html/svn.tpl b/templates/de/html/svn.tpl new file mode 100644 index 0000000000..11f5d85d80 --- /dev/null +++ b/templates/de/html/svn.tpl @@ -0,0 +1 @@ + diff --git a/templates/de/html/why_reg.tpl b/templates/de/html/why_reg.tpl new file mode 100644 index 0000000000..a15333066c --- /dev/null +++ b/templates/de/html/why_reg.tpl @@ -0,0 +1,41 @@ +
+ Anmeldung deines Mailtausches - Warum? + +
+ "Wieso soll ich mich bei dieser Webseite anmelden?" +
+ +
+ Es gibt 3 gute Gründe, warum du deinen Mailtausch anmelden solltest: +
+ +
+
    +
  1. + Deine Anmeldung bei diesem System ist kostenlos und vollkommen unverbindlich - + Du musst nur mein Script {?MAIN_TITLE?} im Einsatz haben! Du musst für + diese Anmeldung die URL zu deinem Mailtausch (mit einer kurzen Beschreibung) + angeben. Nach Freischaltung deines Accounts erhälst du deine + Zugangsdaten per Mail zugeschickt. +
  2. +
  3. + Bist du freigeschaltet, wird dein Mailtausch bei mxchange.org in einer + TOP-Liste geführt (siehe Menüpunkt "TOP-Betreiber"). Je + mehr {?POINTS?} du hast, desto höher steigt deine Position in dieser + Liste. Daraus ergibt sich, dass auf deinen Link durchaus häufiger + geklickt wird, was wiederrum mehr Mitglieder für deinen Mailtausch + bedeutet. +
  4. +
  5. + Zudem erhälst du einen ebenfalls kostenlosen Zugang zu meinem AdServer, + wo du die volle Kontrolle über deinen Webseite erhälst. +
  6. +
+
+ +
+ Konnte ich dich überzeugen? Dann geht es weiter zur + kostenlosen Anmeldung... +
diff --git a/templates/de/html/wiki.tpl b/templates/de/html/wiki.tpl new file mode 100644 index 0000000000..9e9e274de4 --- /dev/null +++ b/templates/de/html/wiki.tpl @@ -0,0 +1,18 @@ +
+ Wiki - Wichtige Informationsquelle: +
+ +
+ Unter der folgenden URL gibt es seit einiger Zeit ein Wiki, wo ich + detailierte Informationen und Erklärungen zum gesamten Script + ansammle. Noch ist es nicht annähernd fertig. Gerne kannst du dich + daran beteiligen, du solltest dich dann aber mit dem Script sehr gut + auskennen. Alles am Wiki ausprobiert kann gerne auf der + Spielwiese. +
+ + diff --git a/xrd/304t9340to4aroland@social.mxchange.org.xml b/xrd/304t9340to4aroland@social.mxchange.org.xml new file mode 100644 index 0000000000..f050690fec --- /dev/null +++ b/xrd/304t9340to4aroland@social.mxchange.org.xml @@ -0,0 +1,14 @@ + + + acct:roland@social.mxchange.org + acct:roland@social.mxchange.org + https://social.mxchange.org/user/1 + + + + + + + + + diff --git a/xrd/index.php b/xrd/index.php new file mode 100644 index 0000000000..4958123697 --- /dev/null +++ b/xrd/index.php @@ -0,0 +1,41 @@ +. + */ + + +$s = "304t9340to4a"; + +/* this should be a secret */ + +$u = $_GET['uri']; + +$u = substr($u, 5); + +$f = $s . $u . ".xml"; + +if (file_exists($f)) { + $fh = fopen($f, 'r'); + $c = fread($fh, filesize($f)); + fclose($fh); + header('Content-type: text/xml'); + echo $c; +} + + +?> \ No newline at end of file diff --git a/yacy-modi.html b/yacy-modi.html new file mode 100644 index 0000000000..2da9b01f2a --- /dev/null +++ b/yacy-modi.html @@ -0,0 +1,218 @@ + + + +Modi-Auswahl für YaCy + + + + + + + + +
    +
  1. +
    +Aktuelle Modi von YaCy +
    +
    +Derzeit sind die folgenden Modi unter Netzwerk-Konfiguration (*) +verfügbar: +
      +
    1. Peer-To-Peer Modus - Der Standart-Modus, alle Nodes sind gleich berechtigt.
    2. +
    3. Robinson Modus - Kleinere Cluster lassen sich an z.B. FreeWorld anbinden.
    4. +
    +
    +Im Peer-To-Peer Modus kann DHT verteilt werden, in Robinson nicht. Damit muss +eine Node im P2P-Modus alles übernehmen, was anfällt, solange diese +Features eingeschaltet sind. Möchte man jedoch gute Crawls fahren, bedarf +dies wegen des Index viel RAM und Festplatte, somit nur High-End-Geräte und +keine "Otto-Normal-Geräte". Diese würden schlicht die Last +nicht standhalten können und unerreichbar werden. Auch ist ein +Nachrüsten erforderlich, da irgentwann die Festplatte bzw. der RAM voll +sind. +
    +
    +
  2. + +
  3. +
    +Neuer Modus: Master-Slave +
    +
    +Hinzukommen soll ein weiterer Netzwerk-Modus: Master-Slave. +
    +
  4. + +
  5. +
    +Was ist Master-Slave? +
    +
    +Ein Master-Slave-Konstrukt sieht meistens vereinfacht dargestellt wie folgt aus: +
      +
    • Es gibt einen oder zwei Master, wobei einer als "Backup-Master" +dienen kann. Es geht aber auch nur mit einem Master. Der Master verwaltet nur +die Slaves.
    • +
    • Es gibt mindestens einen Slave (besser mehr), die den Master-Nodes unstellt +sind. Die Slaves übernehmen die eigentliche Arbeit.
    • +
    +
    +
  6. + +
  7. +
    +Wie soll dies in YaCy implementiert werden? +
    +
    +Der Master soll in YaCy wie folgt implementiert werden: +
      +
    • Er übernimmt die Aufgabe als Front-End gegenüber z.B. Freeworld.
    • +
    • Er nimmt daher Remote-Crawls nur an und verteilt sie an die Slaves zum Crawlen.
    • +
    • Auch eigene (lokale) Crawls werden auf ihm gestartet und an die Slaves verteilt.
    • +
    • Der Master verwaltet die DHT, die von den Slaves zusammengestellt werden.
    • +
    • Auch als Proxy fungiert der Master.
    • +
    • Er verwaltet die Blacklisten, die Slaves erhalten damit nur Seiten, die + nicht gesperrt sind und brauchen sich darum nicht kümmern.
    • +
    + +Zur Verdeutlichung, hier ein typischer Beispielablauf: +
      +
    1. Auf dem Master wird ein lokaler Crawl gestartet z.B. durch einen Startpunkt, +Surrogate, Proxy-Aufruf und so weiter.
    2. +
    3. Dieser wird an die ihm bekannten Slaves verteilt, dabei achtet der Master +darauf, dass keine zwei Slaves die selbe URL crawlen.
    4. +
    5. Es wird dabei auch eine Crawl-Tiefe mit übergeben, damit der Master +sich darum nicht kümmern muss.
    6. +
    7. Die Slaves indexieren auch sofort die Seiten und erstellen den Index samt DHT.
    8. +
    9. Haben die Slaves den Crawl-Auftrag erledigt, oder es ist eine Queue +vollgelaufen, so wird dieser Index bei den Slaves gehostet und die DHT an den +Master gesandt.
    10. +
    11. Dem Master ist somit bekannt, welchen Slave er anfragen muss, damit dieser +das Ergebnis über den Master an z.B. Freeworld ausliefern kann.
    12. +
    13. Ein Durchreichen über den Master muss stattfinden, da die Slaves andere +IDs besitzen als der Master.
    14. +
    + +Im Admin-Interface soll unter Netzwerk-Konfiguration (*) +der Master-Slave-Modus eingebaut werden und könnte wie folgt aussehen: +
      +
    • Als Master: +
        +
      • Node-Namen aller Slaves, kommaseperaiert.
      • +
      • Node-Namen anderer Master-Nodes als "Backup-Master" bei starker Last.
      • +
      +
    • +
    • Als Slave: +
        +
      • Node-Name des Masters (= oeffentlicher Name des Master-Slave-Clusters).
      • +
      • Als Indexer, Crawler oder beides zusammen agieren; letzteres nur für +leistungsstarke Systeme geeignet.
      • +
      • Remote-Crawls vom Master vermittelt annehmen: Ja/Nein.
      • +
      +
    • +
    + +
    +Die globale, maximale PPM soll dabei auf die Slaves aufgeteilt werden. Also sehr +einfach gerechnet: Maximale PPM geteilt durch Anzahl konfigurierter Slaves. +
    +
    +
  8. + +
  9. +
    +Und was für Vorteile hat der Modus? +
    +
    +Der Master-Slave-Modus hat dabei diese Vorteile: +
      +
    1. Die einzelne Node - egal ob Master oder Slave - muss sich nicht um alles +kümmern, da dies an den Master bzw. an die Slaves verteilt ist.
    2. +
    3. Es können daher sehr starke Crawls (>1300 PPM sind theoretisch mit +einer DSL 6.000-Leitung möglich).
    4. +
    5. Auch selbst bei dieser sehr hohen Last bleibt der Master gut erreichbar, +da er selber nicht crawlt.
    6. +
    7. Die Master-Nodes können externe Nodes sich gegenseitig verweisen, +falls diese überlastet sind.
    8. +
    +
    +
  10. + +
  11. +
    +Fazit +
    +
    +
    +Das gesamt YaCy-Netz (Freeworld) wird stabiler und schnell, da die Master-Nodes schneller Anfragen annehemne können und die Slaves diese ausliefern können. Die User müssen keine High-End-Server sich kaufen, damit sie gute Crawl-Ergebnisse erhalten. Daher können selbst ältere Computer mit dem Master-Slave-Modus dennoch sich gross an Freeworld beteiligen. +
    +
    +Die User können mit einfachen Schritten einen guten YaCy-Cluster errichten und brauchen nicht ewig lang ausprobieren. +
    +
    +
  12. + +
  13. +
    +Weitere Ideen kurz gesammelt +
    +
    +Die Slaves könnten auch selber die Ergebnisse an Freeworld ausliefern. Bei einer lokalen Suche muss der Master dies an den User schicken. Wegen der Backup-Nodes müsste vermutlich eine Unterstützung in YaCy implementiert werden. Die bereits vorhandenen Timeouts sollen weiterhin als Fallback bestehen bleiben. +
    +
  14. + +
+ +
+(*): Damit dieser Link funktioniert, muss YaCy als Proxy konfiguriert sein! +
+ +
+Version: 1.2, letzte Änderung: 03.09.2009, Copyright © 2009, by Roland +Häder, Link zur Original-Seite. +
+ + +
+Valid XHTML 1.0 Transitional! +Valid CSS! + +
+ + + + -- 2.39.2