From f44a26ed7afdbd3cbdbc842249b662744a03c28b Mon Sep 17 00:00:00 2001
From: bastien <bastien.doreau@isima.fr>
Date: Fri, 17 Mar 2023 21:41:13 +0100
Subject: [PATCH] update 2023 begin

---
 hal/__init__.pyc                   | Bin 138 -> 0 bytes
 hal/admin.pyc                      | Bin 356 -> 0 bytes
 hal/countries.csv                  | 340 ++++++++++++++---------------
 hal/dict_countries.py              | 172 +++++++++++++++
 hal/forms.pyc                      | Bin 2827 -> 0 bytes
 hal/migrations/0001_initial.pyc    | Bin 1340 -> 0 bytes
 hal/migrations/Document sans nom   |   0
 hal/models.py                      |   4 +-
 hal/models.pyc                     | Bin 1194 -> 0 bytes
 hal/scripts.pyc                    | Bin 24041 -> 0 bytes
 hal/scripts_bibtex.py              |  58 +++--
 hal/scripts_csv.py                 |  10 +-
 hal/scripts_dblp.pyc               | Bin 24066 -> 0 bytes
 hal/scripts_text.pyc               | Bin 17777 -> 0 bytes
 hal/templates/base.html            |   5 +-
 hal/templates/hal/aide.html        |   1 -
 hal/templates/hal/bibtex2hal.html  |   1 -
 hal/templates/hal/bibtexxml.html   |   1 -
 hal/templates/hal/blog.html        |   1 -
 hal/templates/hal/connexion.html   |   1 -
 hal/templates/hal/csv2hal.html     |   1 -
 hal/templates/hal/index.html       |   1 -
 hal/templates/hal/text2hal.html    |   1 -
 hal/templates/hal/text_format.html |   1 -
 hal/templates/hal/textmodif.html   |   1 -
 hal/templates/hal/textxml.html     |   1 -
 hal/urls.py                        |   8 +-
 hal/urls.pyc                       | Bin 573 -> 0 bytes
 hal/views.py                       |  23 +-
 hal/views.pyc                      | Bin 5159 -> 0 bytes
 haltools/__init__.pyc              | Bin 143 -> 0 bytes
 haltools/settings.pyc              | Bin 3235 -> 0 bytes
 haltools/urls.pyc                  | Bin 1446 -> 0 bytes
 haltools/wsgi.pyc                  | Bin 603 -> 0 bytes
 requirements.txt                   |  27 +--
 35 files changed, 422 insertions(+), 236 deletions(-)
 delete mode 100644 hal/__init__.pyc
 delete mode 100644 hal/admin.pyc
 create mode 100644 hal/dict_countries.py
 delete mode 100644 hal/forms.pyc
 delete mode 100644 hal/migrations/0001_initial.pyc
 delete mode 100644 hal/migrations/Document sans nom
 delete mode 100644 hal/models.pyc
 delete mode 100644 hal/scripts.pyc
 delete mode 100644 hal/scripts_dblp.pyc
 delete mode 100644 hal/scripts_text.pyc
 delete mode 100644 hal/urls.pyc
 delete mode 100644 hal/views.pyc
 delete mode 100644 haltools/__init__.pyc
 delete mode 100644 haltools/settings.pyc
 delete mode 100644 haltools/urls.pyc
 delete mode 100644 haltools/wsgi.pyc

diff --git a/hal/__init__.pyc b/hal/__init__.pyc
deleted file mode 100644
index 25c441ac864005d1acb9132f955e54e39131da90..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 138
zcmZSn%*)m9)e@7;00oRd+5w1*S%5?e14FO|NW@PANHCxg#l}D}{fzwFRQ;sH;*!kN
zJpGi^vVs!*jKrMOyfP3~lAoVb3}WcV$7kkcmc+;F6;zgR0QK4A=BJeAq}qW@F9u=;
E0J7~Jp#T5?

diff --git a/hal/admin.pyc b/hal/admin.pyc
deleted file mode 100644
index 69d66c83931705d59a9adb641640eb38bc319dc9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 356
zcmYLE%TB{E5FF<Pss!q1<kav12yx)dA>1OQD2=zRBR{HmQ;9SDF&_Zy6p6JpJL6sL
ztn=@?P36DdNBl)5`577Fix4eW!2(X9Q&34~uo+yAE*G6c7qA6fiLQjA98-nq22|oR
z^_O_7D;Z>dBx)s$w*redW6;!F!!!>zUMr<k2JMVDsqy-DE3Bmh&E)yDPKq}IeScVZ
znW^tvQQ&(4Jq`XCc4P27n|-^QC2uEAHn!<wTnI!l<uqxgqlvOWEgb(4A4E2%;HcRT
pkq!Aq)8)*~X|UukDRBrkCep0??#>_Uz(=uKEIlQwn5?&1I={ffOicg)

diff --git a/hal/countries.csv b/hal/countries.csv
index 557d0f2..4950db4 100644
--- a/hal/countries.csv
+++ b/hal/countries.csv
@@ -1,170 +1,170 @@
-AF:AFGHANISTAN:Afghanistan:Afghanistan
-AL:ALBANIA:Albanie:Albania
-DZ:ALGERIA:Algérie:Algeria
-AO:ANGOLA:Angola:Angola
-AQ:ANTARCTICA:Antarctique:Antarctica
-AR:ARGENTINA:Argentine:Argentina
-AM:ARMENIA:Arménie:Armenia
-AU:AUSTRALIA:Australie:Australia
-AT:AUSTRIA:Autriche:Austria
-AZ:AZERBAIJAN:Azerbaïdjan:Azerbaijan
-BH:BAHRAIN:Bahrein:Bahrain
-BD:BANGLADESH:Bangladesh:Bangladesh
-BY:BELARUS:Bélarus:Belarus
-BE:BELGIUM:Belgique:Belgium
-BZ:BELIZE:Bélize:Belize
-BJ:BENIN:Bénin:Benin
-BT:BHUTAN:Bhoutan:Bhutan
-BO:BOLIVIA:Bolivie:Bolivia
-BA:BOSNIA AND HERZEGOVINA:Bosnie-Herzégovine:Bosnia and Herzegovina
-BW:BOTSWANA:Botswana:Botswana
-BR:BRAZIL:Brésil:Brazil
-BG:BULGARIA:Bulgarie:Bulgaria
-BF:BURKINA FASO:Burkina Faso:Burkina Faso
-BI:BURUNDI:Burundi:Burundi
-KH:CAMBODIA:Cambodge:Cambodia
-CM:CAMEROON:Cameroun:Cameroon
-CA:CANADA:Canada:Canada
-CV:CAPE VERDE:Cap-vert:Cape Verde
-CF:CENTRAL AFRICAN REPUBLIC:République-centrafricaine:Central African Republic
-TD:CHAD:Tchad:Chad
-CL:CHILE:Chili:Chile
-CN:CHINA:Chine:China
-CO:COLOMBIA:Colombie:Colombia
-KM:COMOROS:Comores:Comoros
-CG:CONGO:Congo:Congo
-CD:DEMOCRATIC REPUBLIC OF CONGO:RDC:Democratic Republic of Congo
-CR:COSTA RICA:Costa-Rica:Costa Rica
-CI:IVORY COAST:Côte-d'Ivoire:Ivory Coast
-HR:CROATIA:Croatie:Croatia
-CU:CUBA:Cuba:Cuba
-CY:CYPRUS:Chypre:Cyprus
-CZ:CZECH REPUBLIC:Tchèquie:Czech Republic
-DK:DENMARK:Danemark:Denmark
-DJ:DJIBOUTI:Djibouti:Djibouti
-DO:DOMINICAN REPUBLIC:République-Dominicaine:Dominican Republic
-EC:ECUADOR:Equateur:Ecuador
-EG:EGYPT:Egypte:Egypt
-SV:EL SALVADOR:Salvador:El Salvador
-GQ:EQUATORIAL GUINEA:Guinée-équatoriale:Equatorial Guinea
-ER:ERITREA:Erythrée:Eritrea
-EE:ESTONIA:Estonie:Estonia
-ET:ETHIOPIA:Ethiopie:Ethiopia
-FJ:FIJI:Fidji:Fiji
-FI:FINLAND:Finlande:Finland
-FR:FRANCE:France:France
-GA:GABON:Gabon:Gabon
-GM:GAMBIA:Gambie:Gambia
-GE:GEORGIA:Géorgie:Georgia
-DE:GERMANY:Allemagne:Germany
-GH:GHANA:Ghana:Ghana
-GR:GREECE:Grèce:Greece
-GL:GREENLAND:Groenland:Greenland
-GT:GUATEMALA:Guatemala:Guatemala
-GN:GUINEA:Guinée:Guinea
-GW:GUINEA-BISSAU:Guinée-Bissau:Guinea-Bissau
-GY:GUYANA:Guyana:Guyana
-HT:HAITI:Haïti:Haiti
-HN:HONDURAS:Honduras:Honduras
-HK:HONG KONG:Hong-Kong:Hong Kong
-HU:HUNGARY:Hongrie:Hungary
-IS:ICELAND:Islande:Iceland
-IN:INDIA:Inde:India
-ID:INDONESIA:Indonesie:Indonesia
-IR:IRAN:Iran:Iran
-IQ:IRAQ:Iraq:Iraq
-IE:IRELAND:Irlande:Ireland
-IL:ISRAEL:Israël:Israel
-IT:ITALY:Italie:Italy
-JM:JAMAICA:Jamaïque:Jamaica
-JP:JAPAN:Japon:Japan
-JO:JORDAN:Jordanie:Jordan
-KZ:KAZAKHSTAN:Kazakhstan:Kazakhstan
-KE:KENYA:Kenya:Kenya
-KR:KOREA:Corée:Korea
-KW:KUWAIT:Koweït:Kuwait
-KG:KYRGYZSTAN:Kirghizistan:Kyrgyzstan
-LV:LATVIA:Lettonie:Latvia
-LB:LEBANON:Liban:Lebanon
-LS:LESOTHO:Lesotho:Lesotho
-LR:LIBERIA:Libéria:Liberia
-LY:LIBYA:Libye:Libya
-LI:LIECHTENSTEIN:Liechtenstein:Liechtenstein
-LT:LITHUANIA:Lituanie:Lithuania
-LU:LUXEMBOURG:Luxembourg:Luxembourg
-MO:MACAO:Macao:Macao
-MK:MACEDONIA:Macédoine:Macedonia
-MG:MADAGASCAR:Madagascar:Madagascar
-MW:MALAWI:Malawi:Malawi
-MY:MALAYSIA:Malaisie:Malaysia
-ML:MALI:Mali:Mali
-MT:MALTA:Malte:Malta
-MR:MAURITANIA:Mauritanie:Mauritania
-MX:MEXICO:Mexique:Mexico
-MD:MOLDOVA:Moldavie:Moldova
-MN:MONGOLIA:Mongolie:Mongolia
-MA:MOROCCO:Maroc:Morocco
-MZ:MOZAMBIQUE:Mozambique:Mozambique
-MM:MYANMAR:Myanmar:Myanmar
-NA:NAMIBIA:Namibie:Namibia
-NP:NEPAL:Népal:Nepal
-NL:NETHERLANDS:Pays-Bas:Netherlands
-NC:NEW CALEDONIA:Nouvelle-Calédonie:New Caledonia
-NZ:NEW ZEALAND:Nouvelle-Zélande:New Zealand
-NI:NICARAGUA:Nicaragua:Nicaragua
-NE:NIGER:Niger:Niger
-NG:NIGERIA:Nigéria:Nigeria
-NO:NORWAY:Norvège:Norway
-OM:OMAN:Oman:Oman
-PK:PAKISTAN:Pakistan:Pakistan
-PS:PALESTINE:Palestine:Palestine
-PA:PANAMA:Panama:Panama
-PG:PAPUA NEW GUINEA:Papouasie-Nouvelle-Guinée:Papua New Guinea
-PY:PARAGUAY:Paraguay:Paraguay
-PE:PERU:Pérou:Peru
-PH:PHILIPPINES:Philippines:Philippines
-PL:POLAND:Pologne:Poland
-PT:PORTUGAL:Portugal:Portugal
-PR:PUERTO RICO:Porto-Rico:Puerto Rico
-QA:QATAR:Qatar:Qatar
-RO:ROMANIA:Roumanie:Romania
-RU:RUSSIA:Russie:Russia
-RW:RWANDA:Rwanda:Rwanda
-WS:SAMOA:Samoa:Samoa
-SA:SAUDI ARABIA:Arabie-Saoudite:Saudi Arabia
-SN:SENEGAL:Sénégal:Senegal
-RS:SERBIA:Serbie:Serbia
-SL:SIERRA LEONE:Sierra-Leone:Sierra Leone
-SG:SINGAPORE:Singapour:Singapore
-SK:SLOVAKIA:Slovaquie:Slovakia
-SI:SLOVENIA:Slovénie:Slovenia
-SO:SOMALIA:Somalie:Somalia
-ZA:SOUTH AFRICA:Afrique du Sud:South Africa
-ES:SPAIN:Espagne:Spain
-LK:SRI LANKA:Sri-Lanka:Sri Lanka
-SD:SUDAN:Soudan:Sudan
-SR:SURINAME:Surinam:Suriname
-SZ:SWAZILAND:Swaziland:Swaziland
-SE:SWEDEN:Suède:Sweden
-CH:SWITZERLAND:Suisse:Switzerland
-SY:SYRIA:Syrie:Syria
-TW:TAIWAN:Taïwan:Taiwan
-TJ:TAJIKISTAN:Tadjikistan:Tajikistan
-TZ:TANZANIA:Tanzanie:Tanzania
-TH:THAILAND:Thaïlande:Thailand
-TG:TOGO:Togo:Togo
-TN:TUNISIA:Tunisie:Tunisia
-TR:TURKEY:Turquie:Turkey
-TM:TURKMENISTAN:Turkménistan:Turkmenistan
-UG:UGANDA:Ouganda:Uganda
-UA:UKRAINE:Ukraine:Ukraine
-AE:UNITED ARAB EMIRATES:Emirats-arabes-unis:United Arab Emirates
-GB:UNITED KINGDOM:Royaume-Uni:United Kingdom
-US:USA:USA:Usa
-UY:URUGUAY:Uruguay:Uruguay
-UZ:UZBEKISTAN:Ouzbékistan:Uzbekistan
-VU:VANUATU:Vanuatu:Vanuatu
-VN:VIETNAM:Viet-Nam:Vietnam
-YE:YEMEN:Yémen:Yemen
-ZW:ZIMBABWE:Zimbabwe:Zimbabwe
-XX:UNKNOWN COUNTRY:Pays inconnu:Unknown Country
+AF;AFGHANISTAN;Afghanistan;Afghanistan
+AL;ALBANIA;Albanie;Albania
+DZ;ALGERIA;Algérie;Algeria
+AO;ANGOLA;Angola;Angola
+AQ;ANTARCTICA;Antarctique;Antarctica
+AR;ARGENTINA;Argentine;Argentina
+AM;ARMENIA;Arménie;Armenia
+AU;AUSTRALIA;Australie;Australia
+AT;AUSTRIA;Autriche;Austria
+AZ;AZERBAIJAN;Azerbaïdjan;Azerbaijan
+BH;BAHRAIN;Bahrein;Bahrain
+BD;BANGLADESH;Bangladesh;Bangladesh
+BY;BELARUS;Bélarus;Belarus
+BE;BELGIUM;Belgique;Belgium
+BZ;BELIZE;Bélize;Belize
+BJ;BENIN;Bénin;Benin
+BT;BHUTAN;Bhoutan;Bhutan
+BO;BOLIVIA;Bolivie;Bolivia
+BA;BOSNIA AND HERZEGOVINA;Bosnie-Herzégovine;Bosnia and Herzegovina
+BW;BOTSWANA;Botswana;Botswana
+BR;BRAZIL;Brésil;Brazil
+BG;BULGARIA;Bulgarie;Bulgaria
+BF;BURKINA FASO;Burkina Faso;Burkina Faso
+BI;BURUNDI;Burundi;Burundi
+KH;CAMBODIA;Cambodge;Cambodia
+CM;CAMEROON;Cameroun;Cameroon
+CA;CANADA;Canada;Canada
+CV;CAPE VERDE;Cap-vert;Cape Verde
+CF;CENTRAL AFRICAN REPUBLIC;République-centrafricaine;Central African Republic
+TD;CHAD;Tchad;Chad
+CL;CHILE;Chili;Chile
+CN;CHINA;Chine;China
+CO;COLOMBIA;Colombie;Colombia
+KM;COMOROS;Comores;Comoros
+CG;CONGO;Congo;Congo
+CD;DEMOCRATIC REPUBLIC OF CONGO;RDC;Democratic Republic of Congo
+CR;COSTA RICA;Costa-Rica;Costa Rica
+CI;IVORY COAST;Côte-d'Ivoire;Ivory Coast
+HR;CROATIA;Croatie;Croatia
+CU;CUBA;Cuba;Cuba
+CY;CYPRUS;Chypre;Cyprus
+CZ;CZECH REPUBLIC;Tchèquie;Czech Republic
+DK;DENMARK;Danemark;Denmark
+DJ;DJIBOUTI;Djibouti;Djibouti
+DO;DOMINICAN REPUBLIC;République-Dominicaine;Dominican Republic
+EC;ECUADOR;Equateur;Ecuador
+EG;EGYPT;Egypte;Egypt
+SV;EL SALVADOR;Salvador;El Salvador
+GQ;EQUATORIAL GUINEA;Guinée-équatoriale;Equatorial Guinea
+ER;ERITREA;Erythrée;Eritrea
+EE;ESTONIA;Estonie;Estonia
+ET;ETHIOPIA;Ethiopie;Ethiopia
+FJ;FIJI;Fidji;Fiji
+FI;FINLAND;Finlande;Finland
+FR;FRANCE;France;France
+GA;GABON;Gabon;Gabon
+GM;GAMBIA;Gambie;Gambia
+GE;GEORGIA;Géorgie;Georgia
+DE;GERMANY;Allemagne;Germany
+GH;GHANA;Ghana;Ghana
+GR;GREECE;Grèce;Greece
+GL;GREENLAND;Groenland;Greenland
+GT;GUATEMALA;Guatemala;Guatemala
+GN;GUINEA;Guinée;Guinea
+GW;GUINEA-BISSAU;Guinée-Bissau;Guinea-Bissau
+GY;GUYANA;Guyana;Guyana
+HT;HAITI;Haïti;Haiti
+HN;HONDURAS;Honduras;Honduras
+HK;HONG KONG;Hong-Kong;Hong Kong
+HU;HUNGARY;Hongrie;Hungary
+IS;ICELAND;Islande;Iceland
+IN;INDIA;Inde;India
+ID;INDONESIA;Indonesie;Indonesia
+IR;IRAN;Iran;Iran
+IQ;IRAQ;Iraq;Iraq
+IE;IRELAND;Irlande;Ireland
+IL;ISRAEL;Israël;Israel
+IT;ITALY;Italie;Italy
+JM;JAMAICA;Jamaïque;Jamaica
+JP;JAPAN;Japon;Japan
+JO;JORDAN;Jordanie;Jordan
+KZ;KAZAKHSTAN;Kazakhstan;Kazakhstan
+KE;KENYA;Kenya;Kenya
+KR;KOREA;Corée;Korea
+KW;KUWAIT;Koweït;Kuwait
+KG;KYRGYZSTAN;Kirghizistan;Kyrgyzstan
+LV;LATVIA;Lettonie;Latvia
+LB;LEBANON;Liban;Lebanon
+LS;LESOTHO;Lesotho;Lesotho
+LR;LIBERIA;Libéria;Liberia
+LY;LIBYA;Libye;Libya
+LI;LIECHTENSTEIN;Liechtenstein;Liechtenstein
+LT;LITHUANIA;Lituanie;Lithuania
+LU;LUXEMBOURG;Luxembourg;Luxembourg
+MO;MACAO;Macao;Macao
+MK;MACEDONIA;Macédoine;Macedonia
+MG;MADAGASCAR;Madagascar;Madagascar
+MW;MALAWI;Malawi;Malawi
+MY;MALAYSIA;Malaisie;Malaysia
+ML;MALI;Mali;Mali
+MT;MALTA;Malte;Malta
+MR;MAURITANIA;Mauritanie;Mauritania
+MX;MEXICO;Mexique;Mexico
+MD;MOLDOVA;Moldavie;Moldova
+MN;MONGOLIA;Mongolie;Mongolia
+MA;MOROCCO;Maroc;Morocco
+MZ;MOZAMBIQUE;Mozambique;Mozambique
+MM;MYANMAR;Myanmar;Myanmar
+NA;NAMIBIA;Namibie;Namibia
+NP;NEPAL;Népal;Nepal
+NL;NETHERLANDS;Pays-Bas;Netherlands
+NC;NEW CALEDONIA;Nouvelle-Calédonie;New Caledonia
+NZ;NEW ZEALAND;Nouvelle-Zélande;New Zealand
+NI;NICARAGUA;Nicaragua;Nicaragua
+NE;NIGER;Niger;Niger
+NG;NIGERIA;Nigéria;Nigeria
+NO;NORWAY;Norvège;Norway
+OM;OMAN;Oman;Oman
+PK;PAKISTAN;Pakistan;Pakistan
+PS;PALESTINE;Palestine;Palestine
+PA;PANAMA;Panama;Panama
+PG;PAPUA NEW GUINEA;Papouasie-Nouvelle-Guinée;Papua New Guinea
+PY;PARAGUAY;Paraguay;Paraguay
+PE;PERU;Pérou;Peru
+PH;PHILIPPINES;Philippines;Philippines
+PL;POLAND;Pologne;Poland
+PT;PORTUGAL;Portugal;Portugal
+PR;PUERTO RICO;Porto-Rico;Puerto Rico
+QA;QATAR;Qatar;Qatar
+RO;ROMANIA;Roumanie;Romania
+RU;RUSSIA;Russie;Russia
+RW;RWANDA;Rwanda;Rwanda
+WS;SAMOA;Samoa;Samoa
+SA;SAUDI ARABIA;Arabie-Saoudite;Saudi Arabia
+SN;SENEGAL;Sénégal;Senegal
+RS;SERBIA;Serbie;Serbia
+SL;SIERRA LEONE;Sierra-Leone;Sierra Leone
+SG;SINGAPORE;Singapour;Singapore
+SK;SLOVAKIA;Slovaquie;Slovakia
+SI;SLOVENIA;Slovénie;Slovenia
+SO;SOMALIA;Somalie;Somalia
+ZA;SOUTH AFRICA;Afrique du Sud;South Africa
+ES;SPAIN;Espagne;Spain
+LK;SRI LANKA;Sri-Lanka;Sri Lanka
+SD;SUDAN;Soudan;Sudan
+SR;SURINAME;Surinam;Suriname
+SZ;SWAZILAND;Swaziland;Swaziland
+SE;SWEDEN;Suède;Sweden
+CH;SWITZERLAND;Suisse;Switzerland
+SY;SYRIA;Syrie;Syria
+TW;TAIWAN;Taïwan;Taiwan
+TJ;TAJIKISTAN;Tadjikistan;Tajikistan
+TZ;TANZANIA;Tanzanie;Tanzania
+TH;THAILAND;Thaïlande;Thailand
+TG;TOGO;Togo;Togo
+TN;TUNISIA;Tunisie;Tunisia
+TR;TURKEY;Turquie;Turkey
+TM;TURKMENISTAN;Turkménistan;Turkmenistan
+UG;UGANDA;Ouganda;Uganda
+UA;UKRAINE;Ukraine;Ukraine
+AE;UNITED ARAB EMIRATES;Emirats-arabes-unis;United Arab Emirates
+GB;UNITED KINGDOM;Royaume-Uni;United Kingdom
+US;USA;USA;Usa
+UY;URUGUAY;Uruguay;Uruguay
+UZ;UZBEKISTAN;Ouzbékistan;Uzbekistan
+VU;VANUATU;Vanuatu;Vanuatu
+VN;VIETNAM;Viet-Nam;Vietnam
+YE;YEMEN;Yémen;Yemen
+ZW;ZIMBABWE;Zimbabwe;Zimbabwe
+XX;UNKNOWN COUNTRY;Pays inconnu;Unknown Country
diff --git a/hal/dict_countries.py b/hal/dict_countries.py
new file mode 100644
index 0000000..3334876
--- /dev/null
+++ b/hal/dict_countries.py
@@ -0,0 +1,172 @@
+dict_countries = {
+    "AFGHANISTAN":"AF",
+    "ALBANIA":"AL",
+    "ALGERIA":"DZ",
+    "ANGOLA":"AO",
+    "ANTARCTICA":"AQ",
+    "ARGENTINA":"AR",
+    "ARMENIA":"AM",
+    "AUSTRALIA":"AU",
+    "AUSTRIA":"AT",
+    "AZERBAIJAN":"AZ",
+    "BAHRAIN":"BH",
+    "BANGLADESH":"BD",
+    "BELARUS":"BY",
+    "BELGIUM":"BE",
+    "BELIZE":"BZ",
+    "BENIN":"BJ",
+    "BHUTAN":"BT",
+    "BOLIVIA":"BO",
+    "BOSNIA AND HERZEGOVINA":"BA",
+    "BOTSWANA":"BW",
+    "BRAZIL":"BR",
+    "BULGARIA":"BG",
+    "BURKINA FASO":"BF",
+    "BURUNDI":"BI",
+    "CAMBODIA":"KH",
+    "CAMEROON":"CM",
+    "CANADA":"CA",
+    "CAPE VERDE":"CV",
+    "CENTRAL AFRICAN REPUBLIC":"CF",
+    "CHAD":"TD",
+    "CHILE":"CL",
+    "CHINA":"CN",
+    "COLOMBIA":"CO",
+    "COMOROS":"KM",
+    "CONGO":"CG",
+    "DEMOCRATIC REPUBLIC OF CONGO":"CD",
+    "COSTA RICA":"CR",
+    "IVORY COAST":"CI",
+    "CROATIA":"HR",
+    "CUBA":"CU",
+    "CYPRUS":"CY",
+    "CZECH REPUBLIC":"CZ",
+    "DENMARK":"DK",
+    "DJIBOUTI":"DJ",
+    "DOMINICAN REPUBLIC":"DO",
+    "ECUADOR":"EC",
+    "EGYPT":"EG",
+    "EL SALVADOR":"SV",
+    "EQUATORIAL GUINEA":"GQ",
+    "ERITREA":"ER",
+    "ESTONIA":"EE",
+    "ETHIOPIA":"ET",
+    "FIJI":"FJ",
+    "FINLAND":"FI",
+    "FRANCE":"FR",
+    "GABON":"GA",
+    "GAMBIA":"GM",
+    "GEORGIA":"GE",
+    "GERMANY":"DE",
+    "GHANA":"GH",
+    "GREECE":"GR",
+    "GREENLAND":"GL",
+    "GUATEMALA":"GT",
+    "GUINEA":"GN",
+    "GUINEA-BISSAU":"GW",
+    "GUYANA":"GY",
+    "HAITI":"HT",
+    "HONDURAS":"HN",
+    "HONG KONG":"HK",
+    "HUNGARY":"HU",
+    "ICELAND":"IS",
+    "INDIA":"IN",
+    "INDONESIA":"ID",
+    "IRAN":"IR",
+    "IRAQ":"IQ",
+    "IRELAND":"IE",
+    "ISRAEL":"IL",
+    "ITALY":"IT",
+    "JAMAICA":"JM",
+    "JAPAN":"JP",
+    "JORDAN":"JO",
+    "KAZAKHSTAN":"KZ",
+    "KENYA":"KE",
+    "KOREA":"KR",
+    "KUWAIT":"KW",
+    "KYRGYZSTAN":"KG",
+    "LATVIA":"LV",
+    "LEBANON":"LB",
+    "LESOTHO":"LS",
+    "LIBERIA":"LR",
+    "LIBYA":"LY",
+    "LIECHTENSTEIN":"LI",
+    "LITHUANIA":"LT",
+    "LUXEMBOURG":"LU",
+    "MACAO":"MO",
+    "MACEDONIA":"MK",
+    "MADAGASCAR":"MG",
+    "MALAWI":"MW",
+    "MALAYSIA":"MY",
+    "MALI":"ML",
+    "MALTA":"MT",
+    "MAURITANIA":"MR",
+    "MEXICO":"MX",
+    "MOLDOVA":"MD",
+    "MONGOLIA":"MN",
+    "MOROCCO":"MA",
+    "MOZAMBIQUE":"MZ",
+    "MYANMAR":"MM",
+    "NAMIBIA":"NA",
+    "NEPAL":"NP",
+    "NETHERLANDS":"NL",
+    "NEW CALEDONIA":"NC",
+    "NEW ZEALAND":"NZ",
+    "NICARAGUA":"NI",
+    "NIGER":"NE",
+    "NIGERIA":"NG",
+    "NORWAY":"NO",
+    "OMAN":"OM",
+    "PAKISTAN":"PK",
+    "PALESTINE":"PS",
+    "PANAMA":"PA",
+    "PAPUA NEW GUINEA":"PG",
+    "PARAGUAY":"PY",
+    "PERU":"PE",
+    "PHILIPPINES":"PH",
+    "POLAND":"PL",
+    "PORTUGAL":"PT",
+    "PUERTO RICO":"PR",
+    "QATAR":"QA",
+    "ROMANIA":"RO",
+    "RUSSIA":"RU",
+    "RWANDA":"RW",
+    "SAMOA":"WS",
+    "SAUDI ARABIA":"SA",
+    "SENEGAL":"SN",
+    "SERBIA":"RS",
+    "SIERRA LEONE":"SL",
+    "SINGAPORE":"SG",
+    "SLOVAKIA":"SK",
+    "SLOVENIA":"SI",
+    "SOMALIA":"SO",
+    "SOUTH AFRICA":"ZA",
+    "SPAIN":"ES",
+    "SRI LANKA":"LK",
+    "SUDAN":"SD",
+    "SURINAME":"SR",
+    "SWAZILAND":"SZ",
+    "SWEDEN":"SE",
+    "SWITZERLAND":"CH",
+    "SYRIA":"SY",
+    "TAIWAN":"TW",
+    "TAJIKISTAN":"TJ",
+    "TANZANIA":"TZ",
+    "THAILAND":"TH",
+    "TOGO":"TG",
+    "TUNISIA":"TN",
+    "TURKEY":"TR",
+    "TURKMENISTAN":"TM",
+    "UGANDA":"UG",
+    "UKRAINE":"UA",
+    "UNITED ARAB EMIRATES":"AE",
+    "UNITED KINGDOM":"GB",
+    "USA":"US",
+    "URUGUAY":"UY",
+    "UZBEKISTAN":"UZ",
+    "VANUATU":"VU",
+    "VIETNAM":"VN",
+    "YEMEN":"YE",
+    "ZIMBABWE":"ZW",
+    "UNKNOWN COUNTRY":"XX"
+}
\ No newline at end of file
diff --git a/hal/forms.pyc b/hal/forms.pyc
deleted file mode 100644
index 6de019ddfe6abbf781b37d69b0490565e874e044..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2827
zcmds3$!;4*5bfb6iPY{aRu-AaiO7Krat?x65(FDi3}NgXLIfBL*-deTS(xb_TRA((
zZ{+M-z9IgJ{6!A=faJYui4?V50$&o6Q=F<-y;OC*nyLS_(f;GlUw#;?%TFEu-{7*p
zLTLN~l`545Y8a@1dQGJ@mDSa-?)AD#8!Bt6Vbkjkm9|v2qK2zpZ>n@nWo<QVLvJY)
zsPm4R1WK={pOt#8)c3=6rB|;3Yja>j>Gn0CGY2-6URTe18`xv=H$J@pcdiLBDay=x
zbr<U6%1uq~l5y;kB0mP`u?Dd3tSP;=3avUb&Y276Ei16RN;GWNah1a&&&|c<6!T=!
z>j0NMf-s6XGBtHxzf2r*rRxZ>Hf-FoH<WIQvB?~~R`p>^h0l8}Oyt@SS$q+tCO>o2
z<UQILTN;l{Dt9NvS(4jz*uE`XSDWrEw$?a~_Pg$JYmRY6Q66U|ie%O($_ibjP(wh<
ztw9`4<MKE$sTTJNN#OvA`V_OiDoXt{pH)s^u0u<Y!xzGS0d+7fGBX&()+Ht%X!COB
z2GbZpyyTxNiq!IEAV<`n{S-2$4lc{nXax@g$B2$b>Fi7R@v!EZ=0+vcF;4nMrVVn5
zdXi-8hUC(xR?cAwWwM#+`6(@-EkRfAL01Gtp<bQv(%4l&*X}{r1Vt_1Ikqim=N`1f
zTIaxZxZ&3rZiosFAQf9IF%6<@@}ALc-$LOtM|YN2!PxDq`FCab1D4?q(k<s*njfpA
zG&*EyNhOA?EK3I-km<&iGga9=IygDCWXiK5>yD?U#8s8zcUr!ElP_7f>G%6@EL`i#
zYV4}g*ew{J>L+n}ZTJJ&q}IDn9-myZlM)L%=AXQMQ-bIALjYG*D`OT|$QrUAKpe!@
z2x$P$N)Teq=HM7uk|!>SQ%mNE8`ia(P{wdDdDR^yBXo%#HxQDiAq!Z@6tZ|7OZi1v
zdH%rJvyZG2vI!SO<D`?Mv~FQy2Eg$mLQbdAB+0=VPM_!qe28Qi*G$QNuM+mEHnYNo
zoK;vPMAea4#c%-rnK<`MC-aUGrg3bNBS79Wnw5qbaooz188+tR1v+G0nppPbbAgSf
zX3+}d?%(wTmIW7<Luv*4i*Ic|_?%izLg6Ov?+}Oo%MPJ^d+30p_%-m%WJ>_=(F4#4
zz+*f`(HJ&`#9Oye_{>q?A?Do?H|P+4{v8><%O1ef2+8xC-2YFrJY>Ny)0^>J(VK4o
zrpLB(7rR3N-Y3dF60+Nb4=MI2KB6E4!;dLGq4<<ypW+ck7eX2V7kYQh`3%!?5zD^R
z0$VP>bKX4bky!GApwHv{tnkl&Zrkg9W}r+)efFNdJfcH+sbWxfx!^^@q&BQ^TBhLA
zr*cVZ`>u?0o60*^Sf>Z4iX3-$b1t1FdC0CQt&`6bc`pd1{214}Xf4vazVh!rUvop!
Q)3*bBYq;urjlHdZ09G|)^#A|>

diff --git a/hal/migrations/0001_initial.pyc b/hal/migrations/0001_initial.pyc
deleted file mode 100644
index b7e7f6ba3998ec1a04746eeecd57387212940c13..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1340
zcmb_b+iu!G5FHyZm*zsQQs3IA@&xI7Rh5uLt<)rvNgj$SSqnSBI_ovE*GcJX@;Cjg
zenLN>ogG8S2h^bT?9AEqoHH|(KijQev#0M9SUnYbe*z!!hzv=84>UmH!N>#8?S0Tb
zBo!D{%6$cN6_Of^YLEml3QBJkbR9+wkTt*>#7&rbAOm;;cm()1YJ#l7uv4dRsK4}d
zJhE(?mcpn>DlyW^VkUH6Mj8~!(OP9@dB=Cy7A=XIWx}e|<Th|yI;Zn1+a&vP9eO5q
zK;BbF>^B(*jt}~d1y&)ZECYz^@aVyes5aP1Niu(;ED6?v_?1hWPB~Vz27p^2>mVD%
zsyZc4lVRH+TObKcQL+ipBtXRhc3uE>UjTO2fHnhmK<@D;=$<2x`)nTowjthwm@?Ui
z_yFYLI&G-Y<+CbX;=BA0Aslv&iKng7Vnl+4Q!vCSW@s#{HC3o(UN|w8v|IENg-xSL
zhQgw>ugI~;R3frvbcah8HOEW|t$rfI?=c&vIYxZFyXMPT;iT8;Oqpmdv~}f`I2DDq
ze0~$*>WLqbMl-W>bx6R%p%)MG`Q*yx%(HdoH3E&bFn1-hLTkP`H4)VwEn04l^r~}2
zK<h|HoM04j$3zh|NuiOpPMMpmK+aMbWr<qIr(HJrgIFxYn2-_|Xe64+GUO)RrD*^5
z=5usAJP)JG>$CH(EXOlWVb1CeSjkJ*l%bm{PP9)NUpVEhV{$<aj_e=IMOON^$$xF|
zCZ(nHxJ<87gIqQl3o}cZrW`XtCQd`ZL<argpnrDGWYYyr5RXTPZh*~_pVGEBPZR8o
zMQ#<Ep2Yiw?NQOt+`E@eQ=L1bw;8hD$;rw4XeCv5u?$^eu9CSM+`tbiN7bem`0u>8
z^y|3DO7v-Ai;P4M$ptJ<NuxVS&9s!&b<WBu$6SX}wAU~F-EzdcYs%ppigFqoa%}x4
YhOF<0vSmKH8s-gJ+J4(R_O>ej0BB$_t^fc4

diff --git a/hal/migrations/Document sans nom b/hal/migrations/Document sans nom
deleted file mode 100644
index e69de29..0000000
diff --git a/hal/models.py b/hal/models.py
index a8bf7d3..587ca26 100644
--- a/hal/models.py
+++ b/hal/models.py
@@ -1,12 +1,12 @@
 # -*- coding: utf-8 -*-
 from django.utils.translation import ugettext_lazy as _
 from django.db import models
-from django.utils.encoding import python_2_unicode_compatible
+#from django.utils.encoding import python_2_unicode_compatible
 
 from django.contrib.auth.models import User, Group
 from datetime import datetime
 
-@python_2_unicode_compatible
+#@python_2_unicode_compatible
 class Referent(models.Model):
 
     referent = models.OneToOneField(User, on_delete=models.CASCADE, default=None, blank=True, null=True)  
diff --git a/hal/models.pyc b/hal/models.pyc
deleted file mode 100644
index 0e2c6c6c115a0c866655543ed0db0bb6afffe5a9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1194
zcmb_bOOMkq5S}z`ns#@2NPu`;IYb;<!5JZz@;Ff>?{XkQveJ6mrt8>M>@2&8TlXLE
zQ~3cf<7~GFj?mQOd3t8PvEyGy!=KBmuXDKmb!mT1%Uu#t^p8LTR1xGIh*<7`j-l#8
z-fiU=bPuWo@}!l!p!-mzkf%@$ARn~a9_S%dL&%2^VFD@v?85p077?gETmftWzHBMW
zA*d8ivH@i;f736Ei1SB8nk9OV7hdY(`(>+6NL^Wl+O_f%k~f!rWsQ6x8&l57Cg--=
z6uz8k%sPA)clg<1?R&(0sBN=pgHsY!;n9~BdKLsOutwu=uo;r_4J}8-0s`a_U<cMQ
z_d?Jx-($ekkYU0;C^Ge78+8c`whlm%XX`^C^a05;AqQ$d&JX_bNq0W!&WGR`FkJZ&
zh?DGq>hKH|HB2ZV72hXG;i71?4-L+AVa`I&rqSAS3srF;HJYVgmG^cBXuB+pTou|M
zlIk4mnRO^lK~V6Cn{SGZa~{TSO^A1F`~k2Ani(6Wdo1f~_*xC4?ocl>+9444oVfAI
zRydv&&X;J$3ePuwOo`B(^X9G9j+t>g<q-{+GfL@vE#+-u9nTb^X?BaYFg6*=mNN7z
zB}FzGr4%<8>65`zOXPitT8WtB_|VDm$>jL$yMWcy8Vt;7-Jsw+0p`i7s6&+J!=zxW
z1Sb}EiR@eZhyDcLX&$Ldi6rr}=qY{Ej9-9%NJOm*v$Uhem)ebdT^Oh7c3UIJ2I3LB
zarm{Hnzeo3->ce4H1s%1vlQV?Jl>n<*7&-djf%#vMlI|CBf%3C{AR+v`pC~N6#HM=
X4wHM?&gvDH<QUsK5q+Hpw36r#EcX8r

diff --git a/hal/scripts.pyc b/hal/scripts.pyc
deleted file mode 100644
index b07a703613682e703c3764d72ce66f256606203c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 24041
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
C?22pv

diff --git a/hal/scripts_bibtex.py b/hal/scripts_bibtex.py
index ed3f0b7..1674f24 100644
--- a/hal/scripts_bibtex.py
+++ b/hal/scripts_bibtex.py
@@ -1,7 +1,7 @@
 #!/usr/bin/python
 #-*- coding: utf-8 -*-
 
-from __future__ import unicode_literals
+#from __future__ import unicode_literals
 import requests
 import csv
 
@@ -11,11 +11,14 @@ from lxml import etree
 # lib bibtex
 import bibtexparser
 from bibtexparser.bparser import BibTexParser
-from bibtexparser.customization import homogenize_latex_encoding
+#from bibtexparser.customization import homogenize_latex_encoding
 from bibtexparser.customization import convert_to_unicode
 
-from create_xml2hal import createXml_sendHal, create_single_xml
+from .create_xml2hal import createXml_sendHal, create_single_xml
 
+from .dict_countries import dict_countries
+
+from haltools.settings import BASE_DIR
 #################
 ## VARIABLES
 #################
@@ -115,12 +118,12 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
 
     # list_acronym_country -> nom du pays en anglais majuscule , acronyme du pays       
     list_acronym_country = []
-    with open('hal/countries.csv', 'rb') as csvfile:
-        delim = str(':')
-        quotech = str('|')
-        list_countries = csv.reader(csvfile, delimiter=delim, quotechar=quotech)
+    ''' with open(BASE_DIR+'/hal/countries.csv', 'r') as csvfile:
+        delim = str(';')
+        #quotech = str('|')
+        list_countries = csv.reader(csvfile, delimiter=';')#delim) #, quotechar=quotech)
         for row in list_countries:
-            list_acronym_country.append((row[1],row[0]))
+            list_acronym_country.append((row[1],row[0])) '''
    
 
     for entry in bib_database.entries :
@@ -241,9 +244,32 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
                 conf = conf.replace("\\(^\\mboxe\\)","e")
                 prev_conf_elmt = ""
                 prev_prev_conf_elmt = ""
+                print("TEST HERE conf_all {0}".format(conf_all))
                 for conf_elmt in conf_all :
                     conf_elmt = conf_elmt.strip()
-                    for csv_country in list_acronym_country :
+                    conf_elmt = conf_elmt.upper()
+                    print("TEST HERE conf_elmt {0}".format(conf_elmt))
+                    
+                    try :
+                        data_country = dict_countries[conf_elmt]
+                        
+                        if conf_elmt == "USA":
+                            prev_prev_conf_elmt = prev_prev_conf_elmt.replace("\n"," ")
+                            town = prev_prev_conf_elmt
+                            country_acr = data_country
+                            country = conf_elmt
+                        else :                        
+                            prev_conf_elmt = prev_conf_elmt.replace("\n"," ")
+                            town = prev_conf_elmt
+                            country_acr = data_country
+                            country = conf_elmt
+                             
+                    except Exception as e :
+                        print("conf_elmt {0}".format(conf_elmt))
+                 
+
+                    
+                    ''' for csv_country in list_acronym_country :
                         if conf_elmt.upper() == csv_country[0] :
                             if csv_country[0] == "USA" :
                                 prev_prev_conf_elmt = prev_prev_conf_elmt.replace("\n"," ")
@@ -255,7 +281,7 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
                                 prev_conf_elmt = prev_conf_elmt.replace("\n"," ")
                                 town = prev_conf_elmt
                                 country_acr = csv_country[1]
-                                country = csv_country[0]
+                                country = csv_country[0] '''
 
                     prev_prev_conf_elmt = prev_conf_elmt
                     prev_conf_elmt = conf_elmt
@@ -319,8 +345,8 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
                 json = ""
                 try :
                     json = req.json()
-                except ValueError :
-                    print ("PROBLEME VALUEERROR")
+                except ValueError as ve :
+                    print ("PROBLEME VALUEERROR {0}".format(ve))
                 try : 
                     if json is not "" :
                         result = json['response']['docs']
@@ -332,8 +358,8 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
                                 tous_authors = result[0]["authFullName_s"]
                                 for auth in tous_authors:
                                     all_auth = all_auth + auth+"-"
-                            except KeyError, e :
-                                print ("error print authors existing publi")
+                            except KeyError as ke :
+                                print ("error print authors existing publi keyerror {0}".format(ke))
                             resultat = resultat + "num. "+numero+" - "+result[0]["uri_s"]+" - auteurs:"+all_auth+"<br/>"
                             action_todo = "E"
 
@@ -406,7 +432,7 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
         conf = pub[3]#.decode("utf-8") 
         ville = pub[9]#.decode("utf-8")
 
-        list_resultats.append((str(pub[0]),allauth,title,conf,str(pub[4]),str(pub[5]),str(pub[6]),str(pub[7]),str(pub[8]),ville,str(pub[10]),str(pub[11]),str(pub[12])))
+        list_resultats.append((str(pub[0]),str(allauth),str(title),str(conf),str(pub[4]),str(pub[5]),str(pub[6]),str(pub[7]),str(pub[8]),ville,str(pub[10]),str(pub[11]),str(pub[12])))
     
     cnt_nb_publis = cnt_article + cnt_inproceeding + cnt_book + cnt_incollection + cnt_phdthesis
 
@@ -468,6 +494,8 @@ def script_bibtex_2_hal (bibtex_file, bib_name_user, name_user, firstname_user,
     
 
     if single == False :
+        print("SINGLE FALSE")
         return list_resultats
     if single == True :
+        print("SINGLE TRUE")
         return reponse_single_xml
diff --git a/hal/scripts_csv.py b/hal/scripts_csv.py
index 183c07a..b186f46 100644
--- a/hal/scripts_csv.py
+++ b/hal/scripts_csv.py
@@ -12,14 +12,14 @@ from lxml import etree
 # lib csv
 #try:
     # for Python 2.x
-from StringIO import StringIO
+#from StringIO import StringIO
 #except ImportError:
     # for Python 3.x
 #    from io import StringIO
 import csv
-import unicodecsv
+#import unicodecsv
 
-from create_xml2hal import createXml_sendHal, create_single_xml
+from .create_xml2hal import createXml_sendHal, create_single_xml
 
 #################
 ## VARIABLES
@@ -271,8 +271,8 @@ def script_csv_2_hal (csv_file, form_author, name_user, firstname_user, labo_aut
                                     tous_authors = result[0]["authFullName_s"]
                                     for auth in tous_authors:
                                         all_auth = all_auth + auth+"-"
-                                except KeyError, e :
-                                    print ("error print authors existing publi")
+                                except KeyError as ke :
+                                    print ("error print authors existing publi keyerror {0}".format(ke))
                                 resultat = resultat + "num. "+numero+" - "+result[0]["uri_s"]+" - auteurs:"+all_auth+"<br/>"
                                 action_todo = "E"
 
diff --git a/hal/scripts_dblp.pyc b/hal/scripts_dblp.pyc
deleted file mode 100644
index 55a8838923aa3df35e61e99d8c8f6d8c47d07352..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 24066
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
F{{=B0m7f3r

diff --git a/hal/scripts_text.pyc b/hal/scripts_text.pyc
deleted file mode 100644
index dfbabf93bdf573e452eb27597cf4405e5c85b777..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 17777
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
W@6QZUa{pWprWSt(d;hujAN~X4@ZVVg

diff --git a/hal/templates/base.html b/hal/templates/base.html
index 39ab07e..aab1540 100644
--- a/hal/templates/base.html
+++ b/hal/templates/base.html
@@ -1,7 +1,6 @@
 <!DOCTYPE html>
 <html lang="fr">
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
@@ -56,7 +55,7 @@
          </div>
       </li>
 
-      <li class="nav-item dropdown">
+{% comment %}       <li class="nav-item dropdown">
         <a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">TEXT</a>
          <div class="dropdown-menu" x-placement="bottom-start" style="position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(0px, 39px, 0px);">
           <a class="dropdown-item" href="{% url "text2hal" %}">Text_2_Hal</a>
@@ -64,7 +63,7 @@
           <a class="dropdown-item" href="{% url "textmodif" %}">Modify Text</a>
           <a class="dropdown-item" href="{% url "text_format" %}">Format text</a>
          </div>
-      </li>
+      </li> {% endcomment %}
       <li class="nav-item">
         <a class="nav-link" href="{% url "aide" %}">Aide</a>
       </li>
diff --git a/hal/templates/hal/aide.html b/hal/templates/hal/aide.html
index 01979b8..1ba3065 100644
--- a/hal/templates/hal/aide.html
+++ b/hal/templates/hal/aide.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/bibtex2hal.html b/hal/templates/hal/bibtex2hal.html
index 49ec8f5..876c810 100644
--- a/hal/templates/hal/bibtex2hal.html
+++ b/hal/templates/hal/bibtex2hal.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/bibtexxml.html b/hal/templates/hal/bibtexxml.html
index 6014c24..1d80da5 100644
--- a/hal/templates/hal/bibtexxml.html
+++ b/hal/templates/hal/bibtexxml.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/blog.html b/hal/templates/hal/blog.html
index 58e53c0..9fc0b31 100644
--- a/hal/templates/hal/blog.html
+++ b/hal/templates/hal/blog.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/connexion.html b/hal/templates/hal/connexion.html
index 8369bea..57fa5bd 100644
--- a/hal/templates/hal/connexion.html
+++ b/hal/templates/hal/connexion.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/csv2hal.html b/hal/templates/hal/csv2hal.html
index 519ef57..a1e8fd7 100644
--- a/hal/templates/hal/csv2hal.html
+++ b/hal/templates/hal/csv2hal.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/index.html b/hal/templates/hal/index.html
index d27b76a..385ae80 100644
--- a/hal/templates/hal/index.html
+++ b/hal/templates/hal/index.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/text2hal.html b/hal/templates/hal/text2hal.html
index 374c075..8c134f0 100644
--- a/hal/templates/hal/text2hal.html
+++ b/hal/templates/hal/text2hal.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/text_format.html b/hal/templates/hal/text_format.html
index 318b428..240e2cc 100644
--- a/hal/templates/hal/text_format.html
+++ b/hal/templates/hal/text_format.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/textmodif.html b/hal/templates/hal/textmodif.html
index 9691b14..f4ab8c6 100644
--- a/hal/templates/hal/textmodif.html
+++ b/hal/templates/hal/textmodif.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/templates/hal/textxml.html b/hal/templates/hal/textxml.html
index 42b886b..87896e5 100644
--- a/hal/templates/hal/textxml.html
+++ b/hal/templates/hal/textxml.html
@@ -1,6 +1,5 @@
 {% extends "base.html" %}
 {% load static %}
-{% load staticfiles %}
 {% load bootstrap3 %}
 {% load bootstrap_themes %}
 
diff --git a/hal/urls.py b/hal/urls.py
index 6932707..e3f0e62 100644
--- a/hal/urls.py
+++ b/hal/urls.py
@@ -11,10 +11,10 @@ urlpatterns = [
     url(r'^bibtex2hal$', views.bibtex2hal, name='bibtex2hal'),
     url(r'^bibtexxml$', views.bibtexxml, name='bibtexxml'),
     url(r'^csv2hal$', views.csv2hal, name='csv2hal'),
-    url(r'^text2hal$', views.text2hal, name='text2hal'),
-    url(r'^textxml$', views.textxml, name='textxml'),
-    url(r'^textmodif$', views.textmodif, name='textmodif'),
-    url(r'^text_format$', views.text_format, name='text_format'),
+    #url(r'^text2hal$', views.text2hal, name='text2hal'),
+    #url(r'^textxml$', views.textxml, name='textxml'),
+    #url(r'^textmodif$', views.textmodif, name='textmodif'),
+    #url(r'^text_format$', views.text_format, name='text_format'),
     url(r'^aide$', views.aide, name='aide'),
 ]
 
diff --git a/hal/urls.pyc b/hal/urls.pyc
deleted file mode 100644
index 47085d4983a5cc98e90debdf6a04c4b00479ec72..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 573
zcmYk2OHRWu5QZm@zS0)DffHnrRU@%Rh!d~~y9gnr_0Xnr?5LiWvW81=Gw#6wV8(3<
zjx&#MCh<RxzNd-)`gmHxX^q(5^Xop@DBb~RfF^)4fF^`8gg}L$BG3^uF_bX`$axGH
z!=?v{cOTwE4+kFhJsfs$<l(@>q=RD*haOHkIQ4Mk;f26e56T48B|K&`R#*S<%0iB4
zAgNjEokEH@-feXqu+PL$kIlZuSLdYpIi;ALsT%Z^+9*7@u~e4U7(CS0q$KxnPTf?h
z3eO-V>Hh~@;yV_)y;)Z}rJ<Bh*|A1=pubv|J!JADl5y0gGAldhGhXJb-xbWD@B{cr
zv=^ehka>!}7@50}v%DVus;!7{Yh1<*{*22x&DXZUd{H^7(c}vEE#)j0&0ZW?tDOY7
b96oQ~{0z5^RXdG$BEwDCT!*vxDmXsB2HSVO

diff --git a/hal/views.py b/hal/views.py
index 55e800f..2f08efe 100644
--- a/hal/views.py
+++ b/hal/views.py
@@ -4,19 +4,19 @@ from __future__ import unicode_literals
 from django.shortcuts import render
 
 from django.contrib.auth.backends import ModelBackend
-from django.contrib.auth import authenticate, login
-from django.contrib.auth.views import logout
+from django.contrib.auth import authenticate, login, logout
+#from django.contrib.auth.views import logout
 
-from forms import ConnexionForm, Bibtex2halForm, Text2halForm, BibtexXmlForm, Csv2halForm, \
+from .forms import ConnexionForm, Bibtex2halForm, Text2halForm, BibtexXmlForm, Csv2halForm, \
     TextXmlForm, ModifTextForm,TextFromRG
 
-from scripts_bibtex import script_bibtex_2_hal
-from scripts_text import script_text_2_hal
-from scripts_csv import script_csv_2_hal
+from .scripts_bibtex import script_bibtex_2_hal
+#from .scripts_text import script_text_2_hal
+from .scripts_csv import script_csv_2_hal
 
 
-import httplib
-import xml.dom.minidom
+#import httplib
+#import xml.dom.minidom
 import csv
 import re
 
@@ -329,7 +329,7 @@ def csv2hal(request):
 ##################################################################################################################################
 ## TEXT2HAL  #####################################################################################################################
 ##################################################################################################################################
-
+"""
 def text2hal(request):
 
     reponse = ""
@@ -413,11 +413,11 @@ def text2hal(request):
                 #result[6],result[7],result[8],result[9],result[10],result[11],result[12],))
         #reponse=("reponse HAL")
     return render(request, 'hal/text2hal.html', locals())
-
+"""
 ##################################################################################################################################
 ## TEXTXML  ######################################################################################################################
 ##################################################################################################################################
-
+"""
 def textxml (request):
     reponse = ""
     form = TextXmlForm(request.POST or None)
@@ -760,3 +760,4 @@ def text_format(request):
     return render(request, 'hal/text_format.html', locals())
 
 
+"""
\ No newline at end of file
diff --git a/hal/views.pyc b/hal/views.pyc
deleted file mode 100644
index 8286f15d6c3a2fdbf97a075a466c1f33371ffb94..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 5159
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
KsBUgH-u@r**Aeyr

diff --git a/haltools/__init__.pyc b/haltools/__init__.pyc
deleted file mode 100644
index 0a3762704968ad1dd7452b24788e247f1617024a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 143
zcmZSn%*z$y)e@7;00oRd+5w1*S%5?e14FO|NW@PANHCxg#TGy@{fzwFRQ;sH;*!kN
zJpGi^vVs!*jKrMOyfP3~lAoVbj9|paXXa&=#K-FuRF-f6HQVIor<CTT+JUSn24V&P
DR3;y!

diff --git a/haltools/settings.pyc b/haltools/settings.pyc
deleted file mode 100644
index a9a5d467401a8caaf5c8894bcd075a2658365f0f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 3235
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

diff --git a/haltools/urls.pyc b/haltools/urls.pyc
deleted file mode 100644
index aa3a9060cd055d933ac2d1a5d1c8d016b8a8bfb2..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1446
zcma)6OK;Oa5FRIKnz*k}pm5-@2c#rYu@!`b6ak_tttf(4O3NiebzOUtII_K#cT%W0
zmVeBR3(Txz+E5|YiO2KU{buIdv8zAV?9rDWUjmq4OZ0q8xBf*U1Q?REAgn-aK~jNX
z1uV9!5LY3o!LU}?HHeoWsl%{d*h>&EL(+g@qp<5{e-nny5=B-ZTn1T#sSVQ=xT*kq
z8X%hxHsQ)*&zKUff}}tB>o8q|&^F3CEwElL#5T%U>vrs38QZ)ayI;m0l(BFHjytQ&
z!S@Ql#E(&_Sc}htk78G)qi8(KeT-CU+b0t#&SrU>`G_)4^_hqxjUrbwlxBk#sKiAi
zziLP9t6U^1mm*3>Do+fA$YSYhDYTS*ThKK@%yi#%LltNzociflWx1Nl0G&W3u1wvY
z)9bmYvMA6luXZWFcI~}yenMcnZ|~32fXgfL8q}U6cEV8jsfdzH<=7Wul&eG}m!6+x
zbLWlq&*$q+&(y(<7HKP4oxFYew7orVZK4vnEmA*`uiLD*yY_DEYyIq;dJAvh{;v*&
z6Pa@<j^U~-=sjVX`tMv1?{IwWF-)iXPfZ7D5YNIW9TO2IBexgOiIyB47;*#^LubTm
zWv44fb2|G4WyP7$VWcC6nJ;T4eY@Os_nOaRHFk-|GF_V;2Djbq+R<;iIu=bLR!K1L
z#^86<50fY@%m$CDM5NAi;i<C+X~KdIO)%gxiFt|vsi4_$Y9L%>$WzTAH0mZdu8~0#
zI7?)TUak}#b{>+;;CLQIJP%vE#ti5+83r8J7b2KP=L1vr%7TA1Fr__ObejB5QTu?K
z9@I!63mu^}3e%1ZMoRhSVUz4nd+!c*JUUdg|5}5iqZ4F4J{+3}cTTEtv%Y&=__=@9
zO@P7nj}A|Y5Q7yK2RmfJwa_ofbb0Dsns$un4GrZ*hAxpQ(+hr>&&RdG<vZCWa>iGQ
e3TLr=vq8GvB2l+mR;xm{wN>4;9#@}O{QCnrMtlJP

diff --git a/haltools/wsgi.pyc b/haltools/wsgi.pyc
deleted file mode 100644
index 9ade6d4f00f588df7e5832262d2dbb1a700a0f85..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 603
zcmYjOQBT`25OxyiP_{`-n|StPA0SqxJx$ZJAy`!eMOv9ARY<9cuc<4?7sW?`XZ9!e
zJNN-`Zim21zB}LfzWdJ39^U7dCx0(1@qcA(zw;js8H^B9#zdG@xI|3Z;V%;|6-_3l
znMfcJ%Pq0o7G_JBZE>G+C=>Tw*Na7yelK$UW61wZh9g;_pW9l_v6Bn!2+;-EcDRI!
ziaZ~YgxeMa1W5~!n+olmzH%USkXklqt{ogWSb>u(-Pv`@>jsRR&2-y3TWPZBXEWye
z$!!|!Kw8fon{`5>XL1|l+&b8o0U%!xwc(3W2CGn*rS>&GYpSqO;MJfQ4AcT|2$g}>
z;avls)J>?Z%IzbsaX;Z1=@UZ@RK`sCN)7FC;^^eZcz9k;jxR1o<Kd({J3sn;dK^A*
z>iI5;07TZ;q5me*MJP*_RhE>pkAZgCY$O&HPgcZEzc{uz41Q%h^ptaesSM2ZwIh1V
z+gED(@%#&f&%EX78c<g{kmY#|tXfj6iV34xKh%p8n-=XI?Qr4O&69kKeu&UZ-=(|h
G$MgyNtf}h&

diff --git a/requirements.txt b/requirements.txt
index a1ab91e..6968a60 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,16 +1,13 @@
-bibtexparser==1.1.0
-certifi==2019.3.9
-chardet==3.0.4
-Django==1.11.20
+bibtexparser==1.4.0
+Django==3.2
 django-bootstrap-themes==3.3.6
-django-bootstrap3==11.0.0
-future==0.17.1
-gunicorn==19.10.0
-idna==2.8
-lxml==4.3.2
-mysqlclient==1.4.2.post1
-pyparsing==2.3.1
-pytz==2018.9
-requests==2.21.0
-unicodecsv==0.14.1
-urllib3==1.24.1
+django-bootstrap3==21.1
+lxml==4.9.0
+mysqlclient==2.1.0
+requests==2.26.0
+
+
+# pyparsing==2.3.1
+# pytz==2018.9
+# unicodecsv==0.14.1
+# urllib3==1.24.1
-- 
GitLab