|
|
Het K-nummer mysterie ontmaskerd
Papierdistributie en censuur...
PAPIERDISTRIBUTIE EN CENSUUR
In 1996 dook een lijst met de zogenaamde K-nummers op. Al lange tijd bestaat verwarring over wat deze kleine aanduidingen op het drukwerk uit de bezettingstijd precies betekenden. Dat het iets met papierdistributie of censuur te maken had, was bekend, maar over de vraag hoe de vork exact in de steel stak, doen de meest uiteenlopende verhalen de ronde.
K-NUMMERS
Nu de lijst met een belangrijk aantal nummers boven water is gekomen, bestaat nog meer behoefte aan duidelijkheid over de achtergrond van de Kennummers. De gevonden lijst - die volgens mij tot de tweede helft van 1941 is bijgewerkt - bevat alleen een opsomming van de drukkerijen met vestigingsplaats en hun Kennummer en geeft dus geen duidelijkheid over de verplichtingen rondom de K-nummers. Niet lang geleden kwam ik in het bezit van enkele brochures van het Rijksbureau voor Verwerkende Industrieën, Sectie Grafische Industrie. Hierin wordt de mist rondom de Kennummers gedeeltelijk opgetrokken.
De K-nummers zijn ingevolge artikel 21 van de fabricagevoorschriften voor de papier- en papierverwerkende industrie op 15 juli 1941 ingevoerd. Het betreffende artikel luidde: 'Vervaardigers van drukwerken moeten op alle papier- en cartonwaren, die door hun worden bedrukt, òf hun firmanaam òf hun kennummer aanbrengen. Het Kennummer wordt hun op aanvraag door het Rijksbureau voor de Verwerkende Industrieën, Sectie Grafische Industrie, toegezonden en komt voor op een lijst, welke bij dit Rijksbureau berust.' Iedere drukkerij had één eigen nummer, waarmee al het drukwerk moest worden gewaarmerkt. Aan de hand van het K-nummer kon dus geen informatie verkregen worden over het jaar van uitgave, de uitgever, auteur of titel van het werk. Daarom is het niet te vergelijken met het huidige ISBN-kenteken.
SJOEMELEN
In de brochure, die de drukkerijen gelijktijdig met hun K-nummer kregen toegezonden, stond deze verplichtende bepaling vetgedrukt. Zelfs in de begeleidende brief werd er al expliciet naar verwezen. Toch bleek een aantal ondernemers Oostindisch blind of doof, want in de 'Wegwijzer voor het grafische bedrijf' - uitgegeven in november 1942 - klaagde de directeur van het Rijksbureau, H. Koechlin, dat de rayonambtenaren nog steeds overtredingen vaststelden. Dit moest afgelopen zijn, want 'aangezien hierop reeds herhaaldelijk is gewezen en overtredingen dus uit slordigheid worden begaan, is bepaald dat tegen begane overtredingen in het vervolg strafmaatregelen zullen worden genomen.' Koechlin ging toen nog uit van de goede trouw van de drukkerijen. Of er drukkerijen waren die om politieke redenen de bepalingen overtraden of zelfs om principiële redenen weigerden het kenteken te vermelden weet ik niet. Hoe dan ook, overtreders kregen een procesverbaal en moesten voor de Economischen Rechter verschijnen wegens overtreding van de distributiebepalingen. Of, en hoeveel processen-verbaal er opgemaakt zijn en wat er tijdens eventuele rechtszaken is geëist en als verdediging is aangevoerd, zou nader onderzocht moeten worden. Wellicht levert dat belangwekkende gegevens op.
In deze Wegwijzer werd de drukkers tevens voorgehouden dat het vermelden van alleen de firmanaam niet voldoende was. Als een drukkerij er voor koos om de naam te vermelden in plaats van het Kennummer, dan moest daarbij ook de vestigingsplaats worden vermeld. Dit gold ook voor eigenaren van cyclostyle-apparaten, kantoordrukmachines en dergelijke. Dit verklaart overigens waarom op of in boeken en brochures uit die periode soms geen K-nummer is te vinden. Op basis van de regels was dit dus toegestaan. Op briefpapier uit de bezettingstijd is meestal wèl een Kennummer te vinden; naam en plaats van de drukker zou op dat soort drukwerk verwarrend werken.
Op levering aan Duitse instanties waren weer afzonderlijke bepaling van toepassing. Eén daarvan was dat voor het drukwerk voor Duitse instanties en personen in geen geval meer berekend mocht worden dan voor gelijksoortige Nederlandse opdrachten. Dat hier de hand mee werd gelicht, blijkt uit een bewaard gebleven correspondentie van Oostfrontstrijder J. Hommes over zijn boekje 'Het sprookje van den Veldgrijzen Strijder'. Dit boekje werd in 1944 in opdracht van de 'Germanische Leitstelle' (SS) verzorgd door de drukkerij van Anton Mussert: Bosch en zn. in Utrecht (K 2350). De vormgeving en begeleiding werd verzorgd door Musserts uitgeverij NENASU. De bedrijven van de NSB-leider waren niet alleen te beroerd om, zonder toestemming voor papiergebruik, illegaal maar liefst 6000 ingenaaide exemplaren te drukken en te leveren aan deze Duitse instantie in Den Haag, maar draaiden haar vervolgens ook nog een financiële poot uit. De schrijver was namelijk van mening dat hij recht had op een extra honorarium en vroeg de rekening aan de SS met honderd gulden te verhogen. Aan het hoofd van de uitgeverij schreef hij: 'Kameraard Bartels, ik ken U als een kameraad, die hart heeft voor de uitgave van mijn boekje en hoop dan ook, dat U een gunstige doorvoering van mijn plan naar krachten zult ondersteunen.' Het 'Leidend Beginsel' van de NSB, waarin stond dat het persoonlijk belang ondergeschikt was aan het groeps- en nationale belang, was hier blijkbaar niet van toepassing. Want zonder te schromen honoreerde Bartels deze daad van 'nazi-solidariteit' en verhoogde Bartels de rekening met ƒ 100,-. De SS vond het allemaal prima en betaalde zonder morren de rekening; waarna NENASU de honderd gulden overmaakte op de rekening van Hommes Sr.. met de mededeling hier verder niet over te praten.
Van belang is ook de bepaling dat de feitelijke drukker verantwoordelijk was voor het product. Deze drukker moest zijn K-nummer vermelden. Het nummer zegt dus niets over de aannemer van het drukwerk. Dit kon bijvoorbeeld gedaan zijn door de Arbeiderspers (K 113), die het vervolgens wegens drukte of om andere redenen uitbesteedde aan drukkerij Bosch en zn.. Het drukwerk bevat dan niet K 113, maar K 2350. Het was daarom ook mogelijk dat een boek verschillende K-nummers bevatte als een drukkerij niet alles zelf kon drukken. Zo zullen er boeken zijn met drie K-nummers: voor de inhoud, op de kaft èn op de stofomslag. Heimelijk als onderaannemer een graantje meepikken van werk dat foute uitgeverijen en drukkerijen uitbesteedden kon dus niet langer.
VK-NUMMER
Naast drukwerk met een K-nummer bestaat er ook drukwerk met een mysterieus VK-nummer. Hierover verschaft de Wegwijzer ook duidelijkheid. Dit is namelijk drukwerk dat bestemd was voor export naar Duitsland. Het nummer bleef gelijk, maar de K van het Kennummer moest in dat geval vervangen worden door een VK.
Tot medio 1942 bestond geen directe relatie tussen het K-nummer en de censuur. Uiteraard kon aan de hand van het Kennummer wel achterhaald worden welke drukker 'Deutsch-feindliches' drukwerk had geproduceerd, maar van preventieve censuur was nog geen sprake. Dit veranderde medio 1942.
TOESTEMMING
Vanaf 22 juni van dat jaar moesten alle opdrachten voor druk- en stencilwerk waar meer dan 2½ kilo papier en/of karton voor nodig was ter goedkeuring worden voorgelegd aan één van de Districtscontrôlebureaus van het Rijksbureau. Deze verplichting betrof zelfs drukwerk voor eigen gebruik, maar rouwcirculaires en -rouwkaarten vielen er buiten. Deze moesten overigens wel van een K-nummer zijn voorzien en mochten niet groter zijn dan 105 x 148 millimeter. Daarnaast was een groot aantal producten verboden. Zo mochten niet langer boekenleggers, Ex Libris zegels, dagboeken en albums met plaatjes gedrukt worden. Dit gold ook voor plak- en sluitzegels en prospectussen voor loterijen, maar die regel werd zeer selectief toegepast. Nationaal-socialistische organisaties bleven de samenleving onder dit soort propaganda-materiaal bedelven.
Voor het uitgeven van (school)boeken, prentbriefkaarten, prent-, kleur- en muziekboeken (met en zonder tekst), reprodukties, etsen, dag- en weekbladen en andere periodieken golden voor de algemene drukkerijen en uitgeverijen nog strengere regels.
Schoolboeken, wetenschappelijke boeken en programma's voor onderwijsinstellingen moesten ter beoordeling worden voorgelegd aan het Departement van Opvoeding, Wetenschap en Kultuurbescherming (DOWK), dat in de eerste tijd onder leiding stond van de pro-Germaanse NSB-er T. Goedewaagen. Verder behoefden Geografische en maritieme kaarten eerst de goedkeuring van de 'Zensurstelle beim Wehrmachtsbefehlshaber in den Niederlanden' voordat ze aan het DOWK mochten worden voorgelegd.
De drukker die dacht slim te zijn door een dun boekje in kleine oplage te laten verschijnen - waarvoor niet meer dan 2½ kilo papier nodig was - kreeg het aan de stok met de Afdeeling Boekwezen van het Departement van Volksvoorlichting en Kunsten (DVK). Dat neemt niet weg, dat een aantal drukkers deze maas in de wet aangreep om papier te verduisteren ten behoeve van kleine oplages illegale bellettrie. Zo gaf uitgever-boekhandelaar A.A. Balkema een illegale reeks met maar liefst 19 titels uit onder de naam 'De Vijf Ponden-Pers'.) Alle regulier verschijnende culturele boeken, prentbriefkaarten en dergelijke moesten eerst door de 'Afdeeling Boekwezen', die onder leiding stond van J. van Ham, beoordeeld (lees: gecensureerd) worden. Pas als zij een positief rapport over het manuscript had uitgebracht en daarna toestemming tot uitgave was verleend door de 'Hauptabteilung für Volksauflärung und Propaganda, Referat Schriftum', dat onder het 'Generalkommissariat zur besonderen Verwendungen' van F. Schmidt viel, mocht met het uitgeven worden begonnen.) Ook bepaalde het DVK op welk papier de uitgave mocht verschijnen.
Tot wanneer de verplichting rondom het K-nummer formeel van kracht is gebleven, heb ik niet kunnen vinden. Feit is dat na de bevrijding de vermelding vaak achterwege bleef. Dit duidt erop dat deze regeling in ieder geval niet langer gecontroleerd werd.
Lijst met verboden drukwerk
De hieronder vermelde artikelen mochten vanaf eind 1940 af niet langer gedrukt worden. De lijst is medio 1942 opgesteld. Het is dus waarschijnlijk dat ze later uitgebreid is.
Albumplaatjes
Albums (voor welk doel dan ook)
Astrologische briefkaarten
Bedrukte vloeibladen
Bioscoopprogramma's
Bladwijzers
Bloknootjes en boekjes voor bridge en andere spelen
Bons voor sigarettenplaatjes
Bureau-onderleggers
Dagboeken
Dankzeggingen
Decalcomanieplaatjes, waaronder transfers, behalve voor technische doeleinden
Devotiedrukwerk behalve bidprentjes
Dienstregelingen voor reclame
Drukwerk voor vreemdelingenverkeer
Enveloppen voor:
Bezoekaanmeldingsformulieren, kaarten met handelsmededelingen, familiedrukwerk, jubileumdrukwerk, uitnodigingen, bewijzen van lidmaatschap, convocaties, firmamededelingen inzake vakantie, alsmede zakelijke berichten.
Etalagereclames van karton
Ex libris e.d.
Familiedrukwerk, uitgezonderd rouwdrukwerk kleiner dan 105 x 148 mm
Feestdrukwerk (o.a. huwelijkscouranten)
Felicitatiekaarten en - bladen
Filmprospectie
Fotokartonnen
Gastenboeken
Huisorganen met uitzondering van personeelsorganen
Jubileum-uitgaven
Kalenders met reclame-opdruk
Knippatronen indien deze gratis werden verstrekt, tenzij als bijlage voor tijdschriften
Landkaarten
(behalve voor school, Overheid en weermacht, die door de Zensurstelle beim Wehrmachtsbehelshaber zijn goedgekeurd)
Ledenlijsten
Legpuzzels
Mappen voor monsers en offerten
Mappen voor oorkonden, getuigschriften en genealogische papieren
Menukaarten
Monstercollecties en -kaarten, behalve kleurkaarten
Notitieboekjes en -blokken met reclame-opdruk
Opsteekkartonnen
Papier om spelen mede te beplakken
Passepartouts
Plaatjes ter versiering van deksels
Poëzieplaatjes
Postpapier met geleurden rand of bies (behalve zwart)
Prägezegeis
Prospectussen voor lotterijen
Prospectussen voor verzekeringsmaatschappijen
Prospectussen en reclameplaaten voor vacantie-oorden
Reclame-inlegvellen in kranten en tijdschriften
Reliefkartonnen voor reclame
Schrijfmappen
Schutkartonnen voor boeken
(hieronder vielen niet stofomslagen en omslagstroken en ook niet kartonnen die voor de verzending van een enkel exemplaar apart geïmproviseerd werden)
Sigarettenplaatjes
Silhouetten
Sluit- en plakzegels
Spelen, o.a. legpuzzles, behalve speelkaarten
Stadsplattegronden
Strooibiljetten voor filmvoorstellingen
Tafelnaamkaarten
Telefoonnotitieblokken
Telefoonregisters in elke vorm
(hieronder werden verstaan alle drukwerken, al dan niet van reclame voorzien, welke dienden om telefoonnummers op te noteren of waarop reeds een of meer telefoonnummers gedrukt waren, behalve de officiële gidsen)
Toerismekaarten
Verenigingstijdschriften en -mededelingen
Visite- en naamkaartjes
Vloeibladen (bedrukte)
Vloeibladen in chèqueboekjes
Voorordners
Vouwplaatjes
Wandspreuken
Wandversieringsplaten
Werkroosters voor reclamedoeleinden
© Harold Makaske 29 augustus 2005
/*
History:
v1.1
- add getTableList
v1.2
- use sql_table
- Added silent mode (configure via option) to support NP_MostViews
- Added Cleanup upon uninstall option
- Added "just number" minimalist mode
- Added supportsFeature
V1.2a
- Added min version support
V1.3
- Replaced doSkinVar with DoTemplateVar
V1.3a
- Added repeat views ignore function aka repeat F5s from those bored and lonely one
V1.3b
- Fixed counting off by 1 bug
V1.3c
- Added <%Views(skipCount)%> to allow skipping count when used in template (ie to not count on click in main page)
V1.4
- Fixed ignoe same IP count problem
V1.5
- Added views_log table and changed plugin performance to check for unique visits by IP address. [gRegor]
- Added option to set the length of time before re-counting hits from the same IP address (default: 2 hours) [gRegor]
V1.6
- Added plugin menu to display all view count, w/ counter reset function
- Delete view counter and log for deleted item
V1.7
- use sql_query
V1.8
- Admin page enhancement to preserve order and sort info
v1.9
- Added item title in admin menu
v1.9.1
- ignore draft in admin menu
*/
class NP_Views extends NucleusPlugin {
// Note: I never run this plugin on 2.0 and have no idea whether it
// wil work on <2.5. A user can simply chnage it to return
// '200' and see if it works (likely will). I will gladly
// change the min version to 2.0 and add the sql_table fix
// upon such report. 8)
function getMinNucleusVersion() {
return '250';
}
function getName() {
return 'Views';
}
function getAuthor() {
return 'Rodrigo Moraes | Edmond Hui (admun) | gRegor Morrill';
}
function getURL() {
return 'http://www.tipos.com.br';
}
function getVersion() {
return '1.9.1';
}
function getDescription() {
return 'This plugin counts how many times an entry has been displayed.';
}
function getEventList() {
return array('PostAddItem', 'QuickMenu', 'PostDeleteItem');
}
function supportsFeature($what) {
switch($what) {
case 'SqlTablePrefix':
return 1;
default:
return 0;
}
}
function getTableList() {
return array( sql_table('plugin_views'), sql_table('plugin_views_log') );
}
function install() {
sql_query('CREATE TABLE IF NOT EXISTS ' . sql_table('plugin_views') . ' (id int(11) NOT NULL default "0", views int(15) NOT NULL default "0")');
sql_query('CREATE TABLE IF NOT EXISTS ' . sql_table('plugin_views_log') . ' (id int(11) NOT NULL auto_increment, ip varchar(20) NOT NULL default "", itemid int(11) NOT NULL default "0", viewtime varchar(32) NOT NULL default "", PRIMARY KEY (id)
)');
$this->createOption('silent','Silent mode - No #Display shown in Item (still need to add the skinVar, for use with MostViewed)','yesno','no');
$this->createOption('deletetables','Delete this plugin\'s table and data when uninstalling?','yesno','yes');
$this->createOption('timespan', 'Hours to wait before re-counting visitors', 'text', '2');
}
function unInstall() {
if ($this->getOption('deletetables') == 'yes') {
sql_query('DROP TABLE ' . sql_table('plugin_views') );
sql_query('DROP TABLE ' . sql_table('plugin_views_log') );
}
}
function hasAdminArea() {
return 1;
}
/**
* Adds an entry to the 'Quick Menu' on the Nucleus administration pages.
* The entry will link to the commentcontrol admin page
*/
function event_QuickMenu(&$data) {
global $member;
if (!($member->isLoggedIn() && $member->isAdmin())) return;
array_push(
$data['options'],
array(
'title' => 'View Counts',
'url' => $this->getAdminURL(),
'tooltip' => 'See the view count of all items'
)
);
}
function doTemplateVar(&$item, $input) {
$itemid = $item->itemid;
$remote_ip = ServerVar('REMOTE_ADDR');
$timespan = $this->getOption('timespan') * 3600;
$now = time();
// get the current Views count
$query = "SELECT views FROM " . sql_table('plugin_views') . " WHERE id=" . $itemid;
$result = sql_query($query);
$row = mysql_fetch_object($result);
$views = intval($row->views);
// Only do count updates if "skipcount" is not set
if ($input != 'skipcount')
{
// This takes care of previous items
if (mysql_num_rows($result) == 0)
{
$query = "INSERT INTO " . sql_table('plugin_views') . " (id, views) VALUES('$itemid', '1')";
sql_query($query);
//$views = 0;
} // end if
// Check the views_log table to see if this IP has a viewtime for this item
$query = "SELECT viewtime FROM " . sql_table('plugin_views_log') . " WHERE ip='" . $remote_ip . "' AND itemid=" . $itemid;
$result = sql_query($query);
// No views from this IP in the past X hours, so update the Views count
if (mysql_num_rows($result) == 0)
{
$views++;
$this->_updateViewsCount($itemid, $views);
$this->_addViewsLog($itemid, $remote_ip, $now);
} // end if
else
{
$viewtime = mysql_result($result, 0, 'viewtime');
// It's been longer than X hours, so recount
if (($now - $timespan) > $viewtime)
{
$views++;
$this->_updateViewsCount($itemid, $views);
$this->_updateViewsLog($itemid, $remote_ip, $now);
}
} // end else
} // end if
// Clear logs that are more than X hours old
$time = $now - $timespan;
$query = "DELETE FROM " . sql_table('plugin_views_log') . " WHERE (viewtime < $time)";
sql_query($query);
if ($this->getOption('silent') == 'no') {
echo $views;
} // end if
}
function event_PostAddItem($data) {
$itemid = $data['itemid'];
$query = "INSERT INTO " . sql_table('plugin_views') . " (id, views) VALUES('$itemid', '0')";
sql_query($query);
}
function event_PostDeleteItem($data) {
$itemid = $data['itemid'];
$query = "DELETE FROM " . sql_table('plugin_views') . " WHERE id=". $itemid;
sql_query($query);
$query = "DELETE FROM " . sql_table('plugin_views_log') . " WHERE itemid=". $itemid;
sql_query($query);
}
function _updateViewsCount($itemid, $views) {
// update the Views table with the new count
$query = "UPDATE " . sql_table('plugin_views') . " SET views='$views' WHERE id=$itemid";
sql_query($query);
}
function _addViewsLog($itemid, $ip, $time) {
// add IP and itemid to views_log table so it won't be recounted for X hours
$query = "INSERT INTO " . sql_table('plugin_views_log') . " (ip, itemid, viewtime) VALUES ('$ip', '$itemid', '$time')";
sql_query($query);
}
function _updateViewsLog($itemid, $ip, $time) {
// update the views_log viewtime so it won't be recounted for X hours
$query = "UPDATE " . sql_table('plugin_views_log') . " SET viewtime='$time' WHERE ip='$ip'";
sql_query($query);
}
function doAction($actionType) {
global $CONF, $member;
if (!($member->isLoggedIn() && $member->isAdmin())) return 'Sorry. not allowed';
if ($actionType == 'resetview'){
$id = requestVar('id');
$query = "UPDATE " . sql_table('plugin_views') . " SET views=0 WHERE id=$id";
sql_query($query);
} else if ($actionType == 'resetallview') {
$query = "UPDATE " . sql_table('plugin_views') . " SET views=0";
sql_query($query);
}
$order = requestVar('order');
$sort = requestVar('sort');
header('Location: ' . $CONF['PluginURL'] . 'views/index.php?sort=' . $sort . '&order='.$order);
}
}
?>
-
Hoofdstuk: 9. Geschiedenis
|