#!/usr/bin/perl
# ----------------------------------------------------------------------------
#
# (c) Copyright 2006 TradeExtender
#
# This software is proprietary to and embodies the confidential technology
# of TradeExtender. Possession, use, duplication or dissemination of the
# software and media is authorized only pursuant to a valid written license
# from TradeExtender.
#
use strict;
use lib "/var/www/vhosts/kantelpunten.com/httpdocs/pl/lib";
use lib "lib";
BEGIN {
delete $INC{"Kantelpunten/Helper.pm"};
# delete $INC{"Kantelpunten/MyRobots.pm"};
}
use Kantelpunten::Helper;
use Kantelpunten::MyRobots;
use CGI qw(:standard);
use POSIX qw(mktime strftime);
#use Data::Dumper;
local our $param = undef;
show_main();
exit(0);
sub show_main()
{
my $q = CGI->new;
$param->{login} = defined($q->param('login')) ? 1 : undef;
$param->{start} = defined($q->param('start')) ? 1 : undef;
$param->{home} = defined($q->param('home')) ? 1 : undef;
$param->{prev} = defined($q->param('prev')) ? 1 : undef;
$param->{next} = defined($q->param('next')) ? 1 : undef;
$param->{refresh} = defined($q->param('refresh')) ? 1 : undef;
$param->{page} = $q->param('page');
$param->{idx} = $q->param('idx');
$param->{rb} = $q->param('rb');
my $remote_ip = init_helper();
$param->{rb} = get_robot() if (!defined($param->{rb}) || $param->{rb});
set_robot($param->{rb});
my $domain = get_domain();
my $sesid = get_session_cookie(); # try to get the session cookie
my $userid = get_userid_cookie(); # or the userid cookie
my $dont_set_lastpage;
my $spammer = stop_spammers($remote_ip, "test");
if (defined($spammer))
{
if ($spammer == 1)
{
print_redirect("/pl/AccessDenied.pl");
exit(0);
}
elsif ($spammer == 2)
{
print_error_doc ("Geachte gebruiker van kantelpunten.
Ik kan niet volgen wat u doet met onze site.
Volgens onze adminstratie voert u ongeveer 4 updates per minuut uit.
" .
"Hoezeer wij ook gesteld zijn op onze gebruikers, kunnen we het niet toestaan dat een gebruiker alle capaciteit verbuikt.
".
"Ik kan mij niet voorstellen dat iemand de hele dag zit de klikken, daarom verdenk ik u ervan dat u automatisch random update uitvoert
" .
"Ik laat deze melding een kwartier staan, daarna zal ik deze weer verwijderen
Als echter blijkt dat u nog steeds heel veel views creert (250-500 x zoveel als anderen)
" .
"Dan ben ik genoodzaakt uw IP addres permanent te blokeren
Stuur eventueel een mail naar webmaster\@$domain
" .
"
Ik heb u weer toegestaan en in 2 minuten tijd heeft u 15 updates gedaan.
Ik laat deze melding nu de hele dag staan
" .
"Pas vanavond haal ik hem weg. Voert u daarna nog steeds updates uit dan wordt uw IP addres permanent geblokeerd.", "Automatische updates ?");
write_access_data($remote_ip, 19999);
exit(0);
}
print_error_doc ("Geachte gebruiker van kantelpunten.
Volgens onze adminstratie voert u nodeloze updates uit
" .
"Elke minuut update u de nieuwspagina.
Het kan zijn dat onze adminstratie verkeerd is
" .
"Zo ja stuur een mail naar webmaster\@$domain
Als u morgen nog steeds nodeloze updates" .
"uitvoerd van de nieuws berichten pagina dan zal uw IP addres permanent geblokeerd worden.");
write_access_data($remote_ip, 19999);
exit(0);
}
# Is this a start request? if so and cookies are not set then reload
if (defined($param->{start}) && (!defined($sesid) || !defined($userid)))
{
# wait and reload, cookies should be set by register
msleep(0.9);
print_redirect("ShowMain.pl");
exit(0);
}
if (defined($param->{login}))
{
# wait and reload, cookies should be set by register
msleep(0.9);
print_redirect("ShowMain.pl?start=1");
exit(0);
}
my $pop_menu;
my $top_menu;
my $ref;
my $bcolor = "white";
my $top_unit;
my $bot_unit = " ";
my $show_right;
my $show_left;
my $show_alert;
get_user_rec(); # always try getting the user rec
my $start_page = get_start_page_cookie();
if (!defined($param->{page}) && defined($start_page) && ($start_page ne ""))
{
add_start_page_cookie(0);
$param->{page} = $start_page;
$param->{page} = undef if ($param->{page} == 0);
}
# controleer of dit en eerste user visit is
my $trialuntil = set_trialuntil();
my $registered = set_registered();
if (defined($trialuntil) && ($registered < 2))
{
# if (set_userid() == 3280)
# {
# set_trialuntil(3);
# write_user_rec();
# }
my $cur_time = time();
if (($trialuntil <= 100) || ($trialuntil == 0xffffffff))
{
# start een nieuwe trial periode ??
if ($trialuntil == 0)
{
# dit is de eerste keer dus zet trialuntil en toon welkom, 14 dagen
# set_trialuntil($cur_time + (14 * 24 * 3600));
set_trialuntil($cur_time);
write_user_rec();
# $param->{page} = 10067;
$param->{page} = 20032;
}
elsif (0 && (($trialuntil == 1) || ($trialuntil == 0xffffffff)))
{
# deze heeft de grafieken nog niet gehad toon graph, 7 dagen
# set_trialuntil($cur_time + (7 * 24 * 3600));
# write_user_rec();
# grafieken zijn nu altijd gratis dus toon de exit
set_trialuntil($cur_time + (14 * 24 * 3600));
write_user_rec();
$param->{page} = 10077;
}
elsif (0 && ($trialuntil == 2))
{
# deze heeft de grafieken nog niet gehad toon exit strategie, 14 dagen
set_trialuntil($cur_time + (14 * 24 * 3600));
write_user_rec();
$param->{page} = 10077;
}
}
# tijdelijk geen uitschakeling meer
elsif (0 && ($cur_time > $trialuntil))
{
if ($trialuntil < mktime(0, 0, 10, 7, 7-1, 107, 0, 0, -1))
{
# deze heeft de grafieken nog niet gehad toon exit strategie, 14 dagen
set_trialuntil($cur_time + (14 * 24 * 3600));
write_user_rec();
$param->{page} = 10077;
}
else
{
# blijkbaar de eerste keer na actunitl periode toon einde
# !!! vergeet niet in navmarket de laatste trial aan te passen!!!
set_trialuntil(3); # de next trial zou 3 zijn !!
write_user_rec();
$param->{page} = 10068;
}
}
}
# controleer of dit het test account is
if (!defined($param->{page}) && is_trial_user())
{
$param->{page} = 10069;
}
# controleer nieuwspagina of homepage
if (!defined($param->{page}) && !defined($param->{prev}) && !defined($param->{next}))
{
# eerst nieuwspagina ontroleer existance nieuwspagina
my $news = set_highpage();
if (defined($news)) # user exits ??
{
my ($dum1, $dum2, $lastnews) = get_ids();
if (!defined($param->{home}) && ($news != $lastnews))
{
if (($news == 0) && ($registered == 0))
{
# realy first time shows winstpakkers
$param->{page} = 9986;
}
elsif ($news == 0)
{
# # first time shows welkom page
# $param->{page} = 20032;
# set_highpage(32);
$param->{page} = 9986;
}
else
{
$param->{page} = 20000 + $lastnews;
set_highpage($lastnews);
}
write_user_rec();
}
else
{
$param->{page} = set_homepage();
# show statistics latest user if supper user and no homepage defined
if (($param->{page} == 0) && is_super_user())
{
print_redirect("https://www.kantelpunten.com/pl/ShowStats.pl?users=1");
exit(0);
}
# check if we should show the kantelpage
my $bday = set_lastbday();
my $lday = calc_beursdag();
if ($bday != $lday)
{
$param->{page} = ($registered > 3) ? 9987 : 9983; # adviezen of scanpunten
set_lastbday($lday);
write_user_rec();
}
$param->{page} = undef if ($param->{page} == 0);
}
}
}
$param->{page} = 10059 if (defined($param->{start}) && defined($registered) && ($registered eq '2')); # busy registering
my $last_page = get_last_page_cookie();
if (($last_page != 10027) && ($last_page != 10059) && ($last_page != 10067) && ($last_page != 10069))
{
$param->{page} = get_last_page_cookie() if (defined($param->{refresh}));
$param->{page} = get_last_page_cookie() if (!defined($param->{page}) && !defined($param->{home}));
}
# $param->{page} = 10024 if (!defined($param->{page}) && !defined($sesid)); # no cookies then start with cookie page
# $param->{page} = 10000 unless defined($param->{page});
$param->{page} = 9986 unless defined($param->{page});
if (!($param->{page} =~ /^-?[\d]+(\.\d*)?$/))
{
print_error_doc ("Ongeldige formaat voor page=$param->{page}");
exit(0);
}
my $no_stat;
if (($param->{page} >= 20000) && ($param->{page} < 30000))
{
my $topic = $param->{page} - 20000;
$ref = "http://forum.kantelpunten.com/viewtopic.php?t=$topic";
write_access_data($remote_ip, $param->{page});
print_redirect($ref);
exit(0);
}
elsif (($param->{page} >= 9940) && ($param->{page} <= 9999))
{
$ref = "/pl/ShowOverview.pl?overview=eigen" if ($param->{page} == 9999);
$ref = "/pl/ShowOverview.pl?overview=aex" if ($param->{page} == 9998);
$ref = "/pl/ShowOverview.pl?overview=amx" if ($param->{page} == 9997);
$ref = "/pl/ShowOverview.pl?overview=overig" if ($param->{page} == 9996);
$ref = "/pl/ShowOverview.pl?overview=bel20" if ($param->{page} == 9995);
$ref = "/pl/ShowOverview.pl?overview=kantel" if ($param->{page} == 9994);
$ref = "/pl/ShowOverview.pl?overview=bel" if ($param->{page} == 9993);
$ref = "/pl/ShowScanOverview.pl?mine=1&recent=1" if ($param->{page} == 9990);
$ref = "/pl/ShowScanOverview.pl?all=1&recent=1" if ($param->{page} == 9989);
$ref = "/pl/ShowKantelOverview.pl?mine=1" if ($param->{page} == 9988);
$ref = "/pl/ShowKantelOverview.pl?all=1" if ($param->{page} == 9987);
$ref = "/pl/ShowKantelOverview.pl?type=success" if ($param->{page} == 9986);
$ref = "/pl/ShowKantelOverview.pl?type=correct" if ($param->{page} == 9985);
$ref = "/pl/ShowScanOverview.pl?mine=1&open=1" if ($param->{page} == 9984);
$ref = "/pl/ShowScanOverview.pl?all=1&open=1" if ($param->{page} == 9983);
$ref = "/pl/dagelijks-aandelen-advies.pl" if ($param->{page} == 9982);
$ref = "/pl/ShowNews.pl" if ($param->{page} == 9980);
$ref = "/pl/ShowNews.pl?mine=1" if ($param->{page} == 9979);
$ref = "/pl/gratis-beurssite-adverteren.pl" if ($param->{page} == 9970);
my $jaar = strftime("%Y", localtime(time()));
$ref = "/pl/toon-beleggen-resultaat.pl" if ($param->{page} == 9960);
$ref = "/pl/toon-beleggen-resultaat.pl?jaar=$jaar" if ($param->{page} == 9961);
$ref = "/pl/toon-beleggen-resultaat.pl?overzicht=maand&jaar=$jaar" if ($param->{page} == 9962);
$ref = "/pl/toon-beleggen-resultaat.pl?overzicht=week&jaar=$jaar" if ($param->{page} == 9963);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar" if ($param->{page} == 9950);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar&type=2&num_porto=1" if ($param->{page} == 9951);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar&type=2&num_porto=2" if ($param->{page} == 9952);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar&type=2&num_porto=3" if ($param->{page} == 9953);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar&type=2&num_porto=4" if ($param->{page} == 9954);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar&type=2&num_porto=5" if ($param->{page} == 9955);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?land=own&jaar=$jaar&type=2&num_porto=6" if ($param->{page} == 9956);
$ref = "/pl/aandeel-beleggen-portefeuille.pl" if ($param->{page} == 9957);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?eigen=1" if ($param->{page} == 9958);
$ref = "/pl/aandeel-beleggen-portefeuille.pl?eigen=1" if ($param->{page} == 9959);
# redirects from mail
$ref = "/pl/ShowScanOverview.pl?all=1&open=1&redirect=1" if ($param->{page} == 9940);
$ref = "/pl/ShowScanOverview.pl?mine=1&open=1&redirect=1" if ($param->{page} == 9941);
# don't write access date will be done by showoverview
if (!defined($ref))
{
print_error_doc ("Ongeldige pagina ($param->{page}) opegevraagd");
exit(0);
}
print_redirect($ref);
# no checkstat statistics as this is included by showstock
exit(0);
}
elsif (($param->{page} >= 30000) && ($param->{page} < 50000))
{
# this is an linked page from a specific stock
my $stk_id = $param->{page} % 1000;
my $link = int($param->{page} / 1000);
if ($stk_id == 0)
{
print_error_doc ("Ongeldige pagina ($param->{page}) opegevraagd");
exit(0);
}
my $stock = get_stock($stk_id, "old");
if (!defined($stock))
{
print_error_doc($stk_id . "
Dit aandeel wordt niet ondersteund");
exit(0);
}
$pop_menu = make_pop_menu(1, $param->{page}, "link", $stock);
$top_menu = make_top_menu(1, $param->{page}, "link", $stock);
if ($link == 30)
{
# het bedrijf
if ($stock->{belegger} ne "")
{
# $ref = "http://www.belegger.nl/koersen.php?page=binfo&naam=" . $stock->{belegger};
$ref = "http://www.belegger.nl/aandeel-" . $stock->{belegger} . ".profiel";
}
elsif ($stock->{bduivel} ne "")
{
$ref = "http://www.beursduivel.be/koersen.php?page=binfo&naam=" . $stock->{bduivel};
}
else
{
# $ref = "http://www.dft.nl/servlet/companyProfile?ISIN=" . $stock->{dft_isin};
$ref = "http://www.telegraaf.nl/dft/bedrijven/" . $stock->{dft_comp} . "/?tabid=bedrijven&tab=5";
}
$top_unit = "kader";
}
elsif ($link == 31)
{
# netto winst
if ($stock->{euronext_symb} ne "")
{
my $land = substr($stock->{euronext_symb}, 0, 2);
my $mep = (($land eq "NL") || ($land eq "GB")) ? 2 : 3;
# $ref = "http://www.euronext.com/trader/companyprofile/companyprofile-4408-NL-" . $stock->{euronext_symb} . ".html?selectedMep=$mep";
$ref = "http://www.euronext.com/trader/companyprofile/companyprofilev2-18661-NL-" . $stock->{euronext_symb} . ".html?selectedMep=$mep";
}
elsif ($stock->{dft_comp} ne "")
{
$ref = "http://www.telegraaf.nl/dft/bedrijven/" . $stock->{dft_comp} . "/?tabid=bedrijven&tab=4";
}
elsif ($stock->{belegger} ne "")
{
$ref = "http://www.belegger.nl/koersen.php?page=bfundamental&naam=" . $stock->{belegger};
}
elsif ($stock->{bduivel} ne "")
{
$ref = "http://www.beursduivel.be/koersen.php?page=bfundamental&naam=" . $stock->{bduivel};
}
elsif ($stock->{eb_ic} ne "")
{
$ref = "http://www.eurobench.com/koersen.asp?page=showcompanydetail&ic=" . $stock->{eb_ic} .
"&ctype=&ci=&oc=" . $stock->{eb_oc} . "&bc=" . $stock->{eb_bc} . "&innr=5";
}
else
{
print_error_doc ("Nettowinst wordt niet ondersteund voor dit aandeel ($stock->{stock})");
exit(0);
}
$top_unit = "kader";
}
elsif ($link == 32)
{
$dont_set_lastpage = 1;
# website
$ref = $stock->{website};
$top_unit = "kader";
}
elsif ($link == 33)
{
# Koers & daggrafiek
if ($stock->{dft_comp} ne "")
{
$ref = "http://www.telegraaf.nl/dft/bedrijven/" . $stock->{dft_comp} . "/?tabid=bedrijven&tab=7&streaming=true";
}
elsif ($stock->{belegger} ne "")
{
$ref = "http://www.belegger.nl/koersen.php?page=bkoersen&%20&naam=" . $stock->{belegger};
}
elsif ($stock->{bduivel} ne "")
{
$ref = "http://www.beursduivel.be/koersen.php?page=bkoersen&%20&naam=" . $stock->{bduivel};
}
$top_unit = "kader";
}
elsif ($link == 34)
{
if (!is_admin_user())
{
# intrday Combine
print_redirect("/pl/beleggen-daghandel.pl?aandeel=$stock->{stock}&combine=1", "301");
exit(0);
}
# daghandel
if ($stock->{tick_sym} eq "")
{
print_error_doc ("Daghandel wordt niet ondersteund voor dit aandeel ($stock->{stock})");
exit(0);
}
$ref = "http://217.11.198.41/html/detail/ticklist/main.html?sSym=" . $stock->{tick_sym};
}
elsif ($link == 35)
{
print_error_doc ("Koers RT wordt niet meer ondersteund.");
exit(0);
# koers rt
if ($stock->{sns_fc} eq "")
{
print_error_doc ("Koers RT wordt niet ondersteund voor dit aandeel ($stock->{stock})");
exit(0);
}
if (is_outside_stock_hours())
{
print_redirect("ShowMain.pl?page=10030");
exit(0);
}
if (length($stock->{sns_fc}) > 3)
{
$ref = $stock->{sns_fc};
}
else
{
$ref = "https://www.snssecurities.nl/scripts/company/index.aspx?section=Research&fc=" . $stock->{sns_fc} .
"&alpha=" . $stock->{sns_alpha} . "&display=publications&IW=" . $stock->{sns_iw};
}
my $number = write_rt_data(1);
if (($number >= 25) && ($number <= 26))
{
$show_alert = "U heeft reeds 25 x RT koersen opgevraagd.\\nHet updaten wordt beperkt tot maximaal 50 x per dag,\\nomdat anders onze site overbelast wordt.";
}
if ($number >= 25)
{
$show_left = "Klik hier om de koersen rechtstreeks aan te vragen. disclaimer";
$show_right = "RT aanvragen toegestaan: " . (50 - $number);
}
if ($number >= 50)
{
my @loc_time = localtime(time());
my $refresh = set_refreshday();
if (defined($refresh) && ($refresh != (@loc_time[7] + 1)))
{
set_refreshday(@loc_time[7] + 1);
write_user_rec();
}
print_redirect("/pl/ShowMain.pl?page=10031");
exit(0);
}
}
elsif ($link == 36)
{
# nieuws + fundamentele info
# $ref = "http://www.dft.nl/servlet/FindArticleServlet?nameToMatch=&KEYWORDS=" . $stock->{news_keyw} .
# "&Submit3=Vind";
if ($stock->{belegger} ne "")
{
$ref = "http://www.belegger.nl/koersen.php?page=bnieuws&naam=" . $stock->{belegger};
}
elsif ($stock->{bduivel} ne "")
{
$ref = "http://www.beursduivel.be/koersen.php?page=bnieuws&naam=" . $stock->{bduivel};
}
else
{
$ref = "http://www.telegraaf.nl/dft/bedrijven/" . $stock->{dft_comp} . "/?tabid=bedrijven&tab=1";
}
$top_unit = "kader";
}
elsif ($link == 37)
{
# technisch
if ($stock->{bours_symb} ne "")
{
$ref = "http://www.boursorama.com/cours.phtml?symbole=" . $stock->{bours_symb} . "&vue=sem";
}
elsif ($stock->{iex_id})
{
$ref = "http://www.iex.nl/Stocks/chart.asp?iID=" . $stock->{iex_id};
}
else
{
print_error_doc ("Technisch wordt niet ondersteund voor dit aandeel ($stock->{stock})");
exit(0);
}
$top_unit = "kader";
}
elsif ($link == 38)
{
# sentiment
if ($stock->{dft_forum} eq "")
{
print_error_doc ("Sentiment wordt niet ondersteund voor dit aandeel ($stock)");
exit(0);
}
# $ref = "http://www.dft.nl/servlet/Forum?id=Company&count=25&company=" . $stock->{dft_comp} .
# "&ISIN=" . $stock->{dft_isin};
# $ref = "/info/probleem_dft.htm";
$ref = "http://forum.dft.nl/forums/show/" . $stock->{dft_forum} . ".page";
$top_unit = "kader";
}
elsif ($link == 39)
{
# adviezen
if ($stock->{analist} ne "")
{
$ref = "http://www.analist.nl/index.php?page=aandeel&id=" . $stock->{analist};
}
elsif ($stock->{belegger} ne "")
{
$ref = "http://www.belegger.nl/koersen.php?page=badviezen&naam=" . $stock->{belegger};
}
elsif ($stock->{bduivel} ne "")
{
$ref = "http://www.beursduivel.be/koersen.php?page=badviezen&naam=" . $stock->{bduivel};
}
elsif ($stock->{guru_id} ne "")
{
$ref = "http://www.guruwatch.nl/fonds.asp?Id=" . $stock->{guru_id};
}
elsif ($stock->{mktadv_id} ne "")
{
$ref = "http://www.marketadvices.com/index.php?page=stock&id=" . $stock->{mktadv_id} . "&lan=NL";
}
else
{
$ref = "http://iex.nl/Stocks/stocks_research.asp?ID=" . $stock->{iex_id};
}
$top_unit = "kader";
}
elsif ($link == 40)
{
$dont_set_lastpage = 1;
# kalender
if ($stock->{kalender} eq "")
{
print_error_doc ("Kalender wordt niet ondersteund voor dit aandeel ($stock->{stock})");
exit(0);
}
$ref = $stock->{kalender};
$top_unit = "kader";
}
elsif ($link == 43)
{
# intraday combined All
print_redirect("/pl/ShowIntraQuotes.pl?stock=$stock->{stock}");
exit(0);
}
elsif ($link == 44)
{
# news stock
print_redirect("/pl/ShowNews.pl?stock=$stock->{stock}");
exit(0);
}
elsif ($link == 45)
{
# intraday All
print_redirect("/pl/beleggen-daghandel.pl?aandeel=$stock->{stock}&all=1", "301");
exit(0);
}
elsif ($link == 46)
{
# intrday Combine
print_redirect("/pl/beleggen-daghandel.pl?aandeel=$stock->{stock}&combine=1", "301");
exit(0);
}
elsif ($link == 47)
{
# kantelpunten historie
print_redirect("/pl/ShowKantelpunten.pl?stock=$stock->{stock}&2year=1");
exit(0);
}
elsif ($link == 48)
{
# kantelpunten
print_redirect("/pl/ShowKantelpunten.pl?stock=$stock->{stock}");
exit(0);
}
elsif ($link == 49)
{
# quotes
print_redirect("/pl/ShowQuotes.pl?stock=$stock->{stock}");
exit(0);
}
else
{
# oops bestaat niet
print_error_doc ("Ongeldige pagina ($param->{page}) opegevraagd");
exit(0);
}
write_access_data($remote_ip, $param->{page});
}
elsif (($param->{page} >= 100000) && ($param->{page} < 200000))
{
my $item = sprintf("%05d", $param->{page} - 100000);
print_redirect("/pl/ShowNews.pl?item=$item&sup=0");
exit(0);
}
elsif (($param->{page} >= 200000) && ($param->{page} < 300000))
{
my $item = sprintf("%05d", $param->{page} - 200000);
print_redirect("/pl/ShowNews.pl?samenvatting=1&item=$item&sup=0");
exit(0);
}
elsif (($param->{page} >= 10000) && ($param->{page} < 20000))
{
my $page = get_page($param->{page});
if (!defined($page))
{
# we could try rereading the file once
read_pages(undef, 'force');
$page = get_page($param->{page});
if (!defined($page))
{
print_error_doc ("Ongeldige pagina ($param->{page}) opegevraagd");
exit(0);
}
}
$ref = $page->{ref};
write_access_data($remote_ip, $param->{page});
if (($page->{target} eq "_blank") || ($page->{target} eq "_top") || ($page->{extra} == 1))
{
print_redirect($ref);
exit(0);
}
$no_stat = 1 if ($page->{nostat});
if ($page->{extra} == 2)
{
$bcolor = "nav";
$top_unit = "kader";
}
$pop_menu = make_pop_menu(-1);
$top_menu = make_top_menu(-1);
}
else
{
# not a preferred page try to find if it is an stock id
my $stock = get_stock($param->{page}, "old");
if (!defined($stock))
{
print_error_doc ("Ongeldige pagina ($param->{page}) opegevraagd");
exit(0);
}
$ref = "/pl/ShowStock.pl?stock=$param->{page}";
# don't write access date will be done by showstock
# no checkstat statistics as this is included by showstock
print_redirect($ref);
exit(0);
}
add_last_page_cookie($param->{page}) if (!defined($dont_set_lastpage));
my $script;
if (defined($show_alert))
{
$script = "\n";
}
else
{
$script = make_home_script($param->{page});
}
my $desc = "Kantelpunten de beursscanner. Een beurssysteem, gebaseerd op de beroepshandel. Advies voor het zèlf beleggen in aandelen op de beurs. Ik moet deze week winst hebben. Niet volgende week. Duidelijke en eenvoudig te volgen adviezen.";
print_header("+1s");
print_pre_doc();
print_head("Kantelpunten", "hoofd", undef, undef, $script, undef, undef, undef, $desc, undef, defined($top_menu) ? "top_script" : undef);
print_body($bcolor, $show_alert, , undef, undef, undef, undef, undef, $top_unit, $bot_unit, $pop_menu, $top_menu);
print "\n";
print_checkstat() if (!defined($no_stat));
print_body("end_kader");
print_post_doc();
}