[Koha-cvs] koha/installer 639-2norm.csv externalmodules.pl...
paul poulain
paul at koha-fr.org
Fri Mar 9 16:37:25 CET 2007
CVSROOT: /sources/koha
Module name: koha
Changes by: paul poulain <tipaul> 07/03/09 15:37:25
Added files:
installer : 639-2norm.csv externalmodules.pl InstallAuth.pm
install.pl kohastructure.sql
Log message:
rel_3_0 moved to HEAD (introducing new files)
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/installer/639-2norm.csv?cvsroot=koha&rev=1.2
http://cvs.savannah.gnu.org/viewcvs/koha/installer/externalmodules.pl?cvsroot=koha&rev=1.2
http://cvs.savannah.gnu.org/viewcvs/koha/installer/InstallAuth.pm?cvsroot=koha&rev=1.2
http://cvs.savannah.gnu.org/viewcvs/koha/installer/install.pl?cvsroot=koha&rev=1.2
http://cvs.savannah.gnu.org/viewcvs/koha/installer/kohastructure.sql?cvsroot=koha&rev=1.2
Patches:
Index: 639-2norm.csv
===================================================================
RCS file: 639-2norm.csv
diff -N 639-2norm.csv
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 639-2norm.csv 9 Mar 2007 15:37:25 -0000 1.2
@@ -0,0 +1,526 @@
+"ISO 639-2","French Name of Language","All French Names","All English Names","ISO 639-1"
+"abk","abkhaze","abkhaze","Abkhazian","ab"
+"ace","aceh","aceh","Achinese",
+"ach","acoli","acoli","Acoli",
+"ada","adangme","adangme","Adangme",
+"ady","adyghé","adyghé","Adyghe; Adygei",
+"aar","afar","afar","Afar","aa"
+"afh","afrihili","afrihili","Afrihili",
+"afr","afrikaans","afrikaans","Afrikaans","af"
+"afa","afro-asiatiques, autres langues","afro-asiatiques, autres langues","Afro-Asiatic (Other)",
+"ain","aïnou","aïnou","Ainu",
+"aka","akan","akan","Akan","ak"
+"akk","akkadien","akkadien","Akkadian",
+"alb/sqi","albanais","albanais","Albanian","sq"
+"gsw","alémanique","alémanique","Swiss German; Alemannic",
+"ale","aléoute","aléoute","Aleut",
+"alg","algonquines, langues","algonquines, langues","Algonquian languages",
+"ger/deu","allemand","allemand","German","de"
+"nds","allemand, bas","bas allemand; bas saxon; allemand, bas; saxon, bas","Low German; Low Saxon; German, Low; Saxon, Low",
+"gmh","allemand, moyen haut (ca. 1050-1500)","allemand, moyen haut (ca. 1050-1500)","German, Middle High (ca.1050-1500)",
+"goh","allemand, vieux haut (ca. 750-1050)","allemand, vieux haut (ca. 750-1050)","German, Old High (ca.750-1050)",
+"alt","altai du Sud","altai du Sud","Southern Altai",
+"tut","altaïques, autres langues","altaïques, autres langues","Altaic (Other)",
+"amh","amharique","amharique","Amharic","am"
+"anp","angika","angika","Angika",
+"eng","anglais","anglais","English","en"
+"enm","anglais moyen (1100-1500)","anglais moyen (1100-1500)","English, Middle (1100-1500)",
+"ang","anglo-saxon (ca.450-1100)","anglo-saxon (ca.450-1100)","English, Old (ca.450-1100)",
+"apa","apache","apache","Apache languages",
+"ara","arabe","arabe","Arabic","ar"
+"arg","aragonais","aragonais","Aragonese","an"
+"arc","araméen","araméen","Aramaic",
+"arp","arapaho","arapaho","Arapaho",
+"arw","arawak","arawak","Arawak",
+"arm/hye","arménien","arménien","Armenian","hy"
+"rup","aroumain","aroumain; macédo-roumain","Aromanian; Arumanian; Macedo-Romanian",
+"art","artificielles, autres langues","artificielles, autres langues","Artificial (Other)",
+"asm","assamais","assamais","Assamese","as"
+"ast","asturien","asturien; bable","Asturian; Bable",
+"ath","athapascanes, langues","athapascanes, langues","Athapascan languages",
+"aus","australiennes, langues","australiennes, langues","Australian languages",
+"ava","avar","avar","Avaric","av"
+"ave","avestique","avestique","Avestan","ae"
+"awa","awadhi","awadhi","Awadhi",
+"aym","aymara","aymara","Aymara","ay"
+"aze","azéri","azéri","Azerbaijani","az"
+"ast","bable","asturien; bable","Asturian; Bable",
+"bak","bachkir","bachkir","Bashkir","ba"
+"ban","balinais","balinais","Balinese",
+"bal","baloutchi","baloutchi","Baluchi",
+"bat","baltiques, autres langues","baltiques, autres langues","Baltic (Other)",
+"bam","bambara","bambara","Bambara","bm"
+"bai","bamilékés, langues","bamilékés, langues","Bamileke languages",
+"bad","banda, langues","banda, langues","Banda languages",
+"bnt","bantoues, autres langues","bantoues, autres langues","Bantu (Other)",
+"nds","bas allemand","bas allemand; bas saxon; allemand, bas; saxon, bas","Low German; Low Saxon; German, Low; Saxon, Low",
+"nds","bas saxon","bas allemand; bas saxon; allemand, bas; saxon, bas","Low German; Low Saxon; German, Low; Saxon, Low",
+"dsb","bas-sorabe","bas-sorabe","Lower Sorbian",
+"bas","basa","basa","Basa",
+"baq/eus","basque","basque","Basque","eu"
+"btk","batak, langues","batak, langues","Batak languages",
+"bej","bedja","bedja","Beja",
+"bem","bemba","bemba","Bemba",
+"ben","bengali","bengali","Bengali","bn"
+"ber","berbères, autres langues","berbères, autres langues","Berber (Other)",
+"bho","bhojpuri","bhojpuri","Bhojpuri",
+"bis","bichlamar","bichlamar","Bislama","bi"
+"bel","biélorusse","biélorusse","Belarusian","be"
+"bih","bihari","bihari","Bihari","bh"
+"bik","bikol","bikol","Bikol",
+"byn","bilen","blin; bilen","Blin; Bilin",
+"bin","bini","bini; edo","Bini; Edo",
+"bur/mya","birman","birman","Burmese","my"
+"bla","blackfoot","blackfoot","Siksika",
+"byn","blin","blin; bilen","Blin; Bilin",
+"nob","bokmål, norvégien","norvégien bokmål","Bokmål, Norwegian; Norwegian Bokmål","nb"
+"bos","bosniaque","bosniaque","Bosnian","bs"
+"bua","bouriate","bouriate","Buriat",
+"bra","braj","braj","Braj",
+"bre","breton","breton","Breton","br"
+"bug","bugi","bugi","Buginese",
+"bul","bulgare","bulgare","Bulgarian","bg"
+"cad","caddo","caddo","Caddo",
+"krl","carélien","carélien","Karelian",
+"car","carib","karib; galibi; carib","Galibi Carib",
+"spa","castillan","espagnol; castillan","Spanish; Castilian","es"
+"cat","catalan","catalan; valencien","Catalan; Valencian","ca"
+"cau","caucasiennes, autres langues","caucasiennes, autres langues","Caucasian (Other)",
+"ceb","cebuano","cebuano","Cebuano",
+"cel","celtiques, autres langues","celtiques, autres langues","Celtic (Other)",
+"cmc","chames, langues","chames, langues","Chamic languages",
+"cha","chamorro","chamorro","Chamorro","ch"
+"shn","chan","chan","Shan",
+"chr","cherokee","cherokee","Cherokee",
+"nya","chewa","chichewa; chewa; nyanja","Chichewa; Chewa; Nyanja","ny"
+"chy","cheyenne","cheyenne","Cheyenne",
+"chb","chibcha","chibcha","Chibcha",
+"nya","chichewa","chichewa; chewa; nyanja","Chichewa; Chewa; Nyanja","ny"
+"chi/zho","chinois","chinois","Chinese","zh"
+"chn","chinook, jargon","chinook, jargon","Chinook jargon",
+"chp","chipewyan","chipewyan","Chipewyan",
+"cho","choctaw","choctaw","Choctaw",
+"zha","chuang","zhuang; chuang","Zhuang; Chuang","za"
+"chk","chuuk","chuuk","Chuukese",
+"cop","copte","copte","Coptic",
+"kor","coréen","coréen","Korean","ko"
+"cor","cornique","cornique","Cornish","kw"
+"cos","corse","corse","Corsican","co"
+"cus","couchitiques, autres langues","couchitiques, autres langues","Cushitic (Other)",
+"cre","cree","cree","Cree","cr"
+"hat","créole haïtien","haïtien; créole haïtien","Haitian; Haitian Creole","ht"
+"cpe","créoles et pidgins anglais, autres","créoles et pidgins anglais, autres","Creoles and pidgins, English based (Other)",
+"crp","créoles et pidgins divers","créoles et pidgins divers","Creoles and pidgins (Other)",
+"cpf","créoles et pidgins français, autres","créoles et pidgins français, autres","Creoles and pidgins, French-based (Other)",
+"cpp","créoles et pidgins portugais, autres","créoles et pidgins portugais, autres","Creoles and pidgins, Portuguese-based (Other)",
+"scr/hrv","croate","croate","Croatian","hr"
+"dak","dakota","dakota","Dakota",
+"dan","danois","danois","Danish","da"
+"dar","dargwa","dargwa","Dargwa",
+"day","dayak, langues","dayak, langues","Land Dayak languages",
+"del","delaware","delaware","Delaware",
+"zza","dimili","zaza; dimili; dimli; kirdki; kirmanjki; zazaki","Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki",
+"zza","dimli","zaza; dimili; dimli; kirdki; kirmanjki; zazaki","Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki",
+"din","dinka","dinka","Dinka",
+"dyu","dioula","dioula","Dyula",
+"mis","diverses, langues","diverses, langues","Miscellaneous languages",
+"chg","djaghataï","djaghataï","Chagatai",
+"doi","dogri","dogri","Dogri",
+"dgr","dogrib","dogrib","Dogrib",
+"dua","douala","douala","Duala",
+"dra","dravidiennes, autres langues","dravidiennes, autres langues","Dravidian (Other)",
+"dzo","dzongkha","dzongkha","Dzongkha","dz"
+"sco","écossais","écossais","Scots",
+"bin","edo","bini; edo","Bini; Edo",
+"efi","efik","efik","Efik",
+"egy","égyptien","égyptien","Egyptian (Ancient)",
+"eka","ekajuk","ekajuk","Ekajuk",
+"elx","élamite","élamite","Elamite",
+"myv","erza","erza","Erzya",
+"den","esclave (athapascan)","esclave (athapascan)","Slave (Athapascan)",
+"spa","espagnol","espagnol; castillan","Spanish; Castilian","es"
+"epo","espéranto","espéranto","Esperanto","eo"
+"est","estonien","estonien","Estonian","et"
+"ewe","éwé","éwé","Ewe","ee"
+"ewo","éwondo","éwondo","Ewondo",
+"fan","fang","fang","Fang",
+"fat","fanti","fanti","Fanti",
+"fao","féroïen","féroïen","Faroese","fo"
+"fij","fidjien","fidjien","Fijian","fj"
+"fil","filipino","filipino; pilipino","Filipino; Pilipino",
+"fiu","finno-ougriennes, autres langues","finno-ougriennes, autres langues","Finno-Ugrian (Other)",
+"fin","finnois","finnois","Finnish","fi"
+"dut/nld","flamand","néerlandais; flamand","Dutch; Flemish","nl"
+"fon","fon","fon","Fon",
+"fre/fra","français","français","French","fr"
+"fro","français ancien (842-ca.1400)","français ancien (842-ca.1400)","French, Old (842-ca.1400)",
+"frm","français moyen (1400-1600)","français moyen (1400-1600)","French, Middle (ca.1400-1600)",
+"fur","frioulan","frioulan","Friulian",
+"fry","frison occidental","frison occidental","Western Frisian","fy"
+"frs","frison oriental","frison oriental","Eastern Frisian",
+"frr","frison septentrional","frison septentrional","Northern Frisian",
+"gaa","ga","ga","Ga",
+"gla","gaélique","gaélique; gaélique écossais","Gaelic; Scottish Gaelic","gd"
+"gla","gaélique écossais","gaélique; gaélique écossais","Gaelic; Scottish Gaelic","gd"
+"car","galibi","karib; galibi; carib","Galibi Carib",
+"glg","galicien","galicien","Galician","gl"
+"orm","galla","galla","Oromo","om"
+"wel/cym","gallois","gallois","Welsh","cy"
+"lug","ganda","ganda","Ganda","lg"
+"gay","gayo","gayo","Gayo",
+"gba","gbaya","gbaya","Gbaya",
+"geo/kat","géorgien","géorgien","Georgian","ka"
+"gem","germaniques, autres langues","germaniques, autres langues","Germanic (Other)",
+"gon","gond","gond","Gondi",
+"gor","gorontalo","gorontalo","Gorontalo",
+"got","gothique","gothique","Gothic",
+"guj","goudjrati","goudjrati","Gujarati","gu"
+"grb","grebo","grebo","Grebo",
+"grc","grec ancien (jusqu'Ã 1453)","grec ancien (jusqu'Ã 1453)","Greek, Ancient (to 1453)",
+"gre/ell","grec moderne (après 1453)","grec moderne (après 1453)","Greek, Modern (1453-)","el"
+"kal","groenlandais","groenlandais","Kalaallisut; Greenlandic","kl"
+"grn","guarani","guarani","Guarani","gn"
+"gez","guèze","guèze","Geez",
+"gwi","gwich´in","gwich´in","Gwich´in",
+"hai","haida","haida","Haida",
+"hat","haïtien","haïtien; créole haïtien","Haitian; Haitian Creole","ht"
+"hau","haoussa","haoussa","Hausa","ha"
+"hsb","haut-sorabe","haut-sorabe","Upper Sorbian",
+"haw","hawaïen","hawaïen","Hawaiian",
+"heb","hébreu","hébreu","Hebrew","he"
+"her","herero","herero","Herero","hz"
+"hil","hiligaynon","hiligaynon","Hiligaynon",
+"him","himachali","himachali","Himachali",
+"hin","hindi","hindi","Hindi","hi"
+"hmo","hiri motu","hiri motu","Hiri Motu","ho"
+"hit","hittite","hittite","Hittite",
+"hmn","hmong","hmong","Hmong",
+"hun","hongrois","hongrois","Hungarian","hu"
+"hup","hupa","hupa","Hupa",
+"sah","iakoute","iakoute","Yakut",
+"iba","iban","iban","Iban",
+"ido","ido","ido","Ido","io"
+"ibo","igbo","igbo","Igbo","ig"
+"ijo","ijo, langues","ijo, langues","Ijo languages",
+"ilo","ilocano","ilocano","Iloko",
+"und","indéterminée","indéterminée","Undetermined",
+"cai","indiennes d'Amérique centrale, autres langues","indiennes d'Amérique centrale, autres langues","Central American Indian (Other)",
+"nai","indiennes d'Amérique du Nord, autres langues","indiennes d'Amérique du Nord, autres langues","North American Indian",
+"sai","indiennes d'Amérique du Sud, autres langues","indiennes d'Amérique du Sud, autres langues","South American Indian (Other)",
+"inc","indo-aryennes, autres langues","indo-aryennes, autres langues","Indic (Other)",
+"ine","indo-européennes, autres langues","indo-européennes, autres langues","Indo-European (Other)",
+"ind","indonésien","indonésien","Indonesian","id"
+"inh","ingouche","ingouche","Ingush",
+"ina","interlingua (langue auxiliaire internationale)","interlingua (langue auxiliaire internationale)","Interlingua (International Auxiliary Language Association)","ia"
+"ile","interlingue","interlingue","Interlingue","ie"
+"iku","inuktitut","inuktitut","Inuktitut","iu"
+"ipk","inupiaq","inupiaq","Inupiaq","ik"
+"ira","iraniennes, autres langues","iraniennes, autres langues","Iranian (Other)",
+"gle","irlandais","irlandais","Irish","ga"
+"sga","irlandais ancien (jusqu'Ã 900)","irlandais ancien (jusqu'Ã 900)","Irish, Old (to 900)",
+"mga","irlandais moyen (900-1200)","irlandais moyen (900-1200)","Irish, Middle (900-1200)",
+"iro","iroquoises, langues (famille)","iroquoises, langues (famille)","Iroquoian languages",
+"ice/isl","islandais","islandais","Icelandic","is"
+"ita","italien","italien","Italian","it"
+"jpn","japonais","japonais","Japanese","ja"
+"jav","javanais","javanais","Javanese","jv"
+"kac","jingpho","kachin; jingpho","Kachin; Jingpho",
+"jrb","judéo-arabe","judéo-arabe","Judeo-Arabic",
+"lad","judéo-espagnol","judéo-espagnol","Ladino",
+"jpr","judéo-persan","judéo-persan","Judeo-Persian",
+"kbd","kabardien","kabardien","Kabardian",
+"kab","kabyle","kabyle","Kabyle",
+"kac","kachin","kachin; jingpho","Kachin; Jingpho",
+"csb","kachoube","kachoube","Kashubian",
+"xal","kalmouk","kalmouk; oïrat","Kalmyk; Oirat",
+"kam","kamba","kamba","Kamba",
+"kan","kannada","kannada","Kannada","kn"
+"kau","kanouri","kanouri","Kanuri","kr"
+"kaa","karakalpak","karakalpak","Kara-Kalpak",
+"krc","karatchai balkar","karatchai balkar","Karachay-Balkar",
+"kar","karen, langues","karen, langues","Karen languages",
+"car","karib","karib; galibi; carib","Galibi Carib",
+"kas","kashmiri","kashmiri","Kashmiri","ks"
+"kaw","kawi","kawi","Kawi",
+"kaz","kazakh","kazakh","Kazakh","kk"
+"kha","khasi","khasi","Khasi",
+"khm","khmer central","khmer central","Central Khmer","km"
+"khi","khoisan, autres langues","khoisan, autres langues","Khoisan (Other)",
+"kho","khotanais","khotanais","Khotanese",
+"kik","kikuyu","kikuyu","Kikuyu; Gikuyu","ki"
+"kmb","kimbundu","kimbundu","Kimbundu",
+"zza","kirdki","zaza; dimili; dimli; kirdki; kirmanjki; zazaki","Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki",
+"kir","kirghiz","kirghiz","Kirghiz; Kyrgyz","ky"
+"gil","kiribati","kiribati","Gilbertese",
+"zza","kirmanjki","zaza; dimili; dimli; kirdki; kirmanjki; zazaki","Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki",
+"tlh","klingon","klingon","Klingon; tlhIngan-Hol",
+"kom","kom","kom","Komi","kv"
+"kon","kongo","kongo","Kongo","kg"
+"kok","konkani","konkani","Konkani",
+"kos","kosrae","kosrae","Kosraean",
+"kum","koumyk","koumyk","Kumyk",
+"kpe","kpellé","kpellé","Kpelle",
+"kro","krou, langues","krou, langues","Kru languages",
+"kua","kuanyama","kuanyama; kwanyama","Kuanyama; Kwanyama","kj"
+"kur","kurde","kurde","Kurdish","ku"
+"kru","kurukh","kurukh","Kurukh",
+"kut","kutenai","kutenai","Kutenai",
+"kua","kwanyama","kuanyama; kwanyama","Kuanyama; Kwanyama","kj"
+"lah","lahnda","lahnda","Lahnda",
+"lam","lamba","lamba","Lamba",
+"sgn","langues des signes","langues des signes","Sign Languages",
+"lao","lao","lao","Lao","lo"
+"lat","latin","latin","Latin","la"
+"lav","letton","letton","Latvian","lv"
+"lez","lezghien","lezghien","Lezghian",
+"lim","limbourgeois","limbourgeois","Limburgan; Limburger; Limburgish","li"
+"lin","lingala","lingala","Lingala","ln"
+"lit","lituanien","lituanien","Lithuanian","lt"
+"jbo","lojban","lojban","Lojban",
+"loz","lozi","lozi","Lozi",
+"lub","luba-katanga","luba-katanga","Luba-Katanga","lu"
+"lua","luba-lulua","luba-lulua","Luba-Lulua",
+"lui","luiseno","luiseno","Luiseno",
+"lun","lunda","lunda","Lunda",
+"luo","luo (Kenya et Tanzanie)","luo (Kenya et Tanzanie)","Luo (Kenya and Tanzania)",
+"lus","Lushai","lushai","Lushai",
+"ltz","luxembourgeois","luxembourgeois","Luxembourgish; Letzeburgesch","lb"
+"rup","macédo-roumain","aroumain; macédo-roumain","Aromanian; Arumanian; Macedo-Romanian",
+"mac/mkd","macédonien","macédonien","Macedonian","mk"
+"mad","madourais","madourais","Madurese",
+"mag","magahi","magahi","Magahi",
+"mai","maithili","maithili","Maithili",
+"mak","makassar","makassar","Makasar",
+"may/msa","malais","malais","Malay","ms"
+"mal","malayalam","malayalam","Malayalam","ml"
+"map","malayo-polynésiennes, autres langues","malayo-polynésiennes, autres langues","Austronesian (Other)",
+"div","maldivien","maldivien","Divehi; Dhivehi; Maldivian","dv"
+"mlg","malgache","malgache","Malagasy","mg"
+"mlt","maltais","maltais","Maltese","mt"
+"mdr","mandar","mandar","Mandar",
+"mnc","mandchou","mandchou","Manchu",
+"man","mandingue","mandingue","Mandingo",
+"mni","manipuri","manipuri","Manipuri",
+"glv","mannois","manx; mannois","Manx","gv"
+"mno","manobo, langues","manobo, langues","Manobo languages",
+"glv","manx","manx; mannois","Manx","gv"
+"mao/mri","maori","maori","Maori","mi"
+"rar","maori des îles Cook","rarotonga; maori des îles Cook","Rarotongan; Cook Islands Maori",
+"arn","mapuce","mapudungun; mapuche; mapuce","Mapudungun; Mapuche",
+"arn","mapuche","mapudungun; mapuche; mapuce","Mapudungun; Mapuche",
+"arn","mapudungun","mapudungun; mapuche; mapuce","Mapudungun; Mapuche",
+"mar","marathe","marathe","Marathi","mr"
+"chm","mari","mari","Mari",
+"mah","marshall","marshall","Marshallese","mh"
+"mwr","marvari","marvari","Marwari",
+"mas","massaï","massaï","Masai",
+"myn","maya, langues","maya, langues","Mayan languages",
+"men","mendé","mendé","Mende",
+"mic","mi'kmaq","mi'kmaq; micmac","Mi'kmaq; Micmac",
+"mic","micmac","mi'kmaq; micmac","Mi'kmaq; Micmac",
+"min","minangkabau","minangkabau","Minangkabau",
+"mwl","mirandais","mirandais","Mirandese",
+"moh","mohawk","mohawk","Mohawk",
+"mdf","moksa","moksa","Moksha",
+"mol","moldave","moldave","Moldavian","mo"
+"mkh","môn-khmer, autres langues","môn-khmer, autres langues","Mon-Khmer (Other)",
+"lol","mongo","mongo","Mongo",
+"mon","mongol","mongol","Mongolian","mn"
+"mos","moré","moré","Mossi",
+"mun","mounda, langues","mounda, langues","Munda languages",
+"mul","multilingue","multilingue","Multiple languages",
+"mus","muskogee","muskogee","Creek",
+"nqo","n'ko","n'ko","N'Ko",
+"nah","nahuatl, langues","nahuatl, langues","Nahuatl languages",
+"nap","napolitain","napolitain","Neapolitan",
+"nau","nauruan","nauruan","Nauru","na"
+"nav","navaho","navaho","Navajo; Navaho","nv"
+"nde","ndébélé du Nord","ndébélé du Nord","Ndebele, North; North Ndebele","nd"
+"nbl","ndébélé du Sud","ndébélé du Sud","Ndebele, South; South Ndebele","nr"
+"ndo","ndonga","ndonga","Ndonga","ng"
+"dut/nld","néerlandais","néerlandais; flamand","Dutch; Flemish","nl"
+"dum","néerlandais moyen (ca. 1050-1350)","néerlandais moyen (ca. 1050-1350)","Dutch, Middle (ca.1050-1350)",
+"new","nepal bhasa","nepal bhasa; newari","Nepal Bhasa; Newari",
+"nep","népalais","népalais","Nepali","ne"
+"new","newari","nepal bhasa; newari","Nepal Bhasa; Newari",
+"nwc","newari classique","newari classique","Classical Newari; Old Newari; Classical Nepal Bhasa",
+"nia","nias","nias","Nias",
+"nic","nigéro-congolaises, autres langues","nigéro-congolaises, autres langues","Niger-Kordofanian (Other)",
+"ssa","nilo-sahariennes, autres langues","nilo-sahariennes, autres langues","Nilo-Saharan (Other)",
+"niu","niué","niué","Niuean",
+"nog","nogaï","nogaï; nogay","Nogai",
+"nog","nogay","nogaï; nogay","Nogai",
+"non","norrois, vieux","norrois, vieux","Norse, Old",
+"nor","norvégien","norvégien","Norwegian","no"
+"nob","norvégien bokmål","norvégien bokmål","Bokmål, Norwegian; Norwegian Bokmål","nb"
+"nno","norvégien nynorsk","norvégien nynorsk; nynorsk, norvégien","Norwegian Nynorsk; Nynorsk, Norwegian","nn"
+"nub","nubiennes, langues","nubiennes, langues","Nubian languages",
+"nym","nyamwezi","nyamwezi","Nyamwezi",
+"nya","nyanja","chichewa; chewa; nyanja","Chichewa; Chewa; Nyanja","ny"
+"nyn","nyankolé","nyankolé","Nyankole",
+"nno","nynorsk, norvégien","norvégien nynorsk; nynorsk, norvégien","Norwegian Nynorsk; Nynorsk, Norwegian","nn"
+"nyo","nyoro","nyoro","Nyoro",
+"nzi","nzema","nzema","Nzima",
+"oci","occitan (après 1500)","occitan (après 1500); provençal","Occitan (post 1500); Provençal","oc"
+"xal","oïrat","kalmouk; oïrat","Kalmyk; Oirat",
+"oji","ojibwa","ojibwa","Ojibwa","oj"
+"ori","oriya","oriya","Oriya","or"
+"osa","osage","osage","Osage",
+"oss","ossète","ossète","Ossetian; Ossetic","os"
+"oto","otomangue, langues","otomangue, langues","Otomian languages",
+"udm","oudmourte","oudmourte","Udmurt",
+"uga","ougaritique","ougaritique","Ugaritic",
+"uig","ouïgour","ouïgour","Uighur; Uyghur","ug"
+"urd","ourdou","ourdou","Urdu","ur"
+"uzb","ouszbek","ouszbek","Uzbek","uz"
+"pus","pachto","pachto","Pushto","ps"
+"pal","pahlavi","pahlavi","Pahlavi",
+"pau","palau","palau","Palauan",
+"pli","pali","pali","Pali","pi"
+"pam","pampangan","pampangan","Pampanga",
+"pag","pangasinan","pangasinan","Pangasinan",
+"pap","papiamento","papiamento","Papiamento",
+"paa","papoues, autres langues","papoues, autres langues","Papuan (Other)",
+"zxx","pas de contenu linguistique","pas de contenu linguistique","No linguistic content",
+"nso","pedi","pedi; sepedi; sotho du Nord","Pedi; Sepedi; Northern Sotho",
+"pan","pendjabi","pendjabi","Panjabi; Punjabi","pa"
+"per/fas","persan","persan","Persian","fa"
+"peo","perse, vieux (ca. 600-400 av. J.-C.)","perse, vieux (ca. 600-400 av. J.-C.)","Persian, Old (ca.600-400 B.C.)",
+"ful","peul","peul","Fulah","ff"
+"phn","phénicien","phénicien","Phoenician",
+"phi","philippines, autres langues","philippines, autres langues","Philippine (Other)",
+"fil","pilipino","filipino; pilipino","Filipino; Pilipino",
+"pon","pohnpei","pohnpei","Pohnpeian",
+"pol","polonais","polonais","Polish","pl"
+"por","portugais","portugais","Portuguese","pt"
+"pra","prâkrit","prâkrit","Prakrit languages",
+"oci","provençal","occitan (après 1500); provençal","Occitan (post 1500); Provençal","oc"
+"pro","provençal ancien (jusqu'à 1500)","provençal ancien (jusqu'à 1500)","Provençal, Old (to 1500)",
+"que","quechua","quechua","Quechua","qu"
+"raj","rajasthani","rajasthani","Rajasthani",
+"rap","rapanui","rapanui","Rapanui",
+"rar","rarotonga","rarotonga; maori des îles Cook","Rarotongan; Cook Islands Maori",
+"qaa-qtz","réservée à l'usage local","réservée à l'usage local","Reserved for local use",
+"roh","romanche","romanche","Romansh","rm"
+"roa","romanes, autres langues","romanes, autres langues","Romance (Other)",
+"rum/ron","roumain","roumain","Romanian","ro"
+"run","rundi","rundi","Rundi","rn"
+"rus","russe","russe","Russian","ru"
+"kin","rwanda","rwanda","Kinyarwanda","rw"
+"sal","salish, langues","salish, langues","Salishan languages",
+"sam","samaritain","samaritain","Samaritan Aramaic",
+"smn","sami d'Inari","sami d'Inari","Inari Sami",
+"smj","sami de Lule","sami de Lule","Lule Sami",
+"sme","sami du Nord","sami du Nord","Northern Sami","se"
+"sma","sami du Sud","sami du Sud","Southern Sami",
+"sms","sami skolt","sami skolt","Skolt Sami",
+"smi","sami, autres langues","sami, autres langues","Sami languages (Other)",
+"smo","samoan","samoan","Samoan","sm"
+"sad","sandawe","sandawe","Sandawe",
+"sag","sango","sango","Sango","sg"
+"san","sanskrit","sanskrit","Sanskrit","sa"
+"sat","santal","santal","Santali",
+"srd","sarde","sarde","Sardinian","sc"
+"sas","sasak","sasak","Sasak",
+"nds","saxon, bas","bas allemand; bas saxon; allemand, bas; saxon, bas","Low German; Low Saxon; German, Low; Saxon, Low",
+"sel","selkoupe","selkoupe","Selkup",
+"sem","sémitiques, autres langues","sémitiques, autres langues","Semitic (Other)",
+"nso","sepedi","pedi; sepedi; sotho du Nord","Pedi; Sepedi; Northern Sotho",
+"scc/srp","serbe","serbe","Serbian","sr"
+"srr","sérère","sérère","Serer",
+"sna","shona","shona","Shona","sn"
+"scn","sicilien","sicilien","Sicilian",
+"sid","sidamo","sidamo","Sidamo",
+"snd","sindhi","sindhi","Sindhi","sd"
+"sin","singhalais","singhalais","Sinhala; Sinhalese","si"
+"sit","sino-tibétaines, autres langues","sino-tibétaines, autres langues","Sino-Tibetan (Other)",
+"sio","sioux, langues","sioux, langues","Siouan languages",
+"sla","slaves, autres langues","slaves, autres langues","Slavic (Other)",
+"chu","slavon d'église","slavon d'église; vieux slave; slavon liturgique; vieux bulgare","Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic","cu"
+"chu","slavon liturgique","slavon d'église; vieux slave; slavon liturgique; vieux bulgare","Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic","cu"
+"slo/slk","slovaque","slovaque","Slovak","sk"
+"slv","slovène","slovène","Slovenian","sl"
+"sog","sogdien","sogdien","Sogdian",
+"som","somali","somali","Somali","so"
+"son","songhai, langues","songhai, langues","Songhai languages",
+"snk","soninké","soninké","Soninke",
+"wen","sorabes, langues","sorabes, langues","Sorbian languages",
+"nso","sotho du Nord","pedi; sepedi; sotho du Nord","Pedi; Sepedi; Northern Sotho",
+"sot","sotho du Sud","sotho du Sud","Sotho, Southern","st"
+"sun","soundanais","soundanais","Sundanese","su"
+"sus","soussou","soussou","Susu",
+"srn","sranan tongo","sranan tongo","Sranan Tongo",
+"swe","suédois","suédois","Swedish","sv"
+"suk","sukuma","sukuma","Sukuma",
+"sux","sumérien","sumérien","Sumerian",
+"swa","swahili","swahili","Swahili","sw"
+"ssw","swati","swati","Swati","ss"
+"syr","syriaque","syriaque","Syriac",
+"tgk","tadjik","tadjik","Tajik","tg"
+"tgl","tagalog","tagalog","Tagalog","tl"
+"tah","tahitien","tahitien","Tahitian","ty"
+"tmh","tamacheq","tamacheq","Tamashek",
+"tam","tamoul","tamoul","Tamil","ta"
+"tat","tatar","tatar","Tatar","tt"
+"crh","tatar de Crimé","tatar de Crimé","Crimean Tatar; Crimean Turkish",
+"cze/ces","tchèque","tchèque","Czech","cs"
+"che","tchétchène","tchétchène","Chechen","ce"
+"chv","tchouvache","tchouvache","Chuvash","cv"
+"tel","télougou","télougou","Telugu","te"
+"tem","temne","temne","Timne",
+"ter","tereno","tereno","Tereno",
+"tet","tetum","tetum","Tetum",
+"tha","thaï","thaï","Thai","th"
+"tai","thaïes, autres langues","thaïes, autres langues","Tai (Other)",
+"tib/bod","tibétain","tibétain","Tibetan","bo"
+"tig","tigré","tigré","Tigre",
+"tir","tigrigna","tigrigna","Tigrinya","ti"
+"tiv","tiv","tiv","Tiv",
+"tli","tlingit","tlingit","Tlingit",
+"tpi","tok pisin","tok pisin","Tok Pisin",
+"tkl","tokelau","tokelau","Tokelau",
+"tog","tonga (Nyasa)","tonga (Nyasa)","Tonga (Nyasa)",
+"ton","tongan (Ãles Tonga)","tongan (Ãles Tonga)","Tonga (Tonga Islands)","to"
+"tyv","touva","touva","Tuvinian",
+"rom","tsigane","tsigane","Romany",
+"tsi","tsimshian","tsimshian","Tsimshian",
+"tso","tsonga","tsonga","Tsonga","ts"
+"tsn","tswana","tswana","Tswana","tn"
+"tum","tumbuka","tumbuka","Tumbuka",
+"tup","tupi, langues","tupi, langues","Tupi languages",
+"tur","turc","turc","Turkish","tr"
+"ota","turc ottoman (1500-1928)","turc ottoman (1500-1928)","Turkish, Ottoman (1500-1928)",
+"tuk","turkmène","turkmène","Turkmen","tk"
+"tvl","tuvalu","tuvalu","Tuvalu",
+"twi","twi","twi","Twi","tw"
+"ukr","ukrainien","ukrainien","Ukrainian","uk"
+"umb","umbundu","umbundu","Umbundu",
+"vai","vaï","vaï","Vai",
+"cat","valencien","catalan; valencien","Catalan; Valencian","ca"
+"ven","venda","venda","Venda","ve"
+"vie","vietnamien","vietnamien","Vietnamese","vi"
+"chu","vieux bulgare","slavon d'église; vieux slave; slavon liturgique; vieux bulgare","Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic","cu"
+"chu","vieux slave","slavon d'église; vieux slave; slavon liturgique; vieux bulgare","Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic","cu"
+"vol","volapük","volapük","Volapük","vo"
+"vot","vote","vote","Votic",
+"wak","wakashennes, langues","wakashennes, langues","Wakashan languages",
+"wal","walamo","walamo","Walamo",
+"wln","wallon","wallon","Walloon","wa"
+"war","waray","waray","Waray",
+"was","washo","washo","Washo",
+"wol","wolof","wolof","Wolof","wo"
+"xho","xhosa","xhosa","Xhosa","xh"
+"yao","yao","yao","Yao",
+"yap","yapois","yapois","Yapese",
+"iii","yi de Sichuan","yi de Sichuan","Sichuan Yi","ii"
+"yid","yiddish","yiddish","Yiddish","yi"
+"yor","yoruba","yoruba","Yoruba","yo"
+"ypk","yupik, langues","yupik, langues","Yupik languages",
+"znd","zandé, langues","zandé, langues","Zande languages",
+"zap","zapotèque","zapotèque","Zapotec",
+"zza","zaza","zaza; dimili; dimli; kirdki; kirmanjki; zazaki","Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki",
+"zza","zazaki","zaza; dimili; dimli; kirdki; kirmanjki; zazaki","Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki",
+"zen","zenaga","zenaga","Zenaga",
+"zha","zhuang","zhuang; chuang","Zhuang; Chuang","za"
+"zul","zoulou","zoulou","Zulu","zu"
+"zun","zuni","zuni","Zuni",
Index: externalmodules.pl
===================================================================
RCS file: externalmodules.pl
diff -N externalmodules.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ externalmodules.pl 9 Mar 2007 15:37:25 -0000 1.2
@@ -0,0 +1,27 @@
+#!/usr/bin/perl -w
+
+# This Script can be used to provide a list of ALL external modules ***used*** (uncommented) in Koha.
+# It provides you not only the list of modules BUT ALSO the files that uses those modules.
+# utf8 or warnings or other lib use are not taken into account at the moment.
+
+
+use strict;
+use C4::Context;
+my $dir=C4::Context->config('intranetdir');
+qx(grep -r "^ *use" $dir | grep -v "C4\|strict\|vars" >/tmp/modulesKoha.log);
+$dir=C4::Context->config('opacdir');
+qx(grep -r "^ *use" $dir | grep -v "C4\|strict\|vars" >>/tmp/modulesKoha.log);
+
+open FILE, "< /tmp/modulesKoha.log" ||die "unable to open file /tmp/modulesKoha.log";
+my %modulehash;
+while (my $line=<FILE>){
+ if ( $line=~m#(.*)\:\s*use\s+([A-Z][^\s;]+)# ){
+ my ($file,$module)=($1,$2);
+ my @filename = split /\//, $file;
+ push @{$modulehash{$module}},$filename[scalar(@filename) - 1];
+ }
+}
+print "external modules used in Koha ARE :\n";
+map {print "* $_ \t in files ",join (",",@{$modulehash{$_}}),"\n" } sort keys %modulehash;
+close FILE;
+unlink "/tmp/modulesKoha.log";
Index: InstallAuth.pm
===================================================================
RCS file: InstallAuth.pm
diff -N InstallAuth.pm
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ InstallAuth.pm 9 Mar 2007 15:37:25 -0000 1.2
@@ -0,0 +1,422 @@
+# -*- tab-width: 8 -*-
+# NOTE: This file uses 8-character tabs; do not change the tab size!
+
+package InstallAuth;
+
+# Copyright 2000-2002 Katipo Communications
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+# Suite 330, Boston, MA 02111-1307 USA
+
+use strict;
+use Digest::MD5 qw(md5_base64);
+
+require Exporter;
+use C4::Context;
+use C4::Output; # to get the template
+use C4::Interface::CGI::Output;
+use C4::Koha;
+
+use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
+
+# set the version for version checking
+$VERSION = do { my @v = '$Revision: 1.2 $' =~ /\d+/g;
+ shift(@v) . "." . join( "_", map { sprintf "%03d", $_ } @v );
+};
+
+=head1 NAME
+
+InstallAuth - Authenticates Koha users for Install process
+
+=head1 SYNOPSIS
+
+ use CGI;
+ use InstallAuth;
+
+ my $query = new CGI;
+
+ my ($template, $borrowernumber, $cookie)
+ = get_template_and_user({template_name => "opac-main.tmpl",
+ query => $query,
+ type => "opac",
+ authnotrequired => 1,
+ flagsrequired => {borrow => 1},
+ });
+
+ print $query->header(
+ -type => guesstype($template->output),
+ -cookie => $cookie
+ ), $template->output;
+
+
+=head1 DESCRIPTION
+
+ The main function of this module is to provide
+ authentification. However the get_template_and_user function has
+ been provided so that a users login information is passed along
+ automatically. This gets loaded into the template.
+ This package is different from C4::Auth in so far as
+ C4::Auth uses many preferences which are supposed NOT to be obtainable when installing the database.
+
+ As in C4::Auth, Authentication is based on cookies.
+
+=head1 FUNCTIONS
+
+=over 2
+
+=cut
+
+ at ISA = qw(Exporter);
+ at EXPORT = qw(
+ &checkauth
+ &get_template_and_user
+ &setlanguagecookie
+);
+
+=item get_template_and_user
+
+ my ($template, $borrowernumber, $cookie)
+ = get_template_and_user({template_name => "opac-main.tmpl",
+ query => $query,
+ type => "opac",
+ authnotrequired => 1,
+ flagsrequired => {borrow => 1},
+ });
+
+ This call passes the C<query>, C<flagsrequired> and C<authnotrequired>
+ to C<&checkauth> (in this module) to perform authentification.
+ See C<&checkauth> for an explanation of these parameters.
+
+ The C<template_name> is then used to find the correct template for
+ the page. The authenticated users details are loaded onto the
+ template in the HTML::Template LOOP variable C<USER_INFO>. Also the
+ C<sessionID> is passed to the template. This can be used in templates
+ if cookies are disabled. It needs to be put as and input to every
+ authenticated page.
+
+ More information on the C<gettemplate> sub can be found in the
+ Output.pm module.
+
+=cut
+
+sub get_template_and_user {
+ my $in = shift;
+ my $query=$in->{'query'};
+ my $language=$query->cookie('KohaOpacLanguage');
+ my $path=C4::Context->config('intrahtdocs')."/prog/".($language?$language:"en");
+ my $template = HTML::Template::Pro->new(
+ filename => "$path/".$in->{template_name},
+ die_on_bad_params => 1,
+ global_vars => 1,
+ case_sensitive => 1,
+ path => ["$path/includes"]
+ );
+
+ my ( $user, $cookie, $sessionID, $flags ) = checkauth(
+ $in->{'query'},
+ $in->{'authnotrequired'},
+ $in->{'flagsrequired'},
+ $in->{'type'}
+ );
+# use Data::Dumper;warn "utilisateur $user cookie : ".Dumper($cookie);
+
+ my $borrowernumber;
+ if ($user) {
+ $template->param( loggedinusername => $user );
+ $template->param( sessionID => $sessionID );
+
+
+ # We are going to use the $flags returned by checkauth
+ # to create the template's parameters that will indicate
+ # which menus the user can access.
+ if (( $flags && $flags->{superlibrarian}==1)) {
+ $template->param( CAN_user_circulate => 1 );
+ $template->param( CAN_user_catalogue => 1 );
+ $template->param( CAN_user_parameters => 1 );
+ $template->param( CAN_user_borrowers => 1 );
+ $template->param( CAN_user_permission => 1 );
+ $template->param( CAN_user_reserveforothers => 1 );
+ $template->param( CAN_user_borrow => 1 );
+ $template->param( CAN_user_editcatalogue => 1 );
+ $template->param( CAN_user_updatecharge => 1 );
+ $template->param( CAN_user_acquisition => 1 );
+ $template->param( CAN_user_management => 1 );
+ $template->param( CAN_user_tools => 1 );
+ $template->param( CAN_user_editauthorities => 1 );
+ $template->param( CAN_user_serials => 1 );
+ $template->param( CAN_user_reports => 1 );
+ }
+ }
+ return ( $template, $borrowernumber, $cookie );
+}
+
+=item checkauth
+
+ ($userid, $cookie, $sessionID) = &checkauth($query, $noauth, $flagsrequired, $type);
+
+Verifies that the user is authorized to run this script. If
+the user is authorized, a (userid, cookie, session-id, flags)
+quadruple is returned. If the user is not authorized but does
+not have the required privilege (see $flagsrequired below), it
+displays an error page and exits. Otherwise, it displays the
+login page and exits.
+
+Note that C<&checkauth> will return if and only if the user
+is authorized, so it should be called early on, before any
+unfinished operations (e.g., if you've opened a file, then
+C<&checkauth> won't close it for you).
+
+C<$query> is the CGI object for the script calling C<&checkauth>.
+
+The C<$noauth> argument is optional. If it is set, then no
+authorization is required for the script.
+
+C<&checkauth> fetches user and session information from C<$query> and
+ensures that the user is authorized to run scripts that require
+authorization.
+
+The C<$flagsrequired> argument specifies the required privileges
+the user must have if the username and password are correct.
+It should be specified as a reference-to-hash; keys in the hash
+should be the "flags" for the user, as specified in the Members
+intranet module. Any key specified must correspond to a "flag"
+in the userflags table. E.g., { circulate => 1 } would specify
+that the user must have the "circulate" privilege in order to
+proceed. To make sure that access control is correct, the
+C<$flagsrequired> parameter must be specified correctly.
+
+The C<$type> argument specifies whether the template should be
+retrieved from the opac or intranet directory tree. "opac" is
+assumed if it is not specified; however, if C<$type> is specified,
+"intranet" is assumed if it is not "opac".
+
+If C<$query> does not have a valid session ID associated with it
+(i.e., the user has not logged in) or if the session has expired,
+C<&checkauth> presents the user with a login page (from the point of
+view of the original script, C<&checkauth> does not return). Once the
+user has authenticated, C<&checkauth> restarts the original script
+(this time, C<&checkauth> returns).
+
+The login page is provided using a HTML::Template, which is set in the
+systempreferences table or at the top of this file. The variable C<$type>
+selects which template to use, either the opac or the intranet
+authentification template.
+
+C<&checkauth> returns a user ID, a cookie, and a session ID. The
+cookie should be sent back to the browser; it verifies that the user
+has authenticated.
+
+=cut
+
+sub checkauth {
+ my $query = shift;
+
+# $authnotrequired will be set for scripts which will run without authentication
+ my $authnotrequired = shift;
+ my $flagsrequired = shift;
+ my $type = shift;
+ $type = 'intranet' unless $type;
+
+
+ my $template_name;
+ $template_name = "installer/auth.tmpl";
+
+ # state variables
+ my $loggedin = 0;
+ my %info;
+ my ( $userid, $cookie, $sessionID, $flags, $envcookie );
+ my $logout = $query->param('logout.x');
+ if ( $sessionID = $query->cookie('sessionID') ) {
+ C4::Context->_new_userenv($sessionID);
+ if ( my %hash = $query->cookie('userenv') ) {
+ C4::Context::set_userenv(
+ $hash{number}, $hash{id},
+ $hash{cardnumber}, $hash{firstname},
+ $hash{surname}, $hash{branch},
+ $hash{branchname}, $hash{flags},
+ $hash{emailaddress}, $hash{branchprinter}
+ );
+ $cookie = $query->cookie(
+ -name => 'sessionID',
+ -value => $sessionID,
+ -expires => ''
+ );
+ $loggedin=1;
+ $userid = $hash{cardnumber};
+ }
+ my ( $ip, $lasttime );
+
+ if ($logout) {
+
+ # voluntary logout the user
+ C4::Context->_unset_userenv($sessionID);
+ $sessionID = undef;
+ $userid = undef;
+ open L, ">>/tmp/sessionlog";
+ my $time = localtime( time() );
+ printf L "%20s from %16s logged out at %30s (manually).\n", $userid,
+ $ip, $time;
+ close L;
+ }
+ }
+ unless ($userid) {
+ $sessionID = int( rand() * 100000 ) . '-' . time();
+ $userid = $query->param('userid');
+ C4::Context->_new_userenv($sessionID);
+ my $password = $query->param('password');
+ C4::Context->_new_userenv($sessionID);
+ my ( $return, $cardnumber ) = checkpw( $userid, $password );
+ if ($return) {
+ $loggedin=1;
+ open L, ">>/tmp/sessionlog";
+ my $time = localtime( time() );
+ printf L "%20s from %16s logged in at %30s.\n", $userid,
+ $ENV{'REMOTE_ADDR'}, $time;
+ close L;
+ $cookie = $query->cookie(
+ -name => 'sessionID',
+ -value => $sessionID,
+ -expires => ''
+ );
+ if ( $return == 2 ) {
+ #Only superlibrarian should have access to this page.
+ #Since if it is a user, it is supposed that there is a borrower table
+ #And thus that data structure is loaded.
+ my $hash = C4::Context::set_userenv(
+ 0,
+ 0,
+ C4::Context->config('user'),
+ C4::Context->config('user'),
+ C4::Context->config('user'),
+ "",
+ "SUPER",
+ 1,""
+ );
+ $envcookie = $query->cookie(
+ -name => 'userenv',
+ -value => $hash,
+ -expires => ''
+ );
+ $userid=C4::Context->config('user');
+ }
+ }
+ else {
+ if ($userid) {
+ $info{'invalid_username_or_password'} = 1;
+ C4::Context->_unset_userenv($sessionID);
+ }
+ }
+ }
+
+ # finished authentification, now respond
+ if ( $loggedin )
+ {
+
+ # successful login
+ unless ($cookie) {
+ $cookie = $query->cookie(
+ -name => 'sessionID',
+ -value => '',
+ -expires => ''
+ );
+ }
+ if ($envcookie) {
+ return ( $userid, [ $cookie, $envcookie ], $sessionID, $flags );
+ }
+ else {
+ return ( $userid, $cookie, $sessionID, $flags );
+ }
+ }
+
+ # else we have a problem...
+ # get the inputs from the incoming query
+ my @inputs = ();
+ foreach my $name ( param $query) {
+ (next) if ( $name eq 'userid' || $name eq 'password' );
+ my $value = $query->param($name);
+ push @inputs, { name => $name, value => $value };
+ }
+
+ my $path=C4::Context->config('intrahtdocs')."/prog/".($query->param('language')?$query->param('language'):"en");
+ my $template = HTML::Template::Pro->new(
+ filename => "$path/$template_name",
+ die_on_bad_params => 1,
+ global_vars => 1,
+ case_sensitive => 1,
+ path => ["$path/includes"]
+ );
+ $template->param(
+ INPUTS => \@inputs,
+
+ );
+ $template->param( loginprompt => 1 ) unless $info{'nopermission'};
+
+ my $self_url = $query->url( -absolute => 1 );
+ $template->param(
+ url => $self_url,
+ );
+ $template->param( \%info );
+ $cookie = $query->cookie(
+ -name => 'sessionID',
+ -value => $sessionID,
+ -expires => ''
+ );
+ print $query->header(
+ -type => guesstype( $template->output ),
+ -cookie => $cookie
+ ),
+ $template->output;
+ exit;
+}
+
+sub checkpw {
+
+ my ( $userid, $password ) = @_;
+
+ if ( $userid && $userid eq C4::Context->config('user')
+ && "$password" eq C4::Context->config('pass') )
+ {
+# Koha superuser account
+ C4::Context->set_userenv(0,0,C4::Context->config('user'),C4::Context->config('user'),C4::Context->config('user'),"",1);
+ return 2;
+ }
+ if ( $userid && $userid eq 'demo'
+ && "$password" eq 'demo'
+ && C4::Context->config('demo') )
+ {
+
+# DEMO => the demo user is allowed to do everything (if demo set to 1 in koha.conf
+# some features won't be effective : modify systempref, modify MARC structure,
+ return 2;
+ }
+ return 0;
+}
+
+
+END { } # module clean-up code here (global destructor)
+1;
+__END__
+
+=back
+
+=head1 SEE ALSO
+
+CGI(3)
+
+C4::Output(3)
+
+Digest::MD5(3)
+
+=cut
Index: install.pl
===================================================================
RCS file: install.pl
diff -N install.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ install.pl 9 Mar 2007 15:37:25 -0000 1.2
@@ -0,0 +1,347 @@
+#!/usr/bin/perl -w # please develop with -w
+
+#use diagnostics;
+
+# use Install;
+use InstallAuth;
+use C4::Context;
+use C4::Interface::CGI::Output;
+use C4::Languages;
+
+use strict; # please develop with the strict pragma
+
+use CGI;
+
+my $query=new CGI;
+my $step=$query->param('step');
+
+my $language=$query->param('language');
+my ($template, $loggedinuser, $cookie);
+
+
+my $all_languages=getAllLanguages();
+
+if (defined($language) ){
+ setlanguagecookie($query,$language,"install.pl?step=1");
+}
+($template, $loggedinuser, $cookie)
+ = get_template_and_user({template_name => "installer/step".($step?$step:1).".tmpl",
+ query => $query,
+ type => "intranet",
+ authnotrequired => 0,
+ debug => 1,
+ });
+
+if ($step && $step==1){
+ #First Step
+ #Checking ALL perl Modules and services needed are installed.
+ #Whenever there is an error, adding a report to the page
+ # I suppose here that Apache user can access /usr/bin/
+ # If mysql or zebra are in some fancy directory not in PATH
+ # Performing a disk search.
+ $template->param(language=>1);
+ my $problem;
+
+ unless ($] >= 5.006001) { # Bug 179
+ $template->param("problems"=>1,"perlversion"=>1);
+ $problem=1;
+ }
+ unless (-x "/usr/bin/perl") {
+ my $realperl=`which perl`;
+ $realperl=`find / -name perl` unless ($realperl);
+ chomp $realperl;
+ $template->param("problems"=>1,'perllocation'=>1) unless ($realperl);
+ $problem=1 unless($realperl);
+ }
+ unless (-x "/usr/local/bin/mysql") {
+ my $mysql=`which mysql`;
+ $mysql=`find / -name mysql` unless ($mysql);
+ chomp $mysql;
+ $template->param("problems"=>1,'mysql'=>1) unless ($mysql);
+ $problem=1 unless($mysql);
+ }
+ unless (-x "/usr/local/bin/zebraidx" ||-x "/usr/local/bin/zebraidx-2.0") {
+ my $zebra=`which zebraidx`;
+ $zebra=`which zebraidx-2.0` unless ($zebra);
+ $zebra=`find / -name "zebraidx*"` unless ($zebra);
+ chomp $zebra;
+ $template->param("problems"=>1,'zebra'=>1) unless ($zebra);
+ $problem=1 unless ($zebra);
+ }
+ unless (-x "/usr/local/bin/zebrasrv" ||-x "/usr/local/bin/zebrasrv-2.0") {
+ my $zebra=`which zebrasrv`;
+ $zebra=`which zebrasrv-2.0` unless ($zebra);
+ $zebra=`find / -name "zebrasrv*"` unless ($zebra);
+ chomp $zebra;
+ $template->param("problems"=>1,'zebra'=>1) unless ($zebra);
+ $problem=1 unless ($zebra);
+ }
+ unless (-x "/usr/local/bin/yaz-client") {
+ my $yaz=`which yaz-client`;
+ $yaz=`find / -name "yaz-client*"` unless ($yaz);
+ chomp $yaz;
+ $template->param("problems"=>1,'yaz'=>1) unless ($yaz);
+ $problem=1 unless ($yaz);
+ }
+ # We could here use a special find
+ my @missing = ();
+ unless (eval {require ZOOM}) {
+ push @missing, {name=>"ZOOM"};
+ }
+ unless (eval {require LWP::Simple}) {
+ push @missing, {name=>"LWP::Simple"};
+ }
+ unless (eval {require XML::Simple}) {
+ push @missing, {name=>"XML::Simple"};
+ }
+ unless (eval {require MARC::File::XML}) {
+ push @missing, {name=>"MARC::File::XML"};
+ }
+ unless (eval {require MARC::File::USMARC}) {
+ push @missing, {name=>"MARC::File::USMARC"};
+ }
+ unless (eval {require DBI}) { push @missing,{name=>"DBI"} };
+ unless (eval {require Date::Manip}) { push @missing,{name=>"Date::Manip"} };
+ unless (eval {require DBD::mysql}) { push @missing,{name=>"DBD::mysql"} };
+ unless (eval {require HTML::Template}) { push @missing,{name=>"HTML::Template::Pro"} };
+ unless (eval {require HTML::Template}) { push @missing,{name=>"Date::Calc"} };
+ unless (eval {require Digest::MD5}) { push @missing,{name=>"Digest::MD5"} };
+ unless (eval {require MARC::Record}) { push @missing,{name=>"MARC::Record"} };
+ unless (eval {require Mail::Sendmail}) { push @missing,{name=>"Mail::Sendmail",usagemail=>1} };
+# The following modules are not mandatory, depends on how the library want to use Koha
+ unless (eval {require PDF::API2}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"PDF::API2",usagebarcode=>1};
+ }
+ }
+ unless (eval {require GD::Barcorde}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"GD::Barcode",usagebarcode=>1,usagespine=>1};
+ }
+ }
+ unless (eval {require Data::Random}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"Data::Random",usagebarcode=>1};
+ }
+ }
+ unless (eval {require PDF::Reuse::Barcode}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"PDF::Reuse::Barcode",usagebarcode=>1};
+ }
+ }
+ unless (eval {require PDF::Report}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"PDF::Report",usagebarcode=>1};
+ }
+ }
+ unless (eval {require GD::Barcode::UPCE}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"GD::Barcode::UPCE",usagepine=>1};
+ }
+ }
+ unless (eval {require Net::LDAP}) {
+ if ($#missing>=0) { # only when $#missing >= 0 so this isn't fatal
+ push @missing,{name=>"Net::LDAP",usageLDAP=>1};
+ }
+ }
+
+ $template->param(missings=>\@missing) if (scalar(@missing)>0);
+ $template->param('checkmodule'=>1) unless (scalar(@missing) && $problem);
+
+} elsif ($step && $step==2){
+ # Check Database connection and access
+ my %info;
+ $info{'dbname'}=C4::Context->config("database");
+ $info{'dbms'}=(C4::Context->config("db_scheme")?C4::Context->config("db_scheme"):"mysql");
+ $info{'hostname'}=C4::Context->config("hostname");
+ ($info{'hostname'},$info{'port'})=($1,$2) if $info{'hostname'}=~/([^:]*):([0-9]+)/;
+ $info{'user'}=C4::Context->config("user");
+ $info{'password'}=C4::Context->config("pass");
+ $template->param(%info);
+ my $checkmysql=$query->param("checkmysql");
+ $template->param('mysqlconnection'=>$checkmysql);
+ if ($checkmysql){
+ my $dbh= DBI->connect("DBI:$info{dbms}:$info{dbname}:$info{hostname}".($info{port}?":$info{port}":""),$info{'user'}, $info{'password'});
+ if ($dbh){
+ # Can connect to the mysql
+ $template->param("checkdatabaseaccess"=>1);
+ if ($info{dbms} eq "mysql"){
+ #Check if database created
+ my $rv=$dbh->do("SHOW DATABASES LIKE \'$info{dbname}\'");
+ if ($rv==1){$template->param('checkdatabasecreated'=>1);}
+ #Check if user have all necessary grants on this database.
+ my $rq=$dbh->prepare("SHOW GRANTS FOR \'$info{user}\'\@'$info{hostname}'");
+ $rq->execute;
+ my $grantaccess;
+ while (my ($line)=$rq->fetchrow){
+ my $dbname=$info{dbname};
+ if ($line=~m/$dbname/ || index($line,'*.*')>0){
+ $grantaccess=1 if (index($line,'ALL PRIVILEGES')>0 ||
+ ((index($line,'SELECT')>0)&&(index($line,'INSERT')>0)&&(index($line,'UPDATE')>0)&&(index($line,'DELETE')>0)&&(index($line,'CREATE')>0)&&(index($line,'DROP')>0)));
+ }
+ }
+ unless ($grantaccess){
+ $rq=$dbh->prepare("SHOW GRANTS FOR \'$info{user}\'\@'\%'");
+ $rq->execute;
+ while (my ($line)=$rq->fetchrow){
+ my $dbname=$info{dbname};
+ if ($line=~m/$dbname/ || index($line,'*.*')>0){
+ $grantaccess=1 if (index($line,'ALL PRIVILEGES')>0 ||
+ ((index($line,'SELECT')>0)&&(index($line,'INSERT')>0)&&(index($line,'UPDATE')>0)&&(index($line,'DELETE')>0)&&(index($line,'CREATE')>0)&&(index($line,'DROP')>0)));
+ }
+ }
+ }
+ $template->param("checkgrantaccess"=>$grantaccess);
+ }
+ } else {
+ $template->param("error"=>DBI::err,"message"=>DBI::errstr);
+ }
+ }
+} elsif ($step && $step==3){
+ my %info;
+ $info{'dbname'}=C4::Context->config("database");
+ $info{'dbms'}=(C4::Context->config("db_scheme")?C4::Context->config("db_scheme"):"mysql");
+ $info{'hostname'}=C4::Context->config("hostname");
+ ($info{'hostname'},$info{'port'})=($1,$2) if $info{'hostname'}=~/([^:]*):([0-9]+)/;
+ $info{port} = 3306 unless ($info{port});
+ $info{'user'}=C4::Context->config("user");
+ $info{'password'}=C4::Context->config("pass");
+ my $op=$query->param('op');
+ if ($op && $op eq 'finish'){
+ # Installation is finished.
+ # We just deny anybody acess to install
+ # And we redirect people to mainpage.
+ # The installer wil have to relogin since we donot pass cookie to redirection.
+ my $dir=C4::Context->config('intranetdir');
+ qx(chmod -R uog-xw $dir/installer);
+ print $query->redirect("/cgi-bin/koha/mainpage.pl");
+ exit 1;
+ } elsif ($op && $op eq 'addframeworks'){
+ #Framework importing and reports
+ my $lang;
+ my %hashlevel;
+
+ foreach my $file ($query->param('framework')){
+ undef $/;
+ my $strcmd="mysql ".($info{hostname}?"-h $info{hostname} ":"").($info{port}?"-P $info{port} ":"").($info{user}?"-u $info{user} ":"").($info{password}?"-p$info{password}":"")." $info{dbname} ";
+ my $str = qx($strcmd < $file 2>&1);
+ my @file = split qr(\/|\\),$file;
+ $lang=$file[scalar(@file)-3] unless ($lang);
+ my $level=$file[scalar(@file)-2];
+ #Bulding here a hierarchy to display files by level.
+ push @{$hashlevel{$level}},{"fwkname"=>$file[scalar(@file)-1],"error"=>$str};
+ }
+ my @list;
+ map {push @list,{"level"=>$_,"fwklist"=>$hashlevel{$_}}} keys %hashlevel;
+ my $fwk_language;
+ for my $each_language(@$all_languages) {
+ warn "CODE".$each_language->{'language_code'};
+ warn "LANG:".$lang;
+ if ($lang eq $each_language->{'language_code'}) {
+ $fwk_language = $each_language->{language_locale_name};
+ }
+ }
+ $template->param("fwklanguage"=>$fwk_language,
+ "list"=>\@list);
+ $template->param("$op"=>1);
+ } elsif ( $op && $op eq 'selectframeworks'){
+ #Framework Selection
+ #sql data for import are supposed to be located in misc/sql-datas/<language>/<level>
+ # Where <language> is en|fr or any international abbreviation (provided language hash is updated... This will be a problem with internationlisation.)
+ # Where <level> is a category of requirement : required, recommended optional
+ # level should contain :
+ # SQL File for import With a readable name.
+ # txt File taht explains what this SQL File is meant for.
+ # Could be VERY useful to have A Big file for a kind of library.
+ # But could also be useful to have some Authorised values data set prepared here.
+ # Framework Selection is achieved through checking boxes.
+ my $langchoice=$query->param('fwklanguage') ;
+ $langchoice=$query->cookie('KohaOpacLanguage') unless ($langchoice);
+ my $dir=C4::Context->config('intranetdir')."/misc/sql-datas/";
+ opendir (MYDIR,$dir);
+ my @listdir= grep { !/^\.|CVS/ && -d "$dir/$_"} readdir(MYDIR);
+ closedir MYDIR;
+ my $frmwklangs = getFrameworkLanguages();
+ my @languages;
+ map{
+ push @languages,{'dirname'=>$_->{'language_code'}, 'languagedescription'=>$_->{'language_name'},'checked'=>($_->{'language_code'} eq $langchoice) } if ($_->{'language_code'});
+ } @$frmwklangs;
+ $template->param("languagelist"=>\@languages);
+ undef $/;
+ $dir=C4::Context->config('intranetdir')."/misc/sql-datas/$langchoice";
+ opendir (MYDIR,$dir) || warn "no open $dir";
+ @listdir= grep { !/^\.|CVS/ && -d "$dir/$_"} readdir(MYDIR);
+ closedir MYDIR;
+ my @levellist;
+ foreach my $requirelevel (@listdir){
+ $dir =C4::Context->config('intranetdir')."/misc/sql-datas/$langchoice/$requirelevel";
+ opendir (MYDIR,$dir);
+ my @listname = grep { !/^\.|CVS/ && -f "$dir/$_" && $_=~m/\.sql$/} readdir(MYDIR);
+ closedir MYDIR;
+ my %cell;
+ my @frameworklist;
+ map{
+ my $name=substr($_,0,-4);
+ open FILE, "< $dir/$name.txt";
+ my $lines = <FILE>;
+ $lines=~s/\n|\r/<br \/>/g;
+ use utf8;
+ utf8::encode($lines) unless (utf8::is_utf8($lines));
+ push @frameworklist,{'fwkname'=>$name, 'fwkfile'=>"$dir/$_",'fwkdescription'=>$lines};
+ } @listname;
+ $cell{"mandatory"}=($requirelevel=~/(mandatory|requi|oblig|necess)/i);
+ $cell{"frameworks"}=\@frameworklist;
+ $cell{"label"}=ucfirst($requirelevel);
+ $cell{"code"}=lc($requirelevel);
+ push @levellist,\%cell;
+ }
+ $template->param("levelloop"=>\@levellist);
+ $template->param("$op"=>1);
+ } elsif ($op && $op eq 'updatestructure'){
+ #Do updatedatabase And report
+ my $execstring=C4::Context->config("intranetdir")."/updater/updatedatabase";
+ undef $/;
+ my $string= qx|$execstring 2>&1|;
+ if ($string){
+ $string=~s/\n|\r/<br \/>/g;
+ $string=~s/(DBD::mysql.*? failed: .*? line [0-9]*.|=================.*?====================)/<font color=red>$1<\/font>/g;
+ $template->param("updatereport"=>$string) ;
+ }
+ $template->param($op=>1)
+ }elsif ($op && $op eq 'importdatastructure'){
+ #Import data structure and show errors if any
+ my $filename="kohastructure.sql";
+ undef $/;
+ my $str = qx(mysql -h $info{hostname} -P $info{port} -u $info{user} -p$info{password} $info{dbname} <$filename 2>&1);
+ $str=~s/\n|\r/<br \/>/g;
+ $template->param("error"=>$str ,
+ importdatastructure => 1, );
+ } else {
+ #Check if there are enough tables.
+ # Version 2_2 was 74 tables, so we check if there is more than 75
+ # Maybe could be in step 2
+ #I put it there because it implied a data import if condition was not satisfied.
+ my $dbh= DBI->connect("DBI:$info{dbms}:$info{dbname}:$info{hostname}".($info{port}?":$info{port}":""),$info{'user'}, $info{'password'});
+ my $rq=$dbh->prepare("SHOW TABLES FROM ".$info{'dbname'});
+ $rq->execute;
+ my $data=$rq->fetchall_arrayref({});
+ my $count=scalar(@$data);
+ if ($count < 75){
+ $template->param("count"=>$count,"proposeimport"=>1);
+ } else {
+ $template->param("count"=>$count,"default"=>1);
+ }
+ $dbh->disconnect;
+ }
+}else {
+ # LANGUAGE SELECTION page by default
+ # using opendir + language Hash
+
+ my $langavail = getTranslatedLanguages();
+ my @languages;
+ foreach (@$langavail){
+ push @languages,{'value'=>$_->{'language_code'}, 'description'=>$_->{'language_name'} } if ($_->{'language_code'});
+ }
+ $template->param(languages=>\@languages);
+}
+output_html_with_http_headers $query, $cookie, $template->output;
Index: kohastructure.sql
===================================================================
RCS file: kohastructure.sql
diff -N kohastructure.sql
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ kohastructure.sql 9 Mar 2007 15:37:25 -0000 1.2
@@ -0,0 +1,2241 @@
+-- phpMyAdmin SQL Dump
+-- version 2.9.0.2
+-- http://www.phpmyadmin.net
+--
+-- Serveur: localhost
+-- Généré le : Mardi 06 Février 2007 à 15:21
+-- Version du serveur: 4.1.12
+-- Version de PHP: 5.0.4
+--
+-- Base de données: `Kohazebratest`
+--
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `accountlines`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `accountlines`;
+CREATE TABLE IF NOT EXISTS `accountlines` (
+ `borrowernumber` int(11) NOT NULL default '0',
+ `accountno` smallint(6) NOT NULL default '0',
+ `itemnumber` int(11) default NULL,
+ `date` date default NULL,
+ `amount` decimal(28,6) default NULL,
+ `description` text,
+ `dispute` text,
+ `accounttype` varchar(5) default NULL,
+ `amountoutstanding` decimal(28,6) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `notify_id` int(11) NOT NULL default '0',
+ `notify_level` int(2) NOT NULL default '0',
+ KEY `acctsborridx` (`borrowernumber`),
+ KEY `timeidx` (`timestamp`),
+ KEY `itemnumber` (`itemnumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `accountoffsets`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `accountoffsets`;
+CREATE TABLE IF NOT EXISTS `accountoffsets` (
+ `borrowernumber` int(11) NOT NULL default '0',
+ `accountno` smallint(6) NOT NULL default '0',
+ `offsetaccount` smallint(6) NOT NULL default '0',
+ `offsetamount` decimal(28,6) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `action_logs`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `action_logs`;
+CREATE TABLE IF NOT EXISTS `action_logs` (
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `user` int(11) NOT NULL default '0',
+ `module` text,
+ `action` text,
+ `object` int(11) default '0',
+ `info` text,
+ PRIMARY KEY (`timestamp`,`user`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `alert`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `alert`;
+CREATE TABLE IF NOT EXISTS `alert` (
+ `alertid` int(11) NOT NULL auto_increment,
+ `borrowernumber` int(11) NOT NULL default '0',
+ `type` varchar(10) NOT NULL default '',
+ `externalid` varchar(20) NOT NULL default '',
+ PRIMARY KEY (`alertid`),
+ KEY `borrowernumber` (`borrowernumber`),
+ KEY `type` (`type`,`externalid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqbasket`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `aqbasket`;
+CREATE TABLE IF NOT EXISTS `aqbasket` (
+ `basketno` int(11) NOT NULL auto_increment,
+ `creationdate` date default NULL,
+ `closedate` date default NULL,
+ `booksellerid` int(11) NOT NULL default '1',
+ `authorisedby` varchar(10) default NULL,
+ `booksellerinvoicenumber` text,
+ PRIMARY KEY (`basketno`),
+ KEY `booksellerid` (`booksellerid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqbookfund`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `aqbookfund`;
+CREATE TABLE IF NOT EXISTS `aqbookfund` (
+ `bookfundid` varchar(5) NOT NULL default '''''',
+ `bookfundname` text,
+ `bookfundgroup` varchar(5) default NULL,
+ `branchcode` varchar(4) NOT NULL default '',
+ PRIMARY KEY (`bookfundid`,`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqbooksellers`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `aqbooksellers`;
+CREATE TABLE IF NOT EXISTS `aqbooksellers` (
+ `id` int(11) NOT NULL default '0',
+ `name` text,
+ `address1` text,
+ `address2` text,
+ `address3` text,
+ `address4` text,
+ `phone` varchar(30) default NULL,
+ `accountnumber` text,
+ `othersupplier` text,
+ `currency` varchar(3) NOT NULL default '',
+ `deliverydays` smallint(6) default NULL,
+ `followupdays` smallint(6) default NULL,
+ `followupscancel` smallint(6) default NULL,
+ `specialty` text,
+ `booksellerfax` text,
+ `notes` text,
+ `bookselleremail` text,
+ `booksellerurl` text,
+ `contact` varchar(100) default NULL,
+ `postal` text,
+ `url` varchar(255) default NULL,
+ `contpos` varchar(100) default NULL,
+ `contphone` varchar(100) default NULL,
+ `contfax` varchar(100) default NULL,
+ `contaltphone` varchar(100) default NULL,
+ `contemail` varchar(100) default NULL,
+ `contnotes` text,
+ `active` tinyint(4) default NULL,
+ `listprice` varchar(10) default '',
+ `invoiceprice` varchar(10) default '',
+ `gstreg` tinyint(4) default NULL,
+ `listincgst` tinyint(4) default NULL,
+ `invoiceincgst` tinyint(4) default NULL,
+ `discount` float(6,4) default NULL,
+ `fax` varchar(50) default NULL,
+ `nocalc` int(11) default NULL,
+ `invoicedisc` float(6,4) default NULL,
+ PRIMARY KEY (`id`),
+ KEY `listprice` (`listprice`),
+ KEY `invoiceprice` (`invoiceprice`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqbudget`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `aqbudget`;
+CREATE TABLE IF NOT EXISTS `aqbudget` (
+ `bookfundid` varchar(5) NOT NULL default '',
+ `startdate` date NOT NULL default '0000-00-00',
+ `enddate` date default NULL,
+ `budgetamount` decimal(13,2) default NULL,
+ `aqbudgetid` tinyint(4) NOT NULL auto_increment,
+ `branchcode` varchar(4) NOT NULL default '',
+ PRIMARY KEY (`aqbudgetid`,`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqorderbreakdown`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:41
+--
+
+DROP TABLE IF EXISTS `aqorderbreakdown`;
+CREATE TABLE IF NOT EXISTS `aqorderbreakdown` (
+ `ordernumber` int(11) default NULL,
+ `linenumber` int(11) default NULL,
+ `branchcode` char(4) default NULL,
+ `bookfundid` char(5) NOT NULL default '',
+ `allocation` smallint(6) default NULL,
+ KEY `ordernumber` (`ordernumber`),
+ KEY `bookfundid` (`bookfundid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqorderdelivery`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `aqorderdelivery`;
+CREATE TABLE IF NOT EXISTS `aqorderdelivery` (
+ `ordernumber` date NOT NULL default '0000-00-00',
+ `deliverynumber` smallint(6) NOT NULL default '0',
+ `deliverydate` varchar(18) default NULL,
+ `qtydelivered` smallint(6) default NULL,
+ `deliverycomments` text
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `aqorders`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:41
+--
+
+DROP TABLE IF EXISTS `aqorders`;
+CREATE TABLE IF NOT EXISTS `aqorders` (
+ `ordernumber` int(11) NOT NULL auto_increment,
+ `biblionumber` int(11) default NULL,
+ `title` text,
+ `entrydate` date default NULL,
+ `quantity` smallint(6) default NULL,
+ `currency` varchar(3) default NULL,
+ `listprice` decimal(28,6) default NULL,
+ `totalamount` decimal(28,6) default NULL,
+ `datereceived` date default NULL,
+ `booksellerinvoicenumber` text,
+ `freight` decimal(28,6) default NULL,
+ `unitprice` decimal(28,6) default NULL,
+ `quantityreceived` smallint(6) default NULL,
+ `cancelledby` varchar(10) default NULL,
+ `datecancellationprinted` date default NULL,
+ `notes` text,
+ `supplierreference` text,
+ `purchaseordernumber` text,
+ `subscription` tinyint(1) default NULL,
+ `serialid` varchar(30) default NULL,
+ `basketno` int(11) default NULL,
+ `biblioitemnumber` int(11) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `rrp` decimal(13,2) default NULL,
+ `ecost` decimal(13,2) default NULL,
+ `gst` decimal(13,2) default NULL,
+ `budgetdate` date default NULL,
+ `sort1` varchar(80) default NULL,
+ `sort2` varchar(80) default NULL,
+ PRIMARY KEY (`ordernumber`),
+ KEY `basketno` (`basketno`),
+ KEY `biblionumber` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `auth_header`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `auth_header`;
+CREATE TABLE IF NOT EXISTS `auth_header` (
+ `authid` bigint(20) unsigned NOT NULL auto_increment,
+ `authtypecode` varchar(10) NOT NULL default '',
+ `datecreated` date NOT NULL default '0000-00-00',
+ `datemodified` date default NULL,
+ `origincode` varchar(20) default NULL,
+ `marc` blob,
+ `linkid` bigint(20) default NULL,
+ `authtrees` text,
+ `marcxml` text NOT NULL,
+ PRIMARY KEY (`authid`),
+ KEY `origincode` (`origincode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `auth_subfield_structure`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `auth_subfield_structure`;
+CREATE TABLE IF NOT EXISTS `auth_subfield_structure` (
+ `authtypecode` varchar(10) NOT NULL default '',
+ `tagfield` varchar(3) NOT NULL default '',
+ `tagsubfield` char(1) NOT NULL default '',
+ `liblibrarian` varchar(255) NOT NULL default '',
+ `libopac` varchar(255) NOT NULL default '',
+ `repeatable` tinyint(4) NOT NULL default '0',
+ `mandatory` tinyint(4) NOT NULL default '0',
+ `tab` tinyint(1) default NULL,
+ `authorised_value` varchar(10) default NULL,
+ `value_builder` varchar(80) default NULL,
+ `seealso` varchar(255) default NULL,
+ `hidden` tinyint(1) unsigned NOT NULL default '0',
+ `isurl` tinyint(1) unsigned NOT NULL default '0',
+ `link` varchar(80) default NULL,
+ `frameworkcode` varchar(8) NOT NULL default '',
+ `kohafield` varchar(40) default NULL,
+ `linkid` tinyint(1) NOT NULL default '0',
+ PRIMARY KEY (`authtypecode`,`tagfield`,`tagsubfield`),
+ KEY `tab` (`authtypecode`,`tab`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `auth_subfield_table`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `auth_subfield_table`;
+CREATE TABLE IF NOT EXISTS `auth_subfield_table` (
+ `subfieldid` bigint(20) unsigned NOT NULL auto_increment,
+ `authid` bigint(20) unsigned NOT NULL default '0',
+ `tag` varchar(3) NOT NULL default '',
+ `tagorder` tinyint(4) NOT NULL default '1',
+ `tag_indicator` varchar(2) NOT NULL default '',
+ `subfieldcode` char(1) NOT NULL default '',
+ `subfieldorder` tinyint(4) NOT NULL default '1',
+ `subfieldvalue` varchar(255) default NULL,
+ PRIMARY KEY (`subfieldid`),
+ KEY `authid` (`authid`),
+ KEY `tag` (`tag`),
+ KEY `subfieldcode` (`subfieldcode`),
+ KEY `subfieldvalue` (`subfieldvalue`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `auth_tag_structure`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:41
+--
+
+DROP TABLE IF EXISTS `auth_tag_structure`;
+CREATE TABLE IF NOT EXISTS `auth_tag_structure` (
+ `authtypecode` char(10) NOT NULL default '',
+ `tagfield` char(3) NOT NULL default '',
+ `liblibrarian` char(255) NOT NULL default '',
+ `libopac` char(255) NOT NULL default '',
+ `repeatable` tinyint(4) NOT NULL default '0',
+ `mandatory` tinyint(4) NOT NULL default '0',
+ `authorised_value` char(10) default NULL,
+ PRIMARY KEY (`authtypecode`,`tagfield`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `auth_types`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:56
+--
+
+DROP TABLE IF EXISTS `auth_types`;
+CREATE TABLE IF NOT EXISTS `auth_types` (
+ `authtypecode` varchar(10) NOT NULL default '',
+ `authtypetext` varchar(255) NOT NULL default '',
+ `auth_tag_to_report` varchar(3) NOT NULL default '',
+ `summary` text NOT NULL,
+ PRIMARY KEY (`authtypecode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `auth_word`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `auth_word`;
+CREATE TABLE IF NOT EXISTS `auth_word` (
+ `authid` bigint(20) NOT NULL default '0',
+ `tagsubfield` varchar(4) NOT NULL default '',
+ `tagorder` tinyint(4) NOT NULL default '1',
+ `subfieldorder` tinyint(4) NOT NULL default '1',
+ `word` varchar(255) NOT NULL default '',
+ `sndx_word` varchar(255) NOT NULL default '',
+ KEY `authid` (`authid`),
+ KEY `marc_search` (`tagsubfield`,`word`),
+ KEY `word` (`word`),
+ KEY `sndx_word` (`sndx_word`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `authorised_values`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `authorised_values`;
+CREATE TABLE IF NOT EXISTS `authorised_values` (
+ `id` int(11) NOT NULL auto_increment,
+ `category` char(10) NOT NULL default '',
+ `authorised_value` char(80) NOT NULL default '',
+ `lib` char(80) default NULL,
+ PRIMARY KEY (`id`),
+ KEY `name` (`category`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `biblio`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `biblio`;
+CREATE TABLE IF NOT EXISTS `biblio` (
+ `biblionumber` int(11) NOT NULL default '0',
+ `author` text,
+ `title` text,
+ `unititle` text,
+ `notes` text,
+ `serial` tinyint(1) default NULL,
+ `seriestitle` text,
+ `copyrightdate` smallint(6) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `abstract` text,
+ `frameworkcode` varchar(4) default NULL,
+ PRIMARY KEY (`biblionumber`),
+ KEY `blbnoidx` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `biblio_framework`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `biblio_framework`;
+CREATE TABLE IF NOT EXISTS `biblio_framework` (
+ `frameworkcode` char(4) NOT NULL default '',
+ `frameworktext` char(255) NOT NULL default '',
+ PRIMARY KEY (`frameworkcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `biblioanalysis`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `biblioanalysis`;
+CREATE TABLE IF NOT EXISTS `biblioanalysis` (
+ `analyticaltitle` text,
+ `biblionumber` int(11) NOT NULL default '0',
+ `analyticalauthor` text
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `biblioitems`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `biblioitems`;
+CREATE TABLE IF NOT EXISTS `biblioitems` (
+ `biblioitemnumber` int(11) NOT NULL default '0',
+ `biblionumber` int(11) NOT NULL default '0',
+ `volume` text,
+ `number` text,
+ `classification` varchar(25) default NULL,
+ `itemtype` varchar(4) default NULL,
+ `isbn` varchar(14) default NULL,
+ `issn` varchar(9) default NULL,
+ `dewey` varchar(30) default '',
+ `subclass` varchar(3) default NULL,
+ `publicationyear` smallint(6) default NULL,
+ `publishercode` varchar(255) default NULL,
+ `volumedate` date default NULL,
+ `volumeddesc` varchar(255) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `illus` varchar(255) default NULL,
+ `pages` varchar(255) default NULL,
+ `notes` text,
+ `size` varchar(255) default NULL,
+ `place` varchar(255) default NULL,
+ `lccn` varchar(25) default NULL,
+ `marc` blob,
+ `url` varchar(255) default NULL,
+ `marcxml` text,
+ `lcsort` varchar(25) default NULL,
+ `ccode` varchar(4) default '',
+ PRIMARY KEY (`biblioitemnumber`),
+ KEY `bibinoidx` (`biblioitemnumber`),
+ KEY `bibnoidx` (`biblionumber`),
+ KEY `itemtype` (`itemtype`),
+ KEY `isbn` (`isbn`),
+ KEY `publishercode` (`publishercode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `bibliothesaurus`
+--
+-- Création: Mercredi 04 Octobre 2006 à 23:21
+-- Dernière modification: Mercredi 04 Octobre 2006 à 23:21
+-- Dernière vérification: Mercredi 04 Octobre 2006 à 23:21
+--
+
+DROP TABLE IF EXISTS `bibliothesaurus`;
+CREATE TABLE IF NOT EXISTS `bibliothesaurus` (
+ `id` bigint(20) NOT NULL auto_increment,
+ `freelib` char(255) NOT NULL default '',
+ `stdlib` char(255) NOT NULL default '',
+ `category` char(10) NOT NULL default '',
+ `level` tinyint(4) NOT NULL default '1',
+ `hierarchy` char(80) NOT NULL default '',
+ `father` char(80) NOT NULL default '',
+ PRIMARY KEY (`id`),
+ KEY `freelib` (`freelib`),
+ KEY `stdlib` (`stdlib`),
+ KEY `category` (`category`),
+ KEY `hierarchy` (`hierarchy`),
+ KEY `category_2` (`category`,`freelib`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `bookshelf`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `bookshelf`;
+CREATE TABLE IF NOT EXISTS `bookshelf` (
+ `shelfnumber` int(11) NOT NULL auto_increment,
+ `shelfname` char(255) default NULL,
+ `owner` char(80) default NULL,
+ `category` char(1) default NULL,
+ PRIMARY KEY (`shelfnumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `borexp`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `borexp`;
+CREATE TABLE IF NOT EXISTS `borexp` (
+ `borrowernumber` int(11) default NULL,
+ `newexp` date default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `borrowers`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `borrowers`;
+CREATE TABLE IF NOT EXISTS `borrowers` (
+ `borrowernumber` int(11) NOT NULL auto_increment,
+ `cardnumber` varchar(16) NOT NULL default '',
+ `surname` text NOT NULL,
+ `firstname` text,
+ `title` text,
+ `othernames` text,
+ `initials` text,
+ `streetnumber` varchar(10) default NULL,
+ `streettype` varchar(50) default NULL,
+ `address` text NOT NULL,
+ `address2` text,
+ `city` text NOT NULL,
+ `zipcode` varchar(25) default NULL,
+ `email` text,
+ `phone` text,
+ `mobile` varchar(50) default NULL,
+ `fax` text,
+ `B_streetnumber` varchar(10) default NULL,
+ `B_streettype` varchar(50) default NULL,
+ `emailpro` text,
+ `phonepro` text,
+ `B_address` varchar(100) default NULL,
+ `B_city` text,
+ `B_zipcode` varchar(25) default NULL,
+ `B_email` text,
+ `B_phone` text,
+ `dateofbirth` date default NULL,
+ `branchcode` varchar(10) NOT NULL default '',
+ `categorycode` varchar(10) NOT NULL default '',
+ `dateenrolled` date default NULL,
+ `dateexpiry` date default NULL,
+ `gonenoaddress` tinyint(1) default NULL,
+ `lost` tinyint(1) default NULL,
+ `debarred` tinyint(1) default NULL,
+ `contactname` text,
+ `contactfirstname` text,
+ `contacttitle` text,
+ `guarantorid` int(11) default NULL,
+ `borrowernotes` text,
+ `relationship` varchar(100) default NULL,
+ `ethnicity` varchar(50) default NULL,
+ `ethnotes` varchar(255) default NULL,
+ `sex` char(1) default NULL,
+ `password` varchar(30) default NULL,
+ `flags` int(11) default NULL,
+ `userid` varchar(30) default NULL,
+ `opacnote` text,
+ `contactnote` varchar(255) default NULL,
+ `sort1` varchar(80) default NULL,
+ `sort2` varchar(80) default NULL,
+ `textmessaging` varchar(30) default NULL,
+ `homezipcode` varchar(25) default NULL,
+ UNIQUE KEY `cardnumber` (`cardnumber`),
+ KEY `borrowernumber` (`borrowernumber`),
+ KEY `categorycode` (`categorycode`),
+ KEY `branchcode` (`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `borrowers_to_borrowers`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `borrowers_to_borrowers`;
+CREATE TABLE IF NOT EXISTS `borrowers_to_borrowers` (
+ `borrower1` int(11) default NULL,
+ `borrower2` int(11) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `branchcategories`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `branchcategories`;
+CREATE TABLE IF NOT EXISTS `branchcategories` (
+ `categorycode` varchar(4) NOT NULL default '',
+ `categoryname` text,
+ `codedescription` text,
+ PRIMARY KEY (`categorycode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `branches`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `branches`;
+CREATE TABLE IF NOT EXISTS `branches` (
+ `branchcode` varchar(10) NOT NULL default '',
+ `branchname` text NOT NULL,
+ `branchaddress1` text,
+ `branchaddress2` text,
+ `branchaddress3` text,
+ `branchphone` text,
+ `branchfax` text,
+ `branchemail` text,
+ `issuing` tinyint(4) default NULL,
+ `branchip` varchar(15) default '',
+ `branchprinter` varchar(100) default '',
+ UNIQUE KEY `branchcode` (`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `branchrelations`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `branchrelations`;
+CREATE TABLE IF NOT EXISTS `branchrelations` (
+ `branchcode` varchar(4) default NULL,
+ `categorycode` varchar(4) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `branchtransfers`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `branchtransfers`;
+CREATE TABLE IF NOT EXISTS `branchtransfers` (
+ `itemnumber` int(11) NOT NULL default '0',
+ `datesent` datetime default NULL,
+ `frombranch` varchar(10) NOT NULL default '',
+ `datearrived` datetime default NULL,
+ `tobranch` varchar(10) NOT NULL default '',
+ `comments` text,
+ KEY `frombranch` (`frombranch`),
+ KEY `tobranch` (`tobranch`),
+ KEY `itemnumber` (`itemnumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `catalogueentry`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `catalogueentry`;
+CREATE TABLE IF NOT EXISTS `catalogueentry` (
+ `catalogueentry` text NOT NULL,
+ `entrytype` varchar(2) default NULL,
+ `see` text,
+ `seealso` text,
+ `seeinstead` text,
+ `biblionumber` int(11) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `categories`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `categories`;
+CREATE TABLE IF NOT EXISTS `categories` (
+ `categorycode` varchar(10) NOT NULL default '',
+ `description` text,
+ `enrolmentperiod` smallint(6) default NULL,
+ `upperagelimit` smallint(6) default NULL,
+ `dateofbirthrequired` tinyint(1) default NULL,
+ `finetype` varchar(30) default NULL,
+ `bulk` tinyint(1) default NULL,
+ `enrolmentfee` decimal(28,6) default NULL,
+ `overduenoticerequired` tinyint(1) default NULL,
+ `issuelimit` smallint(6) default NULL,
+ `reservefee` decimal(28,6) default NULL,
+ `category_type` char(1) NOT NULL default 'A',
+ PRIMARY KEY (`categorycode`),
+ UNIQUE KEY `categorycode` (`categorycode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `categorytable`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `categorytable`;
+CREATE TABLE IF NOT EXISTS `categorytable` (
+ `categorycode` varchar(5) NOT NULL default '',
+ `description` text,
+ `itemtypecodes` text,
+ PRIMARY KEY (`categorycode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `charges`
+--
+-- Création: Vendredi 08 Décembre 2006 à 16:47
+--
+
+DROP TABLE IF EXISTS `charges`;
+CREATE TABLE IF NOT EXISTS `charges` (
+ `charge_id` varchar(5) NOT NULL default '',
+ `description` text NOT NULL,
+ `amount` decimal(28,6) NOT NULL default '0.000000',
+ `min` int(4) NOT NULL default '0',
+ `max` int(4) NOT NULL default '0',
+ `level` int(1) NOT NULL default '0',
+ PRIMARY KEY (`charge_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `cities`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `cities`;
+CREATE TABLE IF NOT EXISTS `cities` (
+ `cityid` int(11) NOT NULL auto_increment,
+ `city_name` char(100) NOT NULL default '',
+ `city_zipcode` char(20) default NULL,
+ PRIMARY KEY (`cityid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `currency`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `currency`;
+CREATE TABLE IF NOT EXISTS `currency` (
+ `currency` varchar(10) NOT NULL default '',
+ `rate` float(7,5) default NULL,
+ PRIMARY KEY (`currency`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `deletedbiblio`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `deletedbiblio`;
+CREATE TABLE IF NOT EXISTS `deletedbiblio` (
+ `biblionumber` int(11) NOT NULL default '0',
+ `author` text,
+ `title` text,
+ `unititle` text,
+ `notes` text,
+ `serial` tinyint(1) default NULL,
+ `seriestitle` text,
+ `copyrightdate` smallint(6) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `marc` blob,
+ `abstract` text,
+ `frameworkcode` varchar(4) default NULL,
+ PRIMARY KEY (`biblionumber`),
+ KEY `blbnoidx` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `deletedbiblioitems`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:40
+--
+
+DROP TABLE IF EXISTS `deletedbiblioitems`;
+CREATE TABLE IF NOT EXISTS `deletedbiblioitems` (
+ `biblioitemnumber` int(11) NOT NULL default '0',
+ `biblionumber` int(11) NOT NULL default '0',
+ `volume` text,
+ `number` text,
+ `classification` varchar(25) default NULL,
+ `itemtype` varchar(4) default NULL,
+ `isbn` varchar(14) default NULL,
+ `issn` varchar(9) default NULL,
+ `dewey` double(8,6) default NULL,
+ `subclass` varchar(3) default NULL,
+ `publicationyear` smallint(6) default NULL,
+ `publishercode` varchar(255) default NULL,
+ `volumedate` date default NULL,
+ `volumeddesc` varchar(255) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `illus` varchar(255) default NULL,
+ `pages` varchar(255) default NULL,
+ `notes` text,
+ `size` varchar(255) default NULL,
+ `lccn` varchar(25) default NULL,
+ `marc` text,
+ `url` varchar(255) default NULL,
+ `place` varchar(255) default NULL,
+ `marcxml` text,
+ `lcsort` varchar(25) default NULL,
+ `ccode` varchar(4) default NULL,
+ PRIMARY KEY (`biblioitemnumber`),
+ KEY `bibinoidx` (`biblioitemnumber`),
+ KEY `bibnoidx` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `deletedborrowers`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `deletedborrowers`;
+CREATE TABLE IF NOT EXISTS `deletedborrowers` (
+ `borrowernumber` int(11) NOT NULL default '0',
+ `cardnumber` varchar(9) NOT NULL default '',
+ `surname` text NOT NULL,
+ `firstname` text,
+ `title` text,
+ `othernames` text,
+ `initials` text,
+ `streetnumber` varchar(10) default NULL,
+ `streettype` varchar(50) default NULL,
+ `address` text NOT NULL,
+ `address2` text,
+ `city` text NOT NULL,
+ `zipcode` varchar(25) default NULL,
+ `email` text,
+ `phone` text,
+ `mobile` varchar(50) default NULL,
+ `fax` text,
+ `B_streetnumber` varchar(10) default NULL,
+ `B_streettype` varchar(50) default NULL,
+ `emailpro` text,
+ `phonepro` text,
+ `B_address` varchar(100) default NULL,
+ `B_city` text,
+ `B_zipcode` varchar(25) default NULL,
+ `B_email` text,
+ `B_phone` text,
+ `dateofbirth` date default NULL,
+ `branchcode` varchar(4) NOT NULL default '',
+ `categorycode` varchar(2) default NULL,
+ `dateenrolled` date default NULL,
+ `dateexpiry` date default NULL,
+ `gonenoaddress` tinyint(1) default NULL,
+ `lost` tinyint(1) default NULL,
+ `debarred` tinyint(1) default NULL,
+ `contactname` text,
+ `contactfirstname` text,
+ `contacttitle` text,
+ `guarantorid` int(11) default NULL,
+ `borrowernotes` text,
+ `relationship` varchar(100) default NULL,
+ `ethnicity` varchar(50) default NULL,
+ `ethnotes` varchar(255) default NULL,
+ `sex` char(1) default NULL,
+ `password` varchar(30) default NULL,
+ `flags` int(11) default NULL,
+ `userid` varchar(30) default NULL,
+ `opacnote` text,
+ `contactnote` varchar(255) default NULL,
+ `sort1` varchar(80) default NULL,
+ `sort2` varchar(80) default NULL,
+ `textmessaging` varchar(30) default NULL,
+ `homezipcode` varchar(25) default NULL,
+ KEY `borrowernumber` (`borrowernumber`),
+ KEY `cardnumber` (`cardnumber`),
+ KEY `categorycode` (`categorycode`),
+ KEY `branchcode` (`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `deleteditems`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:40
+--
+
+DROP TABLE IF EXISTS `deleteditems`;
+CREATE TABLE IF NOT EXISTS `deleteditems` (
+ `itemnumber` int(11) NOT NULL default '0',
+ `biblionumber` int(11) NOT NULL default '0',
+ `multivolumepart` varchar(30) default NULL,
+ `biblioitemnumber` int(11) NOT NULL default '0',
+ `barcode` varchar(9) NOT NULL default '',
+ `dateaccessioned` date default NULL,
+ `booksellerid` varchar(10) default NULL,
+ `homebranch` varchar(4) default NULL,
+ `price` decimal(28,6) default NULL,
+ `replacementprice` decimal(28,6) default NULL,
+ `replacementpricedate` date default NULL,
+ `datelastborrowed` date default NULL,
+ `datelastseen` date default NULL,
+ `multivolume` tinyint(1) default NULL,
+ `stack` tinyint(1) default NULL,
+ `notforloan` tinyint(1) default NULL,
+ `itemlost` tinyint(1) default NULL,
+ `wthdrawn` tinyint(1) default NULL,
+ `bulk` varchar(30) default NULL,
+ `issues` smallint(6) default NULL,
+ `renewals` smallint(6) default NULL,
+ `reserves` smallint(6) default NULL,
+ `restricted` tinyint(1) default NULL,
+ `binding` decimal(28,6) default NULL,
+ `itemnotes` text,
+ `holdingbranch` varchar(4) default NULL,
+ `interim` tinyint(1) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `marc` blob,
+ `paidfor` text,
+ `location` varchar(80) default NULL,
+ `itemcallnumber` varchar(30) default NULL,
+ `onloan` date default NULL,
+ `Cutterextra` varchar(45) default NULL,
+ `issue_date` date default '0000-00-00',
+ `itype` varchar(10) default NULL,
+ PRIMARY KEY (`itemnumber`),
+ UNIQUE KEY `barcode` (`barcode`),
+ KEY `itembarcodeidx` (`barcode`),
+ KEY `itembinoidx` (`biblioitemnumber`),
+ KEY `itembibnoidx` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `ethnicity`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `ethnicity`;
+CREATE TABLE IF NOT EXISTS `ethnicity` (
+ `code` varchar(10) NOT NULL default '',
+ `name` varchar(255) default NULL,
+ PRIMARY KEY (`code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `issues`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `issues`;
+CREATE TABLE IF NOT EXISTS `issues` (
+ `borrowernumber` int(11) default '0',
+ `itemnumber` int(11) default '0',
+ `date_due` date default NULL,
+ `branchcode` varchar(10) default '',
+ `issuingbranch` varchar(18) default NULL,
+ `issuedate` date NOT NULL default '0000-00-00',
+ `returndate` date default NULL,
+ `lastreneweddate` date default NULL,
+ `return` varchar(4) default NULL,
+ `renewals` tinyint(4) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ KEY `issuesborridx` (`borrowernumber`),
+ KEY `issuesitemidx` (`itemnumber`),
+ KEY `bordate` (`borrowernumber`,`timestamp`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `issuingrules`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:41
+--
+
+DROP TABLE IF EXISTS `issuingrules`;
+CREATE TABLE IF NOT EXISTS `issuingrules` (
+ `categorycode` varchar(2) NOT NULL default '',
+ `itemtype` varchar(4) NOT NULL default '',
+ `restrictedtype` tinyint(1) default NULL,
+ `rentaldiscount` decimal(28,6) default NULL,
+ `reservecharge` decimal(28,6) default NULL,
+ `fine` decimal(28,6) default NULL,
+ `firstremind` int(11) default NULL,
+ `chargeperiod` int(11) default NULL,
+ `accountsent` int(11) default NULL,
+ `chargename` varchar(100) default NULL,
+ `maxissueqty` int(4) default NULL,
+ `issuelength` int(4) default NULL,
+ `branchcode` varchar(4) NOT NULL default '',
+ PRIMARY KEY (`branchcode`,`categorycode`,`itemtype`),
+ KEY `categorycode` (`categorycode`),
+ KEY `itemtype` (`itemtype`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `items`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `items`;
+CREATE TABLE IF NOT EXISTS `items` (
+ `itemnumber` int(11) NOT NULL default '0',
+ `biblionumber` int(11) NOT NULL default '0',
+ `multivolumepart` varchar(30) default NULL,
+ `biblioitemnumber` int(11) NOT NULL default '0',
+ `barcode` varchar(20) default NULL,
+ `dateaccessioned` date default NULL,
+ `booksellerid` varchar(10) default NULL,
+ `homebranch` varchar(4) default NULL,
+ `price` decimal(8,2) default NULL,
+ `replacementprice` decimal(8,2) default NULL,
+ `replacementpricedate` date default NULL,
+ `datelastborrowed` date default NULL,
+ `datelastseen` date default NULL,
+ `multivolume` tinyint(1) default NULL,
+ `stack` tinyint(1) default NULL,
+ `notforloan` tinyint(1) default '0',
+ `itemlost` tinyint(1) default NULL,
+ `wthdrawn` tinyint(1) default NULL,
+ `itemcallnumber` varchar(30) default NULL,
+ `issues` smallint(6) default NULL,
+ `renewals` smallint(6) default NULL,
+ `reserves` smallint(6) default NULL,
+ `restricted` tinyint(1) default NULL,
+ `binding` decimal(28,6) default NULL,
+ `itemnotes` text,
+ `holdingbranch` varchar(10) default '',
+ `paidfor` text,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `location` varchar(80) default NULL,
+ `onloan` date default NULL,
+ `Cutterextra` varchar(45) default NULL,
+ `issue_date` date default '0000-00-00',
+ `itype` varchar(10) default '',
+ PRIMARY KEY (`itemnumber`),
+ KEY `itembarcodeidx` (`barcode`),
+ KEY `itembinoidx` (`biblioitemnumber`),
+ KEY `itembibnoidx` (`biblionumber`),
+ KEY `homebranch` (`homebranch`),
+ KEY `holdingbranch` (`holdingbranch`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `itemsprices`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `itemsprices`;
+CREATE TABLE IF NOT EXISTS `itemsprices` (
+ `itemnumber` int(11) default NULL,
+ `price1` decimal(28,6) default NULL,
+ `price2` decimal(28,6) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `itemtypes`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `itemtypes`;
+CREATE TABLE IF NOT EXISTS `itemtypes` (
+ `itemtype` varchar(10) NOT NULL default '',
+ `description` text,
+ `renewalsallowed` smallint(6) default NULL,
+ `rentalcharge` double(16,4) default NULL,
+ `notforloan` smallint(6) default '0',
+ `imageurl` varchar(200) default NULL,
+ `summary` text,
+ PRIMARY KEY (`itemtype`),
+ UNIQUE KEY `itemtype` (`itemtype`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `labels`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `labels`;
+CREATE TABLE IF NOT EXISTS `labels` (
+ `labelid` int(11) NOT NULL auto_increment,
+ `itemnumber` varchar(100) NOT NULL default '',
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ PRIMARY KEY (`labelid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `labels_conf`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `labels_conf`;
+CREATE TABLE IF NOT EXISTS `labels_conf` (
+ `id` int(4) NOT NULL auto_increment,
+ `barcodetype` char(100) default '',
+ `title` tinyint(1) default '0',
+ `isbn` tinyint(1) default '0',
+ `itemtype` tinyint(1) default '0',
+ `barcode` tinyint(1) default '0',
+ `dewey` tinyint(1) default '0',
+ `class` tinyint(1) default '0',
+ `author` tinyint(1) default '0',
+ `papertype` char(100) default '',
+ `startrow` int(2) default NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `letter`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `letter`;
+CREATE TABLE IF NOT EXISTS `letter` (
+ `module` varchar(20) NOT NULL default '',
+ `code` varchar(20) NOT NULL default '',
+ `name` varchar(100) NOT NULL default '',
+ `title` varchar(200) NOT NULL default '',
+ `content` text,
+ PRIMARY KEY (`module`,`code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_biblio`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `marc_biblio`;
+CREATE TABLE IF NOT EXISTS `marc_biblio` (
+ `bibid` bigint(20) unsigned NOT NULL auto_increment,
+ `biblionumber` int(11) NOT NULL default '0',
+ `datecreated` date NOT NULL default '0000-00-00',
+ `datemodified` date default NULL,
+ `origincode` char(20) default NULL,
+ `frameworkcode` char(4) NOT NULL default '',
+ PRIMARY KEY (`bibid`),
+ KEY `origincode` (`origincode`),
+ KEY `biblionumber` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_blob_subfield`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:57
+--
+
+DROP TABLE IF EXISTS `marc_blob_subfield`;
+CREATE TABLE IF NOT EXISTS `marc_blob_subfield` (
+ `blobidlink` bigint(20) NOT NULL auto_increment,
+ `subfieldvalue` longtext NOT NULL,
+ PRIMARY KEY (`blobidlink`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_breeding`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:58
+--
+
+DROP TABLE IF EXISTS `marc_breeding`;
+CREATE TABLE IF NOT EXISTS `marc_breeding` (
+ `id` bigint(20) NOT NULL auto_increment,
+ `file` varchar(80) NOT NULL default '',
+ `isbn` varchar(10) NOT NULL default '',
+ `title` varchar(128) default NULL,
+ `author` varchar(80) default NULL,
+ `marc` text NOT NULL,
+ `encoding` varchar(40) NOT NULL default '',
+ `z3950random` varchar(40) default NULL,
+ PRIMARY KEY (`id`),
+ KEY `title` (`title`),
+ KEY `isbn` (`isbn`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_subfield_structure`
+--
+-- Création: Lundi 27 Novembre 2006 à 17:58
+--
+
+DROP TABLE IF EXISTS `marc_subfield_structure`;
+CREATE TABLE IF NOT EXISTS `marc_subfield_structure` (
+ `tagfield` varchar(3) NOT NULL default '',
+ `tagsubfield` char(1) NOT NULL default '',
+ `liblibrarian` varchar(255) NOT NULL default '',
+ `libopac` varchar(255) NOT NULL default '',
+ `repeatable` tinyint(4) NOT NULL default '0',
+ `mandatory` tinyint(4) NOT NULL default '0',
+ `kohafield` varchar(40) default NULL,
+ `tab` tinyint(1) default NULL,
+ `authorised_value` varchar(10) default NULL,
+ `authtypecode` varchar(10) default NULL,
+ `value_builder` varchar(80) default NULL,
+ `isurl` tinyint(1) default NULL,
+ `hidden` tinyint(1) default NULL,
+ `frameworkcode` varchar(4) NOT NULL default '',
+ `seealso` varchar(255) default NULL,
+ `link` varchar(80) default NULL,
+ PRIMARY KEY (`frameworkcode`,`tagfield`,`tagsubfield`),
+ KEY `tab` (`frameworkcode`,`tab`),
+ KEY `kohafield` (`frameworkcode`,`kohafield`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_subfield_table`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:11
+--
+
+DROP TABLE IF EXISTS `marc_subfield_table`;
+CREATE TABLE IF NOT EXISTS `marc_subfield_table` (
+ `subfieldid` bigint(20) unsigned NOT NULL auto_increment,
+ `bibid` bigint(20) unsigned NOT NULL default '0',
+ `tag` varchar(3) NOT NULL default '',
+ `tagorder` int(11) NOT NULL default '1',
+ `tag_indicator` varchar(2) NOT NULL default '',
+ `subfieldcode` char(1) NOT NULL default '',
+ `subfieldorder` tinyint(4) NOT NULL default '1',
+ `subfieldvalue` varchar(255) default NULL,
+ `valuebloblink` bigint(20) default NULL,
+ PRIMARY KEY (`subfieldid`),
+ KEY `bibid` (`bibid`),
+ KEY `tag` (`tag`),
+ KEY `tag_indicator` (`tag_indicator`),
+ KEY `subfieldorder` (`subfieldorder`),
+ KEY `subfieldcode` (`subfieldcode`),
+ KEY `subfieldvalue` (`subfieldvalue`),
+ KEY `tagorder` (`tagorder`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_tag_structure`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:11
+--
+
+DROP TABLE IF EXISTS `marc_tag_structure`;
+CREATE TABLE IF NOT EXISTS `marc_tag_structure` (
+ `tagfield` char(3) NOT NULL default '',
+ `liblibrarian` char(255) NOT NULL default '',
+ `libopac` char(255) NOT NULL default '',
+ `repeatable` tinyint(4) NOT NULL default '0',
+ `mandatory` tinyint(4) NOT NULL default '0',
+ `authorised_value` char(10) default NULL,
+ `frameworkcode` char(4) NOT NULL default '',
+ PRIMARY KEY (`frameworkcode`,`tagfield`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marc_word`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `marc_word`;
+CREATE TABLE IF NOT EXISTS `marc_word` (
+ `bibid` bigint(20) NOT NULL default '0',
+ `tagsubfield` varchar(4) NOT NULL default '',
+ `tagorder` tinyint(4) NOT NULL default '1',
+ `subfieldorder` tinyint(4) NOT NULL default '1',
+ `word` varchar(255) NOT NULL default '',
+ `sndx_word` varchar(255) NOT NULL default '',
+ KEY `bibid` (`bibid`),
+ KEY `tagorder` (`tagorder`),
+ KEY `subfieldorder` (`subfieldorder`),
+ KEY `word` (`word`),
+ KEY `sndx_word` (`sndx_word`),
+ KEY `Search_Marc` (`tagsubfield`,`word`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `marcrecorddone`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `marcrecorddone`;
+CREATE TABLE IF NOT EXISTS `marcrecorddone` (
+ `isbn` char(40) default NULL,
+ `issn` char(40) default NULL,
+ `lccn` char(40) default NULL,
+ `controlnumber` char(40) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `mediatypetable`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `mediatypetable`;
+CREATE TABLE IF NOT EXISTS `mediatypetable` (
+ `mediatypecode` varchar(5) NOT NULL default '',
+ `description` text,
+ `itemtypecodes` text,
+ PRIMARY KEY (`mediatypecode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `notifys`
+--
+-- Création: Vendredi 08 Décembre 2006 à 16:47
+--
+
+DROP TABLE IF EXISTS `notifys`;
+CREATE TABLE IF NOT EXISTS `notifys` (
+ `notify_id` int(11) NOT NULL default '0',
+ `borrowernumber` int(11) NOT NULL default '0',
+ `itemnumber` int(11) NOT NULL default '0',
+ `notify_date` date NOT NULL default '0000-00-00',
+ `notify_send_date` date default NULL,
+ `notify_level` int(1) NOT NULL default '0',
+ `method` varchar(20) NOT NULL default ''
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `opac_news`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `opac_news`;
+CREATE TABLE IF NOT EXISTS `opac_news` (
+ `idnew` int(10) unsigned NOT NULL auto_increment,
+ `title` varchar(250) NOT NULL default '',
+ `new` text NOT NULL,
+ `lang` varchar(4) NOT NULL default '',
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP,
+ `expirationdate` date default NULL,
+ `number` int(11) default '0',
+ PRIMARY KEY (`idnew`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `overduerules`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `overduerules`;
+CREATE TABLE IF NOT EXISTS `overduerules` (
+ `branchcode` varchar(255) NOT NULL default '',
+ `categorycode` varchar(2) NOT NULL default '',
+ `delay1` int(4) default '0',
+ `letter1` varchar(20) default NULL,
+ `debarred1` char(1) default '0',
+ `delay2` int(4) default '0',
+ `debarred2` char(1) default '0',
+ `letter2` varchar(20) default NULL,
+ `delay3` int(4) default '0',
+ `letter3` varchar(20) default NULL,
+ `debarred3` int(1) default '0',
+ PRIMARY KEY (`branchcode`,`categorycode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `phrase_log`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `phrase_log`;
+CREATE TABLE IF NOT EXISTS `phrase_log` (
+ `phr_phrase` varchar(100) NOT NULL default '',
+ `phr_resultcount` int(11) NOT NULL default '0',
+ `phr_ip` varchar(30) NOT NULL default '',
+ `user` varchar(45) default NULL,
+ `date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `actual` text NOT NULL,
+ KEY `phr_ip` (`phr_ip`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `printers`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `printers`;
+CREATE TABLE IF NOT EXISTS `printers` (
+ `printername` char(40) NOT NULL default '''''',
+ `printqueue` char(20) default NULL,
+ `printtype` char(20) default NULL,
+ PRIMARY KEY (`printername`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `repeatable_holidays`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `repeatable_holidays`;
+CREATE TABLE IF NOT EXISTS `repeatable_holidays` (
+ `id` int(11) NOT NULL auto_increment,
+ `branchcode` varchar(4) NOT NULL default '',
+ `weekday` smallint(6) default NULL,
+ `day` smallint(6) default NULL,
+ `month` smallint(6) default NULL,
+ `title` varchar(50) NOT NULL default '',
+ `description` text NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `reserveconstraints`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `reserveconstraints`;
+CREATE TABLE IF NOT EXISTS `reserveconstraints` (
+ `borrowernumber` int(11) NOT NULL default '0',
+ `reservedate` date NOT NULL default '0000-00-00',
+ `biblionumber` int(11) NOT NULL default '0',
+ `biblioitemnumber` int(11) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `reserves`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:41
+--
+
+DROP TABLE IF EXISTS `reserves`;
+CREATE TABLE IF NOT EXISTS `reserves` (
+ `borrowernumber` int(11) NOT NULL default '0',
+ `reservedate` date NOT NULL default '0000-00-00',
+ `biblionumber` int(11) NOT NULL default '0',
+ `constrainttype` char(1) default NULL,
+ `branchcode` varchar(4) default NULL,
+ `notificationdate` date default NULL,
+ `reminderdate` date default NULL,
+ `cancellationdate` date default NULL,
+ `reservenotes` text,
+ `priority` smallint(6) default NULL,
+ `found` char(1) default NULL,
+ `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `itemnumber` int(11) default NULL,
+ `waitingdate` date default '0000-00-00',
+ KEY `borrowernumber` (`borrowernumber`),
+ KEY `biblionumber` (`biblionumber`),
+ KEY `itemnumber` (`itemnumber`),
+ KEY `branchcode` (`branchcode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `reviews`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `reviews`;
+CREATE TABLE IF NOT EXISTS `reviews` (
+ `reviewid` int(11) NOT NULL auto_increment,
+ `borrowernumber` int(11) default NULL,
+ `biblionumber` int(11) default NULL,
+ `review` text,
+ `approved` tinyint(4) default NULL,
+ `datereviewed` datetime default NULL,
+ PRIMARY KEY (`reviewid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `roadtype`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `roadtype`;
+CREATE TABLE IF NOT EXISTS `roadtype` (
+ `roadtypeid` int(11) NOT NULL auto_increment,
+ `road_type` char(100) NOT NULL default '',
+ PRIMARY KEY (`roadtypeid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `serial`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `serial`;
+CREATE TABLE IF NOT EXISTS `serial` (
+ `serialid` int(11) NOT NULL auto_increment,
+ `biblionumber` varchar(100) NOT NULL default '',
+ `subscriptionid` varchar(100) NOT NULL default '',
+ `serialseq` varchar(100) NOT NULL default '',
+ `status` tinyint(4) NOT NULL default '0',
+ `planneddate` date NOT NULL default '0000-00-00',
+ `notes` text,
+ `itemnumber` text,
+ `routingnotes` text,
+ `publisheddate` date default NULL,
+ `claimdate` date default '0000-00-00',
+ PRIMARY KEY (`serialid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `sessionqueries`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `sessionqueries`;
+CREATE TABLE IF NOT EXISTS `sessionqueries` (
+ `sessionID` varchar(255) NOT NULL default '',
+ `userid` varchar(100) NOT NULL default '',
+ `ip` varchar(18) NOT NULL default '',
+ `url` text NOT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `sessions`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `sessions`;
+CREATE TABLE IF NOT EXISTS `sessions` (
+ `sessionID` varchar(255) NOT NULL default '',
+ `userid` varchar(255) default NULL,
+ `ip` varchar(16) default NULL,
+ `lasttime` int(11) default NULL,
+ PRIMARY KEY (`sessionID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `shelfcontents`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:41
+--
+
+DROP TABLE IF EXISTS `shelfcontents`;
+CREATE TABLE IF NOT EXISTS `shelfcontents` (
+ `shelfnumber` int(11) NOT NULL default '0',
+ `itemnumber` int(11) NOT NULL default '0',
+ `flags` int(11) default NULL,
+ `dateadded` timestamp NULL default NULL,
+ KEY `shelfnumber` (`shelfnumber`),
+ KEY `itemnumber` (`itemnumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `special_holidays`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `special_holidays`;
+CREATE TABLE IF NOT EXISTS `special_holidays` (
+ `id` int(11) NOT NULL auto_increment,
+ `branchcode` varchar(4) NOT NULL default '',
+ `day` smallint(6) NOT NULL default '0',
+ `month` smallint(6) NOT NULL default '0',
+ `year` smallint(6) NOT NULL default '0',
+ `isexception` smallint(1) NOT NULL default '1',
+ `title` varchar(50) NOT NULL default '',
+ `description` text NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `statistics`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `statistics`;
+CREATE TABLE IF NOT EXISTS `statistics` (
+ `datetime` datetime NOT NULL default '0000-00-00 00:00:00',
+ `branch` varchar(4) default NULL,
+ `proccode` varchar(4) default NULL,
+ `value` double(16,4) default NULL,
+ `type` varchar(16) default NULL,
+ `other` text,
+ `usercode` varchar(10) default NULL,
+ `itemnumber` int(11) default NULL,
+ `itemtype` varchar(4) default NULL,
+ `borrowernumber` int(11) default NULL,
+ `associatedborrower` int(11) default NULL,
+ KEY `timeidx` (`datetime`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `stopwords`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `stopwords`;
+CREATE TABLE IF NOT EXISTS `stopwords` (
+ `word` varchar(255) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `subcategorytable`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `subcategorytable`;
+CREATE TABLE IF NOT EXISTS `subcategorytable` (
+ `subcategorycode` varchar(5) NOT NULL default '',
+ `description` text,
+ `itemtypecodes` text,
+ PRIMARY KEY (`subcategorycode`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `subscription`
+--
+-- Création: Vendredi 26 Janvier 2007 à 12:44
+--
+
+DROP TABLE IF EXISTS `subscription`;
+CREATE TABLE IF NOT EXISTS `subscription` (
+ `biblionumber` int(11) NOT NULL default '0',
+ `manualhistory` tinyint(1) NOT NULL default '0',
+ `subscriptionid` int(11) NOT NULL auto_increment,
+ `librarian` varchar(100) default '',
+ `startdate` date default '0000-00-00',
+ `aqbooksellerid` int(11) default '0',
+ `cost` int(11) default '0',
+ `aqbudgetid` int(11) default '0',
+ `weeklength` tinyint(4) default '0',
+ `monthlength` tinyint(4) default '0',
+ `numberlength` tinyint(4) default '0',
+ `periodicity` tinyint(4) default '0',
+ `dow` varchar(100) default '',
+ `numberingmethod` varchar(100) default '',
+ `notes` text,
+ `status` varchar(100) NOT NULL default '',
+ `add1` int(11) default '0',
+ `every1` int(11) default '0',
+ `whenmorethan1` int(11) default '0',
+ `setto1` int(11) default NULL,
+ `lastvalue1` int(11) default NULL,
+ `add2` int(11) default '0',
+ `every2` int(11) default '0',
+ `whenmorethan2` int(11) default '0',
+ `setto2` int(11) default NULL,
+ `lastvalue2` int(11) default NULL,
+ `add3` int(11) default '0',
+ `every3` int(11) default '0',
+ `innerloop1` int(11) default '0',
+ `innerloop2` int(11) default '0',
+ `innerloop3` int(11) default '0',
+ `whenmorethan3` int(11) default '0',
+ `setto3` int(11) default NULL,
+ `lastvalue3` int(11) default NULL,
+ `issuesatonce` tinyint(3) NOT NULL default '1',
+ `firstacquidate` date NOT NULL default '0000-00-00',
+ `irregularity` text,
+ `letter` varchar(20) default NULL,
+ `numberpattern` tinyint(3) default '0',
+ `distributedto` text,
+ `callnumber` text,
+ `hemisphere` tinyint(3) default '0',
+ `branchcode` varchar(12) NOT NULL default '''''',
+ `internalnotes` longtext,
+ PRIMARY KEY (`subscriptionid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `subscriptionhistory`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `subscriptionhistory`;
+CREATE TABLE IF NOT EXISTS `subscriptionhistory` (
+ `biblionumber` int(11) NOT NULL default '0',
+ `subscriptionid` int(11) NOT NULL default '0',
+ `histstartdate` date NOT NULL default '0000-00-00',
+ `enddate` date default '0000-00-00',
+ `missinglist` longtext NOT NULL,
+ `recievedlist` longtext NOT NULL,
+ `opacnote` varchar(150) NOT NULL default '',
+ `librariannote` varchar(150) NOT NULL default '',
+ PRIMARY KEY (`subscriptionid`),
+ KEY `biblionumber` (`biblionumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `subscriptionroutinglist`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `subscriptionroutinglist`;
+CREATE TABLE IF NOT EXISTS `subscriptionroutinglist` (
+ `routingid` int(11) NOT NULL auto_increment,
+ `borrowernumber` int(11) default NULL,
+ `ranking` int(11) default NULL,
+ `subscriptionid` int(11) default NULL,
+ PRIMARY KEY (`routingid`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `suggestions`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:40
+--
+
+DROP TABLE IF EXISTS `suggestions`;
+CREATE TABLE IF NOT EXISTS `suggestions` (
+ `suggestionid` int(8) NOT NULL auto_increment,
+ `suggestedby` int(11) NOT NULL default '0',
+ `managedby` int(11) default NULL,
+ `STATUS` varchar(10) NOT NULL default '',
+ `note` text,
+ `author` varchar(80) default NULL,
+ `title` varchar(80) default NULL,
+ `copyrightdate` smallint(6) default NULL,
+ `publishercode` varchar(255) default NULL,
+ `date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+ `volumedesc` varchar(255) default NULL,
+ `publicationyear` smallint(6) default '0',
+ `place` varchar(255) default NULL,
+ `isbn` varchar(10) default NULL,
+ `mailoverseeing` smallint(1) default '0',
+ `biblionumber` int(11) default NULL,
+ `reason` text,
+ PRIMARY KEY (`suggestionid`),
+ KEY `suggestedby` (`suggestedby`),
+ KEY `managedby` (`managedby`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `systempreferences`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:40
+--
+
+DROP TABLE IF EXISTS `systempreferences`;
+CREATE TABLE IF NOT EXISTS `systempreferences` (
+ `variable` varchar(50) NOT NULL default '',
+ `value` text,
+ `options` text,
+ `explanation` text,
+ `type` varchar(20) default NULL,
+ PRIMARY KEY (`variable`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `tags`
+--
+-- Création: Mardi 06 Février 2007 à 11:14
+--
+
+DROP TABLE IF EXISTS `tags`;
+CREATE TABLE IF NOT EXISTS `tags` (
+ `entry` varchar(255) NOT NULL default '',
+ `weight` bigint(20) NOT NULL default '0',
+ PRIMARY KEY (`entry`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `uploadedmarc`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `uploadedmarc`;
+CREATE TABLE IF NOT EXISTS `uploadedmarc` (
+ `id` int(11) NOT NULL auto_increment,
+ `marc` longblob,
+ `hidden` smallint(6) default NULL,
+ `name` varchar(255) default NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `userflags`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `userflags`;
+CREATE TABLE IF NOT EXISTS `userflags` (
+ `bit` int(11) NOT NULL default '0',
+ `flag` char(30) default NULL,
+ `flagdesc` char(255) default NULL,
+ `defaulton` int(11) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `users`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `users`;
+CREATE TABLE IF NOT EXISTS `users` (
+ `usercode` varchar(10) default NULL,
+ `username` text,
+ `password` text,
+ `level` smallint(6) default NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `websites`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `websites`;
+CREATE TABLE IF NOT EXISTS `websites` (
+ `websitenumber` int(11) NOT NULL auto_increment,
+ `biblionumber` int(11) NOT NULL default '0',
+ `title` text,
+ `description` text,
+ `url` varchar(255) default NULL,
+ PRIMARY KEY (`websitenumber`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `z3950queue`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `z3950queue`;
+CREATE TABLE IF NOT EXISTS `z3950queue` (
+ `id` int(11) NOT NULL auto_increment,
+ `term` text,
+ `type` varchar(10) default NULL,
+ `startdate` int(11) default NULL,
+ `enddate` int(11) default NULL,
+ `done` smallint(6) default NULL,
+ `results` longblob,
+ `numrecords` int(11) default NULL,
+ `servers` text,
+ `identifier` varchar(30) default NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `z3950results`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `z3950results`;
+CREATE TABLE IF NOT EXISTS `z3950results` (
+ `id` int(11) NOT NULL auto_increment,
+ `queryid` int(11) default NULL,
+ `server` varchar(255) default NULL,
+ `startdate` int(11) default NULL,
+ `enddate` int(11) default NULL,
+ `results` longblob,
+ `numrecords` int(11) default NULL,
+ `numdownloaded` int(11) default NULL,
+ `highestseen` int(11) default NULL,
+ `active` smallint(6) default NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `query_server` (`queryid`,`server`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `z3950servers`
+--
+-- Création: Lundi 27 Novembre 2006 à 18:39
+--
+
+DROP TABLE IF EXISTS `z3950servers`;
+CREATE TABLE IF NOT EXISTS `z3950servers` (
+ `host` varchar(255) default NULL,
+ `port` int(11) default NULL,
+ `db` varchar(255) default NULL,
+ `userid` varchar(255) default NULL,
+ `password` varchar(255) default NULL,
+ `name` text,
+ `description` text NOT NULL,
+ `id` int(11) NOT NULL auto_increment,
+ `checked` smallint(6) default NULL,
+ `rank` int(11) default NULL,
+ `syntax` varchar(80) default NULL,
+ `position` enum('primary','secondary','') NOT NULL default 'primary',
+ `icon` text,
+ `type` enum('zed','opensearch') NOT NULL default 'zed',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Structure de la table `zebraqueue`
+--
+-- Création: Mardi 16 Janvier 2007 à 14:19
+--
+
+DROP TABLE IF EXISTS `zebraqueue`;
+CREATE TABLE IF NOT EXISTS `zebraqueue` (
+ `id` int(11) NOT NULL auto_increment,
+ `biblio_auth_number` int(11) NOT NULL default '0',
+ `operation` char(20) NOT NULL default '',
+ `server` char(20) NOT NULL default '',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+--
+-- Contraintes pour les tables exportées
+--
+
+--
+-- Contraintes pour la table `accountlines`
+--
+ALTER TABLE `accountlines`
+ ADD CONSTRAINT `accountlines_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `accountlines`
+ ADD CONSTRAINT `accountlines_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE SET NULL ON UPDATE SET NULL;
+
+--
+-- Contraintes pour la table `aqbasket`
+--
+ALTER TABLE `aqbasket`
+ ADD CONSTRAINT `aqbasket_ibfk_1` FOREIGN KEY (`booksellerid`) REFERENCES `aqbooksellers` (`id`) ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `aqbooksellers`
+--
+ALTER TABLE `aqbooksellers`
+ ADD CONSTRAINT `aqbooksellers_ibfk_1` FOREIGN KEY (`listprice`) REFERENCES `currency` (`currency`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `aqbooksellers`
+ ADD CONSTRAINT `aqbooksellers_ibfk_2` FOREIGN KEY (`invoiceprice`) REFERENCES `currency` (`currency`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `aqorderbreakdown`
+--
+ALTER TABLE `aqorderbreakdown`
+ ADD CONSTRAINT `aqorderbreakdown_ibfk_1` FOREIGN KEY (`ordernumber`) REFERENCES `aqorders` (`ordernumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `aqorderbreakdown`
+ ADD CONSTRAINT `aqorderbreakdown_ibfk_2` FOREIGN KEY (`bookfundid`) REFERENCES `aqbookfund` (`bookfundid`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `aqorders`
+--
+ALTER TABLE `aqorders`
+ ADD CONSTRAINT `aqorders_ibfk_1` FOREIGN KEY (`basketno`) REFERENCES `aqbasket` (`basketno`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `aqorders`
+ ADD CONSTRAINT `aqorders_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE SET NULL ON UPDATE SET NULL;
+
+--
+-- Contraintes pour la table `auth_tag_structure`
+--
+ALTER TABLE `auth_tag_structure`
+ ADD CONSTRAINT `auth_tag_structure_ibfk_1` FOREIGN KEY (`authtypecode`) REFERENCES `auth_types` (`authtypecode`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `biblioitems`
+--
+ALTER TABLE `biblioitems`
+ ADD CONSTRAINT `biblioitems_ibfk_1` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `borrowers`
+--
+ALTER TABLE `borrowers`
+ ADD CONSTRAINT `borrowers_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`);
+ALTER TABLE `borrowers`
+ ADD CONSTRAINT `borrowers_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`);
+
+--
+-- Contraintes pour la table `branchtransfers`
+--
+ALTER TABLE `branchtransfers`
+ ADD CONSTRAINT `branchtransfers_ibfk_1` FOREIGN KEY (`frombranch`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `branchtransfers`
+ ADD CONSTRAINT `branchtransfers_ibfk_2` FOREIGN KEY (`tobranch`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `branchtransfers`
+ ADD CONSTRAINT `branchtransfers_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `issues`
+--
+ALTER TABLE `issues`
+ ADD CONSTRAINT `issues_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE SET NULL ON UPDATE SET NULL;
+ALTER TABLE `issues`
+ ADD CONSTRAINT `issues_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE SET NULL ON UPDATE SET NULL;
+
+--
+-- Contraintes pour la table `issuingrules`
+--
+ALTER TABLE `issuingrules`
+ ADD CONSTRAINT `issuingrules_ibfk_1` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `issuingrules`
+ ADD CONSTRAINT `issuingrules_ibfk_2` FOREIGN KEY (`itemtype`) REFERENCES `itemtypes` (`itemtype`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `items`
+--
+ALTER TABLE `items`
+ ADD CONSTRAINT `items_ibfk_1` FOREIGN KEY (`biblioitemnumber`) REFERENCES `biblioitems` (`biblioitemnumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `items`
+ ADD CONSTRAINT `items_ibfk_2` FOREIGN KEY (`holdingbranch`) REFERENCES `branches` (`branchcode`) ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `reserves`
+--
+ALTER TABLE `reserves`
+ ADD CONSTRAINT `reserves_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `reserves`
+ ADD CONSTRAINT `reserves_ibfk_2` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `reserves`
+ ADD CONSTRAINT `reserves_ibfk_3` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `reserves`
+ ADD CONSTRAINT `reserves_ibfk_4` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE;
+
+--
+-- Contraintes pour la table `shelfcontents`
+--
+ALTER TABLE `shelfcontents`
+ ADD CONSTRAINT `shelfcontents_ibfk_1` FOREIGN KEY (`shelfnumber`) REFERENCES `bookshelf` (`shelfnumber`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `shelfcontents`
+ ADD CONSTRAINT `shelfcontents_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE CASCADE ON UPDATE CASCADE;
More information about the Koha-cvs
mailing list