From f8618d62b2ad10d44eb04645fd9509b201ba751b Mon Sep 17 00:00:00 2001
From: Julien - Le Filament <julien@le-filament.com>
Date: Wed, 16 Apr 2025 14:31:32 +0200
Subject: [PATCH] [FIX] check response if no right

---
 models/__pycache__/__init__.cpython-312.pyc      | Bin 283 -> 0 bytes
 .../res_config_settings.cpython-312.pyc          | Bin 1908 -> 0 bytes
 models/__pycache__/res_partner.cpython-312.pyc   | Bin 1561 -> 0 bytes
 .../__pycache__/sharepoint_mixin.cpython-312.pyc | Bin 7097 -> 0 bytes
 models/sharepoint_mixin.py                       |   9 ++++++---
 5 files changed, 6 insertions(+), 3 deletions(-)
 delete mode 100644 models/__pycache__/__init__.cpython-312.pyc
 delete mode 100644 models/__pycache__/res_config_settings.cpython-312.pyc
 delete mode 100644 models/__pycache__/res_partner.cpython-312.pyc
 delete mode 100644 models/__pycache__/sharepoint_mixin.cpython-312.pyc

diff --git a/models/__pycache__/__init__.cpython-312.pyc b/models/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 1f6230c0353580e262c342233276a27166593b23..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 283
zcmX@j%ge>Uz`)?=^E5q<fq~&Mhy%k+P{wBs1_p-d3@HpLj5!Rsj8Tk?AU0DDLoQPk
z6PV4M!;s4y#mvZ1$)d^nl97RdL6h;8KygN5QEEYcW?o5rZe~Sho+jfh?xNJ<_=3cu
zlDyO+O~zZoAZ~JgURq{)d~s??NoHPpv7aW(Erudy1_p*A77)S8z`(GQ;WNlBzZ~>4
z@^e%5ON&#B^ixvH^z&2l^9?QZ3yLz!5=&C`i!<}n;t{s$=jNxR<`nD4$7kkcmc+;F
v6;%G>u*uC&Da}c>D+2i&<kDh31_p)?%#4hTcNygFGDzNIP%PqLU|;|MtLRHE

diff --git a/models/__pycache__/res_config_settings.cpython-312.pyc b/models/__pycache__/res_config_settings.cpython-312.pyc
deleted file mode 100644
index 77185dede05cbfe227074b18e2216cb4b780f9b4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1908
zcmX@j%ge>Uz`(FI>}h%cCj-M{5C?`?p^VR73=9m@8B!Qh7;_kM8KM{%L2RZR#$2W-
zrd;MIW<~}k26u)O<`#w&mQ>~}4yZmPYBe*26UAD|s>${e#L;BD#gUR&l3J3Po2tol
zi!CiPH7BL`7F%w9N@`AVGDrywLp3veu3%tbXlIztkjfCnn8Fanl)@OroWc~v!o-lu
zn#BWCj-XSRS2IF*QS3O?u)x)DbTFhbrm(hfL~(*yY%Ls7TpbJ*j8WXd44Uk>ID=A)
zo%8e3GSjPsi&BgAlEG}f;?$Co%)IpCDv{uf#G=%K{LH)(g@VMQ#N5=9)S@c>(Bjl0
zg<`l=m0)mca#3mtl29_#m0-8BFfcHHeEj(o0|UcU#_0?tU||r^$x_46%gVs88pL5>
zV5nuRVaNihhw@=m3Zo<g149-&jE|sGm{OS6u&ic+h}1HXte+J{KXVOZ7AM3kWU_{-
zhItJe%oaw58b(m~`TY{kEP@7FJUo1UX%uJXr^O?}M=voYH!}}OAilIXwJ1I_<rae`
z<1O}-)U?FXoRVK!1ho}|gE>AkMU&~41WrSxFk}$=SZ}cwmlmWJ-Qr45Er~Bn%qdMR
zzQvrHS9XgNBmnlqEw<7EP&(FRy~R?Tnv-^mxhS=`h>wARp@^S>f#DWse0*|FVsUYN
zd@(3PDJUo?H2m_`&&bbB)dzV@KP9zHKR+cu-_Sz8peVB}u_RR=&1?FQJfUBdS{x5a
zbMde=r&mx}B*?(PP$dFSn|dIpLEI|Fz`#&k$H2hwqk-WLpKxdTMLvbgd`cb6H<Z<v
zTP(D=pyPN^+3C8n&qZaQ8$4zQm_9HwsQ5B|W?)j`y1=3EfsH{;Yk9=Nhzoko7gb%Z
ztNLA3^}E4iaX{$<GlQBxNSzwj1rDVTYz&+{{al?~H&kseM3sDCX5bY5!obAI^?{8+
zK)8eJGbn9fPvb|RX}pFZ3#14QL(?%RH=xVlNV!O9j#LwwYZ$WF(5zu#U_h8y0x#G)
z8EY7NMG^Thm_d`puLzV8ia^C_5ibJ+gC<*%5IFveQ%fMJ9g!%C1VA!eAQ?zRX)+aw
zf>Mk)D8fLQQ=y?q0wf@V7Pkm3${?lDkhs0U!PC#t$#FqY?IMTzbq>Re9ELY|%yzI`
zw+Ovx5&DH06cro{oV=KdEOw||w~D-I6$w`Kg@Zvrw6pvozv5+n<qI6jMWA9tljjyk
ze0*MFZfbn|Ew1?Z-29Z%91xo)KEALtF$XHc5ucftky?~la*HQECAB!YD6^m>Ge55g
zR6N~can49ALh?T-$rge9c8eF9J(5#%a^mAP8H>O{04fh1ARz!M#EL)!DD;aRKpt*k
zxWTW|;BiA(v%%+qyw;4e`PDP4FKF9bmbbmYB6CAgXMxyq>4nl4bR8}$I$mIr`y#~6
zD*RoFlU3yd11GBr*jHd9{WRH%K#A)X3n&AEomvFSq__A&iW2jRGgI?Qd_mO_Sn)~*
zh(=Jn{Nk{I1cP0XIs*d($hpPx3=9k(m>C%vzp^nf$~|Y0|H7uis4{`=x`66M0oAVz
IDvS`D0kP-5&;S4c

diff --git a/models/__pycache__/res_partner.cpython-312.pyc b/models/__pycache__/res_partner.cpython-312.pyc
deleted file mode 100644
index 8a8b7b3bffddf4ef0e353f3db0d90507f3e55003..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1561
zcmX@j%ge>Uz`*b(`e}L=3j@Pr5C?`?p^VRV3=9m@8B!Qh7;_kM8KW3;nWC5&8JHN{
z8B&;97*d#1nX=fRYLTeb%n(i#OC^gY>q`(vlj#<7VnOCDw%q)b)STjEkQfX@RWp2!
zU|?WqXPC~A$`Hkv!Vtxj!WhMz!W6}l!kEIG&J@L(%9h0k(}bWq7}6M1SXww%LxrL^
zQdnCUqBv97S{S0ZIv6S#qqu_^G}&))1*H}TBo>wAr506j7o`^K6~H(_sl^H~jzDon
zVo_>Aer8^YUT$VZW?nKA)L;+=aw`ab4q;$mn94Yvp#&rf#+@uR485!j3^k0a8NmV!
zwM;ckE)20k3=Fl*HOyJCP=!c>Ntl}%8G1xm7;2b;88jLFG?{O)7MB*J7Tsb?E=o--
zNxdbRnU`4-k8oIgN@h`Na!Gzsr6%hwmg3Z$v|F5Ii8;mbIhn;Jw>Y3)DZa%HW!>V8
zk5A4?EG~|ZF9x|nK|w*G;g_?1Mt*Lpera)Pk$y^QnSOpse!iiFenC-YSz<}5esN}g
z8j_v*keJgiN-d6u8mm`OS;Wb}z)&TK2w6RdlX(~z7>bP<7#MyuFnnQS5Rsf{KGAN0
z=4D}>4vrh*@}C$OISo48Z}13T=h3~$qkEM{{{u54r@;e$@ecmaprA>Hh9QW}z{0@5
z01kB}NP1+fVaNhYpb{xeDa>=2gBez`_*DsI7U?A>mt^MW6@%#b(xRMO%z3Hhn#{LY
zN-7IdZ!v>J*h&(M(o;(`8E=Uqg>G7YPD*MKNXtsbB5sgRK#ox;5@29pxFriQHNGen
z5()7o`ADHurGXR_cvXsk%#~$eU}#|Yz`-D@c|%zIy0Gp=Vci>I(jVDb1h_shuyAq}
z2{JG+U=NEZa9CguiDH2ohAdEsp#~5GBE6-6!Vna$XewY~SR~BAz@W)|O9V4qGE<5`
zMMseY0|P^mB*+^`!6OFsG+K(SQp5}wG$o+0C^iBI$OC@i>--v*_%$Bz2wdmUy2zt-
zg-3@_C~5NC;)svWOUzA;kH5tgAD^3_Qknx|^Tfv&mL}#vWmv&VZt=vYq!uR^Wfp*v
z$Ssce%)E@$qRf&aP@vrs0;lzONK%f^EzK#(1Sj+&DUg>z4!y+-%~8pzIXUt1nv6yK
zuz+v?r;{R3xd<lMK@wJ=tkA-6gGaK#^@gxQgU<~C*$eW97x;}DJRY!eTxXTO$SVDr
ziIr92GcyC5%m)zb6CXP(*Eb<<R!AxU8|DYf@Suzec4!eO0&lVUg345|^hySBf&shW
x7l#cb2<(b985kHqaa0U){|9D9M#k?P42-g0*c2JLCWuX!nJDv>L6H$+4FKx}f*Sw;

diff --git a/models/__pycache__/sharepoint_mixin.cpython-312.pyc b/models/__pycache__/sharepoint_mixin.cpython-312.pyc
deleted file mode 100644
index 76d4b69e91487e5daf71b94db78b0edde625abc3..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

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

diff --git a/models/sharepoint_mixin.py b/models/sharepoint_mixin.py
index 91d6eb9..dffdd66 100644
--- a/models/sharepoint_mixin.py
+++ b/models/sharepoint_mixin.py
@@ -60,9 +60,12 @@ class SharepointMixin(models.AbstractModel):
         root_site_data = self._get_root_site_data()
         site_id = root_site_data.get("id").split(",")[1]
         siof_drive = self._get_siof_drive(site_id=site_id)
-        self.create_folder(
-            site_id=site_id, drive_id=siof_drive.get("id"), folder_name=directory_name
-        )
+        if siof_drive:
+            self.create_folder(
+                site_id=site_id, drive_id=siof_drive.get("id"), folder_name=directory_name
+            )
+        else:
+            raise UserError(_("Problème de droits Sharepoint, pas d'accès aux drives"))
 
     def get_ms_graph_admin_token(self):
         """
-- 
GitLab