From eeff92a2bb15ded3b1be5b22d491543230196290 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Wed, 21 Jan 2015 18:58:14 +0200 Subject: [PATCH 01/28] upload mail_sent --- __init__.py | 0 __openerp__.py | 17 +++++++++++++++++ views.xml | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+) create mode 100644 __init__.py create mode 100644 __openerp__.py create mode 100644 views.xml diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/__openerp__.py b/__openerp__.py new file mode 100644 index 0000000..8e71717 --- /dev/null +++ b/__openerp__.py @@ -0,0 +1,17 @@ +{ + 'name' : 'Sent mails menu', + 'version' : '1.0.0', + 'author' : 'Ivan Yelizariev', + 'category' : 'Sale', + 'website' : 'https://it-projects.info', + 'description': """ +Adds "Sent" box. It's the same as archive but filtered by Author. + +Tested on Odoo 8.0 ab7b5d7732a7c222a0aea45bd173742acd47242d + """, + 'depends' : ['mail'], + 'data':[ + 'views.xml', + ], + 'installable': True +} diff --git a/views.xml b/views.xml new file mode 100644 index 0000000..905bacc --- /dev/null +++ b/views.xml @@ -0,0 +1,37 @@ + + + + + Archives + mail.wall + { + 'default_model': 'res.users', + 'default_res_id': uid, + 'thread_model': 'res.partner', + 'needaction_menu_ref': ['mail.mail_tomefeeds', 'mail.mail_starfeeds', 'mail.mail_inboxfeeds'] + } + + +

+ No message found and no message sent yet. +

+ Click on the top-right icon to compose a message. This + message will be sent by email if it's an internal contact. +

+
+
+ + + Sent + + + + +
+
From e2f83f8a30919be461b99ff8921c0322b1d81453 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Wed, 21 Jan 2015 19:02:28 +0200 Subject: [PATCH 02/28] [FIX] name --- views.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views.xml b/views.xml index 905bacc..64da853 100644 --- a/views.xml +++ b/views.xml @@ -2,7 +2,7 @@ - Archives + Sent mail.wall { 'default_model': 'res.users', From cfa6db94f7a644be7c2b4114554ebcfc89ead934 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Thu, 22 Jan 2015 12:40:09 +0200 Subject: [PATCH 03/28] [IMP] "sent" field for mail.message --- __init__.py | 1 + models.py | 11 +++++++++++ views.xml | 1 + 3 files changed, 13 insertions(+) create mode 100644 models.py diff --git a/__init__.py b/__init__.py index e69de29..bff786c 100644 --- a/__init__.py +++ b/__init__.py @@ -0,0 +1 @@ +import models diff --git a/models.py b/models.py new file mode 100644 index 0000000..55ba919 --- /dev/null +++ b/models.py @@ -0,0 +1,11 @@ +from openerp import api, models, fields, SUPERUSER_ID + +class mail_message(models.Model): + _inherit = 'mail.message' + + @api.one + @api.depends('author_id', 'notification_ids') + def _get_sent(self): + self.sent = len(self.notified_partner_ids) > 1 or len(self.notified_partner_ids)==1 and self.notified_partner_ids[0].id != self.author_id.id + + sent = fields.Boolean('Sent', compute=_get_sent, help='Was message sent to someone', store=True) diff --git a/views.xml b/views.xml index 64da853..804d323 100644 --- a/views.xml +++ b/views.xml @@ -13,6 +13,7 @@ Date: Thu, 19 Feb 2015 19:36:02 +0200 Subject: [PATCH 07/28] new website https://yelizariev.github.io/ --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 297a48d..97bc940 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -3,7 +3,7 @@ 'version' : '1.0.0', 'author' : 'Ivan Yelizariev', 'category' : 'Sale', - 'website' : 'https://it-projects.info', + 'website' : 'https://yelizariev.github.io', 'description': """ Adds "Sent" box. It's the same as archive but filtered by Author. From 744b06694d0e040cea9c0d6209d41f69366e1be2 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Tue, 17 Mar 2015 23:34:11 +0200 Subject: [PATCH 08/28] move module description to README.rst file --- README.rst | 5 +++++ __openerp__.py | 7 ------- 2 files changed, 5 insertions(+), 7 deletions(-) create mode 100644 README.rst diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..be84723 --- /dev/null +++ b/README.rst @@ -0,0 +1,5 @@ +Adds "Sent" box. It's the same as archive but filtered by Author. + +Tested on Odoo 8.0 ab7b5d7732a7c222a0aea45bd173742acd47242d + +Further information and discussion: https://yelizariev.github.io/odoo/module/2015/02/19/sentbox.html diff --git a/__openerp__.py b/__openerp__.py index 97bc940..ca57b5c 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -4,13 +4,6 @@ 'author' : 'Ivan Yelizariev', 'category' : 'Sale', 'website' : 'https://yelizariev.github.io', - 'description': """ -Adds "Sent" box. It's the same as archive but filtered by Author. - -Tested on Odoo 8.0 ab7b5d7732a7c222a0aea45bd173742acd47242d - -Further information and discussion: https://yelizariev.github.io/odoo/module/2015/02/19/sentbox.html - """, 'depends' : ['mail'], 'data':[ 'views.xml', From bba9d408e951c04bc638a2cc7b970df34fc6f904 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Thu, 2 Jul 2015 16:35:12 +0500 Subject: [PATCH 09/28] [DOC] add icon --- static/description/icon.png | Bin 0 -> 2140 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/description/icon.png diff --git a/static/description/icon.png b/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..79f7d8fe294f838cf2996940c40dc08dde60642f GIT binary patch literal 2140 zcmV-i2&4CjP)=D+Wys1fe}G$Q#Z2832St25n<}h#$%L7sUBHn zgVlR~4gtNOs+KA#@5q|?_&of{fCW3h;+eI-@is^))^C>Ap=O06Yq-$?c7APo?&VKv z))(zizAhAwtYInZ&irDhM>SGBFM>?d${LzoxNVMo=er+dj|dVX82(itvPy&nJI7R} zxal|{b!VXeY~=?NW24HG!g#W&q%^mz9C_k)O~vB$l!nR>c7Azkc41B0?h`G%re>$6 zR3XK_wP$L$`wA`+vfQ*It2kJ&bC8N#=Y*z`?T#poH4<6rMKBSth@G$Anh#P6geeX3 z66#s7^ZuFn%%U9v!&L5`a;i`|jy4C6tV1;wvTsBRf(1LrR7N-{7FL;Ru=vP|@loCg zW(jHMC_PwJ+DqF+1@u$zm8o8m$Y1m0V>0T?5;C37EIq_^W|6qn&f)G(Em&B}uDzZf z*)+}sw{t=Y4awlQ*0UI=qn@0G^f!D}&U?lzXXnrqYS25*U`_+Qpa)L`slkiwNPnpt zbLhf?onzn&_-r^=Y+@25re#c%ToI(Yb5h;e6h}ke&V&2_vM3~m`<859t@^AmkXN#4 zp3=nL641^=Hb@NJ0y10#e8NYUd#FM=yd}$j-ZOZiJuPn=y})eY?Y#H?ythe(9+=(P z=pO{n_Ag1zK#!ilNhilfXs;Am_;fC9#?QGvtNfjZ8h);==7&rFJ5QsnusaH>>SjHY zMC`QRjtOGt!fz}(jiG1vi5A$ZVuAvl9f!Vzpm3p#doq~Eg#RkU_3sSy1kxiU%8{*-oYZcOz=#QLgi{iP%6NR;q2W-(ziFHtAxczhQ%>g55VsxmVxu{OgA(z8>)V_eL6l3DJe$G5=tJp1|FDThBVI=FE7j=3tSDuEI+K+>VJ0yjG=W@S`oh zY;UN?#paSycm6BhAH$yR>Hg=JAHz8+5-u#Cw5f387dA))IagN=LE)YiRtGqa4{&&- z?Akk2Q!(?$O{HOxfl1vpCei`ivon?ZK`rFDC~Jz{*?3agX(WqeLDAmP6g%rA0{0<> zeqtzKYj)#fyZMfN2OiuS5UVdK(E;HAX;YO|@Z}oGtA&1=LO(l>HnWdoj~#w9CnQPu zz$YVGP~7xI^+ijcUcstRfTEHe{7dZ7Q=w&u@tA}I)g3C3b#`)vCi?y*=jMs3M4_;7 z>sC2k0T-cEZ{)}r0)&rGk$e2;VuY_meg`{ogL|Bk!JluaKhH%NZ8kn?5uft;?gWym z*MCY|fYs06&r)EvXweNU2#O3lwsaSN3LjB|<)5GbI&(^F8Ja$Saf5Dn zfe8N*NS_HTjLe(YbWiuKO3@!C&=suZc=@z@*Skh)DrGicOE-M=A%!7Zj9>aSC(&v#nWVj-o?-d4Br_8Z zDP85P;LTw*XT(K^Ln=~W$+dIA7^DnX@{`gzERF6PYOuNDqSwU8{M+dh76b)Z$^Np8 zK`L@#(IcfdSX4>r$FmU4GvlLe(Pp~uq7PD-^kM2p`;8cbRHVRCk`&s%0t^5+Kg1eL SSUIi$0000 Date: Wed, 8 Jul 2015 09:20:21 +0500 Subject: [PATCH 10/28] [DOC] fix modules categories --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index ca57b5c..297940f 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -2,7 +2,7 @@ 'name' : 'Sent mails menu', 'version' : '1.0.0', 'author' : 'Ivan Yelizariev', - 'category' : 'Sale', + 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', 'depends' : ['mail'], 'data':[ From 9f4e93b26c6f864049ebbc26281068575c580796 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Wed, 8 Jul 2015 09:40:06 +0500 Subject: [PATCH 11/28] [DOC] add description to mail_sent --- README.rst | 7 +++-- __openerp__.py | 4 ++- static/description/index.html | 49 ++++++++++++++++++++++++++++++++ static/description/menu.png | Bin 0 -> 5961 bytes static/description/messages.png | Bin 0 -> 37815 bytes 5 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 static/description/index.html create mode 100644 static/description/menu.png create mode 100644 static/description/messages.png diff --git a/README.rst b/README.rst index be84723..d8bc32b 100644 --- a/README.rst +++ b/README.rst @@ -1,5 +1,8 @@ -Adds "Sent" box. It's the same as archive but filtered by Author. +Sentbox +======= -Tested on Odoo 8.0 ab7b5d7732a7c222a0aea45bd173742acd47242d +Description: https://apps.odoo.com/apps/modules/8.0/mail_sent/ Further information and discussion: https://yelizariev.github.io/odoo/module/2015/02/19/sentbox.html + +Tested on Odoo 8.0 ab7b5d7732a7c222a0aea45bd173742acd47242d diff --git a/__openerp__.py b/__openerp__.py index 297940f..4df3b34 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -1,9 +1,11 @@ { - 'name' : 'Sent mails menu', + 'name' : 'Sentbox', 'version' : '1.0.0', 'author' : 'Ivan Yelizariev', 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', + 'price': 9.00, + 'currency': 'EUR', 'depends' : ['mail'], 'data':[ 'views.xml', diff --git a/static/description/index.html b/static/description/index.html new file mode 100644 index 0000000..3efa82b --- /dev/null +++ b/static/description/index.html @@ -0,0 +1,49 @@ +
+
+
+

Sentbox

+

Quick way to check sent messages

+
+
+
+ +
+
+
+

+ The module adds usual menu. +

+
+
+
+ +
+
+
+

+This menu shows messages in threads (like in other menus), but shows only sent messages. +

+
+
+
+ +
+
+
+
+ +
+
+
+

News & updates

+

+ To get information about new interesting modules and updates, subscribe to our website RSS or follow @yelizariev on twitter. +

+ +
+
+
diff --git a/static/description/menu.png b/static/description/menu.png new file mode 100644 index 0000000000000000000000000000000000000000..9c7664c260c377e8a962bb001fab24ebb4a250ba GIT binary patch literal 5961 zcma)=bzIaC&o&ny56%p zS%Ds8)=hm3N;U}ym}=dM)i7nG6b*l(&Rn<;h_D1*C8Nv!W%gvL45SNU(=B z1?Zsq$wXIFkQ zx!T6#G0;*4;?||Io0i|IL3>!l%C;@gzl*7?`aL zZCC5|8u=h;mc)z+Tb^iU0JDDQXizlpvwm4xK~k-kKiY)eZ??f;G<^`~#BoRTkzh~u ztjr5xNw-VYAndAMtLqsI4jQ1LJ@9-XMGao8RLDCLohdSt=i@C?7ysS4jkQx-gm=RICs7Tb8j^oAXB zGT-{$v(>K*Svk6J_tkamSylV`Hcuj8m-}VaI7qYfh=<_{ z!{Q>-uV`QnVzwW0{kmn(Lo@9(yhB<+B9>>n*$*u^Ch($VfDAmG=?ou(URn{I?v@L3 zM_Tg>E_(R3xk87GeBxL+?QEfe>$h8&Nc^9s1#c{33kw zy$DI_)4)3dPrw3HxEv=Je{OZx-zH!Hj7^iwPf6{KMEByXYRa<@qO5c>*H668V$;xzGay|FW- zRRC$01QWX1JQ+y>MvEsjfONN=k~GML3-mr#r~mWN1SxuaXK^a3$vewH24jD`F|E*0 z;5bxPhLIvN)lQ@sZryJxFC)C|{nl^Q>Jv+1NlaAjon_KjRvGX%V7@@URlP}Bql~3grOCqu~#PsuCcMA;kZl4G{m5F zEK+wYv`(6k55Qa#D)?UmwMJZxYfRnUBk>(oLFE;4d^&SJxur2F2#6pwdHYz*v&HJt zW2np^f(i(liW{9j-H>|Mr4!j$;$YY=S8Y&2l?xE>;D^a&slBP-4Jxh#;iy&1j{kOV zy_$(PB;RX-CyC`{@}F!sxtpcjeEbB$Qm7HWgvjZc75i2;A@Ch8@>|?1A!#`E z)-E)Za)_b9tOTg5o4b7K!lXhO(G-&K5}sQ*&oO^-4$u1 zaM4YbO(MA;)c?7C*?c>dn_p%?m8g1-wLJ07=}0sEn;K`ZbLX4sw&PBHwOiA)XWRjJ z5BGN>R+0gH@r!_j<~e*T!h}c#Dc#u#4AW2(rgP1|c*G-L9_ZCg)pSBaS1O=&b;w9?PHciIdr!Nu(y!77Wf9qQwH@RfUjl z(-^%}D9ii5@8!FlV8%a8!Q4zZP2r!TaQ<1iR}-K;Z^P>E-`w4GZEVScI6-GU;7a>1^-d*iI7>4lKD{+)JGoOngit+*aS9 z551LWT#Q;h4zE6D*D9a|rMGk6JXX7lUzn;sI}^sg(_Gns3=FsuFw-|i#TQP)MLwH+ zep6NNF0R39y}nVftqc%*_bpFzY-Q5r2pG8^KH?uh3-W~RaK6~u$CcjH=5wFU-^^)6 z^`tnQ&@On7%VX1D;d#{>2(@0O!n+ZVR(~?M(EqWvm~AZ_4mLT^+%%-!uN?dhYrqiTvTPzrimw7E&7 z*CZ)*#_1z}KPY?*(o{Q2!g4YMM_AEBs-(}wVkpF@+DJx1~j8 zkro#i@fm44kuzWtUs&`Wmcge#f}vQzkCX4^8jw8R=6=MT!F^?4O4;mV!n>~;zvI0@ zRHw7hHWcOHI&4)pbacD$<;_Q1#QbYSOBhXA$=J+xVezXAWlR7ERD=+=ay1Z;PZXptquU%j#XQjj|l7sI8bZGQJUMfS9eQqPmUF4Dw;08j^|UMmJ4Vv z8u3TW((~L*AFZi`j+3HqG{dIImuFvmra}h{knhI{A=SNL?Zc;0^TLvGadN)B+Hmh8 z)~BaegU^l$r+z;4(E3wc=B5Ayy(unUO)Pt9l#y9@1Y;<6B$EB$3EOkQOq^80xUyHS zl1tHvOKDe`ZmH}J6^h0Gx%E`;1s6x_{Nd;@wRX@i^p+s)R1Z7`GAE9A*s~Spm>0jiuClH41gtzYwviju#J%c69bj2^kPhXam zS=EYC?oG&qLh>wibXFA?)EylB@6<^DF!A{h{}u_6d67U#@L+u%$^7*tGjos4c3GuM z>w*Q>V}+8E1Mh4?zDsw-l%eSvpNi(I>&XIG98;~YipiXAh)l#850fQ%CJ)oS_ul(+ zQ~3Yz?*CNR=SRu#M444Y0nuwdDdF`wWevHA&1E#4m$rz0Q){*SN}cY)tPwgsr^`1F zB*|h3kUdI%GgG+_Ag4|Gi6^in$C3rJns>AZmz?&~Xa4*nxaeN!d`uv$PeXnAYdq}b*zMkg$NDL#!j#Y*8d)8u+K8=GL8 zHmB`2N*OyJ`&PeIgx~{IG;Zvliw!s}!qckkr{}Q-L+0x%^Xd=jOhqpI!&y?skI`{N z1I{d5p@V@fm)Ge9-@5wn&cs$hKe8w#k8ZL1M(&Om%}m=5&9oI5c6siu%C11%s;%>` zH7D=&p|_=v{LraSXB8yxW`ygkGCq8p#1@kJ=C#ga_RG*G87pXMX3$0nVF-W1{$A)A zqK^1;O$_GU|n{*RC&L+V7x~7-c6^39(`T!Ong02@vBtGO>U})GFpe zqmSq68T*#M_!Bgo740oTnI+m!(aBLAq5AM=T9hrd-0_&e=i0*cv;je5`rUr?P^Q$L z46m|3L={nAO=Hb0$w{C2CaBlYe4I^i z0O1oK2$8p+4^MT$WuU~k=;vOagu{)a`@cF0yfHd*Ff~-}$thR#0T^MpM{cGF^>_?v z6;m|*7U-3ZwK$MyK7foXVDFH4%Nbh3l500TVX}||(*DZNCUUOI!M8g-_7@obHl2z* z7s|zVXAlu$(gyq-=_elCPcn(Z3?zpk;h5YX8a2Zoo+|i0e6>N9jOZYg11ZW^j&f!a zL4HQzf5ZUEqCP4u$)>K$&3#m2B**>GcD37FDm<<|6V06)HLcA>*J=g6R$mHRHo#ZPv_`!N+^6^Q%xEjN{9pQ3N)V=r>? z3;~}6c}iyRsJ0J*%qte15~>#p-6|}2MjW3W+ee7#F)_*i0+Y@5RF)z{?yjr^1jcC{ zaEzF&EpXCwIX=bnl0QvUS%-ayPpGDPO2!tGsbgh6?1Oa`|wmG1cscmEU1 zZ=O>OF3nBB7%FL^fe!-qDEJ(%N1A_dPw!`!@l(O1{8;Se1uxGzIq{7HjvZtd7R-u9 ze@T(q%hUahRi`?{?U-xoss&5`Av&-ho0~!?y_+n~j0Iq_7Ad20BKQ@baY_lA+b8#C z=<#G-2Q1sZ(E?nZ#>X3p79L~$Imx;#yZ*E27oc1Ajc-q@)H3V^cS23(z5P<52bsg% zF08Q)6=&KK@(8m57&j|FR4pC;p?{{csLs0@de_U;-nsD~e71Mq5Rqv#pX39}`TQ_s zz;5cnqOB$n0JhI7a}#KaG#FF66&knoQrC*Vr*^C#K4f8fzGJHMTh13;+(v+W`UD=F0ya;3PIDz=ch|qa9`U@{L56}M#&|)%rQu}OwODtx9bDg97XM2V5 z7iX=O9r0hy+0!o0)!XXOKt0;Cu--DvG?l(Ls~!)_x&Ml{(%WiM%CNiQ05aW#NfvCzBsSI#mLk?cG$rd? zQg30R9YF>kfg$&2Ml?!bl_|cgqC&!lRIdatuYt;H`n~H8uR$bqJ%~C+9bP3+Zhj*% zAqx57vh`Z0EFr+`6xsJLnl_X)e zNf}2xh^DXD7#g~oy)`U7t&FSjHI1bxx-$eddCl7{h@^VM04J=8hffF3_A4neXXOkm% zhng8#crn9ot`n5q%*bree0-1OO4}(ByYi7il{Pd#(SFP?V^#NzWp-f~6l}X=!}TDc zmb7ut?BLD)@i0Wj=i(Hn?B7G(ZR5&%gI7vg4i4fAMIq6*b7Sj=o?h_nUCBVtr>yx( z<#1Av@T9rs%1u;171qZ8#o|1S-Ph6N7hm3y^GS`oi0=m+h>tb`_<@PU}x{tJtngSz*hdK{9=)sAltRz(+y zvL`F07AQf&Cxz>q*XFz)Uf&Y?KL!=bANlsRyykMDsD^b_2%gYrL*_;XomzA zMZ^oWn1843MWj2)$f2!0U+3%Dm!fHoe5@* zReMM<0FZY9du`7crV+R>yb1SSYB|+k)cdjx%08m`Dy7rgC%&zEoJC~G!^}TEVST?tpo?|N^1gqZMs;Q+7P+%}SRi^SdYZk&PabJ( zYX4@{ypMt#S=)m+XWLIA_HbWn8 z*#Ca+&J#A2Ih@eVl3L~OC6`?h^M6RI!2ctlyT=JPq00WmqGX%JdgYfExptQElOB0`W15qWS0CvW@dDrd9PqNQ zx_^`4Si9*3m^Q)JvI;&X*&`2IjZNLS16QZ<*8yUCspIP*`m|;WK-zR=uS@mx1t(#QA9~T|s%nA7)Abb7AInzmMe|d|KZ=Gfai1y@yhQ!sdL_8Q>w4H3=ka9JXEX+)Cp8BH8k<-`|V)&DxGLLVgrQvDcTy{)Kro9?0 zv1ZC?lEg&p>|NN@)ce|pFV<#s?@ znoe~9s*G=sNpx4`H6P z{$U(n@P$+GK8)9hKp}cel$*GlOh}U%)q*#3H70V$#v4z3H>DNar@s9TG>Er*YIp1k z-0%++4mxnZSf#-y_tEy1-Hdct@lX>7$61WeXJlPmRd@wtB z1{T2zZqP%zB?@-vYdJ9go-bnNiG{UA$_ehs1cf)-Y#fcC&b#qV=6B1HLv+u8a$Qns zO*eFf%(&GR#YuWqqlKi$$eJ;S!n#K#UKy3c9r4C+1Qe9qQd4KZ2z%)maQlwKu1RmT zW-J{CiQIsw)PM^lvi9cnt9{-?03Y~VwF2IQvA&`hcw`=E464)%156 literal 0 HcmV?d00001 diff --git a/static/description/messages.png b/static/description/messages.png new file mode 100644 index 0000000000000000000000000000000000000000..97d1d9de8771f0aaa14c04c1089b8bad947dc8fb GIT binary patch literal 37815 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 literal 0 HcmV?d00001 From 1b38541b95cfbbad191300a3413d91bc296517b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matja=C5=BE=20Mozeti=C4=8D?= Date: Tue, 11 Aug 2015 11:25:54 +0200 Subject: [PATCH 12/28] Missing templates and translations added --- i18n/mail_sent.pot | 50 +++++++++++++++++++++++++++++++++++++++ i18n/sl.po | 58 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 i18n/mail_sent.pot create mode 100644 i18n/sl.po diff --git a/i18n/mail_sent.pot b/i18n/mail_sent.pot new file mode 100644 index 0000000..743bc53 --- /dev/null +++ b/i18n/mail_sent.pot @@ -0,0 +1,50 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mail_sent +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-08-11 06:59+0000\n" +"PO-Revision-Date: 2015-08-11 06:59+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: mail_sent +#: model:ir.actions.client,help:mail_sent.action_mail_sent_feeds +msgid "

\n" +" No message found and no message sent yet.\n" +"

\n" +" Click on the top-right icon to compose a message. This\n" +" message will be sent by email if it's an internal contact.\n" +"

\n" +" " +msgstr "" + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_message +msgid "Message" +msgstr "" + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_notification +msgid "Notifications" +msgstr "" + +#. module: mail_sent +#: model:ir.actions.client,name:mail_sent.action_mail_sent_feeds +#: model:ir.ui.menu,name:mail_sent.mail_sentfeeds +#: field:mail.message,sent:0 +msgid "Sent" +msgstr "" + +#. module: mail_sent +#: help:mail.message,sent:0 +msgid "Was message sent to someone" +msgstr "" + diff --git a/i18n/sl.po b/i18n/sl.po new file mode 100644 index 0000000..b8ad954 --- /dev/null +++ b/i18n/sl.po @@ -0,0 +1,58 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mail_sent +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-08-11 06:59+0000\n" +"PO-Revision-Date: 2015-08-11 09:01+0200\n" +"Last-Translator: Matjaz Mozetic \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: \n" +"Language: sl\n" +"X-Generator: Poedit 1.8.2\n" + +#. module: mail_sent +#: model:ir.actions.client,help:mail_sent.action_mail_sent_feeds +msgid "" +"

\n" +" No message found and no message sent yet.\n" +"

\n" +" Click on the top-right icon to compose a message. This\n" +" message will be sent by email if it's an internal contact.\n" +"

\n" +" " +msgstr "" +"

\n" +" Nobeno sporočilo ni bilo najdeno in ni bilo še poslano.\n" +"

\n" +" Pritisnite na ikono zgoraj desno za sestavljanje sporočila. To\n" +" sporočilo bo, če gre za interni stik, poslano preko e-pošte.\n" +"

\n" +" " + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_message +msgid "Message" +msgstr "Sporočilo" + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_notification +msgid "Notifications" +msgstr "Obvestila" + +#. module: mail_sent +#: model:ir.actions.client,name:mail_sent.action_mail_sent_feeds +#: model:ir.ui.menu,name:mail_sent.mail_sentfeeds field:mail.message,sent:0 +msgid "Sent" +msgstr "Poslano" + +#. module: mail_sent +#: help:mail.message,sent:0 +msgid "Was message sent to someone" +msgstr "Je bilo sporočilo komu poslano" From dc37afaf59caff2c4a4f8ceb9619e5ae01f6174f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matja=C5=BE=20Mozeti=C4=8D?= Date: Tue, 11 Aug 2015 11:25:54 +0200 Subject: [PATCH 13/28] Missing templates and translations added --- i18n/mail_sent.pot | 50 +++++++++++++++++++++++++++++++++++++++ i18n/sl.po | 58 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 i18n/mail_sent.pot create mode 100644 i18n/sl.po diff --git a/i18n/mail_sent.pot b/i18n/mail_sent.pot new file mode 100644 index 0000000..743bc53 --- /dev/null +++ b/i18n/mail_sent.pot @@ -0,0 +1,50 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mail_sent +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-08-11 06:59+0000\n" +"PO-Revision-Date: 2015-08-11 06:59+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: mail_sent +#: model:ir.actions.client,help:mail_sent.action_mail_sent_feeds +msgid "

\n" +" No message found and no message sent yet.\n" +"

\n" +" Click on the top-right icon to compose a message. This\n" +" message will be sent by email if it's an internal contact.\n" +"

\n" +" " +msgstr "" + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_message +msgid "Message" +msgstr "" + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_notification +msgid "Notifications" +msgstr "" + +#. module: mail_sent +#: model:ir.actions.client,name:mail_sent.action_mail_sent_feeds +#: model:ir.ui.menu,name:mail_sent.mail_sentfeeds +#: field:mail.message,sent:0 +msgid "Sent" +msgstr "" + +#. module: mail_sent +#: help:mail.message,sent:0 +msgid "Was message sent to someone" +msgstr "" + diff --git a/i18n/sl.po b/i18n/sl.po new file mode 100644 index 0000000..b8ad954 --- /dev/null +++ b/i18n/sl.po @@ -0,0 +1,58 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * mail_sent +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-08-11 06:59+0000\n" +"PO-Revision-Date: 2015-08-11 09:01+0200\n" +"Last-Translator: Matjaz Mozetic \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: \n" +"Language: sl\n" +"X-Generator: Poedit 1.8.2\n" + +#. module: mail_sent +#: model:ir.actions.client,help:mail_sent.action_mail_sent_feeds +msgid "" +"

\n" +" No message found and no message sent yet.\n" +"

\n" +" Click on the top-right icon to compose a message. This\n" +" message will be sent by email if it's an internal contact.\n" +"

\n" +" " +msgstr "" +"

\n" +" Nobeno sporočilo ni bilo najdeno in ni bilo še poslano.\n" +"

\n" +" Pritisnite na ikono zgoraj desno za sestavljanje sporočila. To\n" +" sporočilo bo, če gre za interni stik, poslano preko e-pošte.\n" +"

\n" +" " + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_message +msgid "Message" +msgstr "Sporočilo" + +#. module: mail_sent +#: model:ir.model,name:mail_sent.model_mail_notification +msgid "Notifications" +msgstr "Obvestila" + +#. module: mail_sent +#: model:ir.actions.client,name:mail_sent.action_mail_sent_feeds +#: model:ir.ui.menu,name:mail_sent.mail_sentfeeds field:mail.message,sent:0 +msgid "Sent" +msgstr "Poslano" + +#. module: mail_sent +#: help:mail.message,sent:0 +msgid "Was message sent to someone" +msgstr "Je bilo sporočilo komu poslano" From 07d99b5edb5d4a54f254d95a954bd83f91d2d83c Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Sun, 27 Sep 2015 10:20:30 +0500 Subject: [PATCH 14/28] [DOC] add IT-Projects LLC to authors --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 4df3b34..354207a 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -1,7 +1,7 @@ { 'name' : 'Sentbox', 'version' : '1.0.0', - 'author' : 'Ivan Yelizariev', + 'author' : 'IT-Projects LLC, Ivan Yelizariev', 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', 'price': 9.00, From 975f65463fb5a05a6f0860fe6a5a07daf102a66f Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Sun, 27 Sep 2015 10:22:56 +0500 Subject: [PATCH 15/28] [DOC] add IT-Projects LLC to authors --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 4df3b34..354207a 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -1,7 +1,7 @@ { 'name' : 'Sentbox', 'version' : '1.0.0', - 'author' : 'Ivan Yelizariev', + 'author' : 'IT-Projects LLC, Ivan Yelizariev', 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', 'price': 9.00, From 5b94870be2643f289bba18a3be9cc454ea69dc9c Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Fri, 16 Oct 2015 13:07:01 +0500 Subject: [PATCH 16/28] mark unported modules as non-installable --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 354207a..70ac6ec 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -10,5 +10,5 @@ 'data':[ 'views.xml', ], - 'installable': True + 'installable': False } From 629f59092e4dc2a1d4ffe68269b0fd435a80b39d Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Tue, 3 Nov 2015 10:22:20 +0500 Subject: [PATCH 17/28] [DOC] add license tag --- __openerp__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/__openerp__.py b/__openerp__.py index 354207a..73019ed 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -2,6 +2,7 @@ 'name' : 'Sentbox', 'version' : '1.0.0', 'author' : 'IT-Projects LLC, Ivan Yelizariev', + 'license': 'LGPL-3', 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', 'price': 9.00, From 6294a42834891321b652c72a6fd5727f662e5d9e Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Mon, 9 Nov 2015 11:26:31 +0500 Subject: [PATCH 18/28] update license to GPL-3 --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 73019ed..edb7ba6 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -2,7 +2,7 @@ 'name' : 'Sentbox', 'version' : '1.0.0', 'author' : 'IT-Projects LLC, Ivan Yelizariev', - 'license': 'LGPL-3', + 'license': 'GPL-3', 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', 'price': 9.00, From 5c9daf5d0d5661c4c41f57a29840e526971a049b Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Mon, 9 Nov 2015 11:36:05 +0500 Subject: [PATCH 19/28] Revert "update license to GPL-3" This reverts commit 6157ee932163b56a3a0ad3a64cefb93e190c5c1d. Conflicts: _web_last_viewed_records/__openerp__.py itprojects_sale/__openerp__.py itprojects_website/__openerp__.py mail_delete_access_link/__openerp__.py mail_delete_sent_by_footer/__openerp__.py money_for/__openerp__.py --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index de39cb7..f5dede6 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -2,7 +2,7 @@ 'name' : 'Sentbox', 'version' : '1.0.0', 'author' : 'IT-Projects LLC, Ivan Yelizariev', - 'license': 'GPL-3', + 'license': 'LGPL-3', 'category' : 'Social Network', 'website' : 'https://yelizariev.github.io', 'price': 9.00, From 89b86eb1a4ba2c0a2971f10b810cf896b8d5559a Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Sun, 6 Dec 2015 12:14:55 +0500 Subject: [PATCH 20/28] [DOC] update website --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index edb7ba6..a5cd98b 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -4,7 +4,7 @@ 'author' : 'IT-Projects LLC, Ivan Yelizariev', 'license': 'GPL-3', 'category' : 'Social Network', - 'website' : 'https://yelizariev.github.io', + 'website' : 'https://twitter.com/yelizariev', 'price': 9.00, 'currency': 'EUR', 'depends' : ['mail'], From da72e3d37bb29815d0b72da495222c73fad10285 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Sun, 6 Dec 2015 14:16:37 +0500 Subject: [PATCH 21/28] [DOC] update contact us section --- static/description/index.html | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/static/description/index.html b/static/description/index.html index 3efa82b..29b01a1 100644 --- a/static/description/index.html +++ b/static/description/index.html @@ -35,14 +35,12 @@ This menu shows messages in threads (like in other menus), but shows only sent m
-

News & updates

-

- To get information about new interesting modules and updates, subscribe to our website RSS or follow @yelizariev on twitter. -

+

Need our service?

+

Contact us by email or fill out request form

From 768935742f77dfa02b9742db98c3538ff86feb1e Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Fri, 8 Jan 2016 15:06:06 +0500 Subject: [PATCH 22/28] [DOC] update tested version --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index d8bc32b..2b0336f 100644 --- a/README.rst +++ b/README.rst @@ -5,4 +5,4 @@ Description: https://apps.odoo.com/apps/modules/8.0/mail_sent/ Further information and discussion: https://yelizariev.github.io/odoo/module/2015/02/19/sentbox.html -Tested on Odoo 8.0 ab7b5d7732a7c222a0aea45bd173742acd47242d +Tested on Odoo 8.0 231e02693640325c9a05fa31c680063b9e4b017b From 76bb7351c73dbd58eff2e64983e80f3e0b4679bb Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Wed, 20 Jan 2016 17:46:31 +0500 Subject: [PATCH 23/28] [FIX] error with empty author_id --- __openerp__.py | 2 +- models.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/__openerp__.py b/__openerp__.py index a5cd98b..c90c467 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -1,6 +1,6 @@ { 'name' : 'Sentbox', - 'version' : '1.0.0', + 'version' : '1.0.1', 'author' : 'IT-Projects LLC, Ivan Yelizariev', 'license': 'GPL-3', 'category' : 'Social Network', diff --git a/models.py b/models.py index 27e0425..04cdf91 100644 --- a/models.py +++ b/models.py @@ -6,7 +6,7 @@ class mail_message(models.Model): @api.one @api.depends('author_id', 'notified_partner_ids') def _get_sent(self): - self.sent = len(self.notified_partner_ids) > 1 or len(self.notified_partner_ids)==1 and self.notified_partner_ids[0].id != self.author_id.id + self.sent = len(self.notified_partner_ids) > 1 or len(self.notified_partner_ids)==1 and self.author_id and self.notified_partner_ids[0].id != self.author_id.id sent = fields.Boolean('Sent', compute=_get_sent, help='Was message sent to someone', store=True) From f365fb39e4d20ecc694f6aefba1374888e3bea67 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Wed, 20 Jan 2016 18:06:40 +0500 Subject: [PATCH 24/28] fix pep errors --- models.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/models.py b/models.py index 04cdf91..9d011a3 100644 --- a/models.py +++ b/models.py @@ -1,4 +1,5 @@ -from openerp import api, models, fields, SUPERUSER_ID +from openerp import api, models, fields + class mail_message(models.Model): _inherit = 'mail.message' @@ -6,10 +7,11 @@ class mail_message(models.Model): @api.one @api.depends('author_id', 'notified_partner_ids') def _get_sent(self): - self.sent = len(self.notified_partner_ids) > 1 or len(self.notified_partner_ids)==1 and self.author_id and self.notified_partner_ids[0].id != self.author_id.id + self.sent = len(self.notified_partner_ids) > 1 or len(self.notified_partner_ids) == 1 and self.author_id and self.notified_partner_ids[0].id != self.author_id.id sent = fields.Boolean('Sent', compute=_get_sent, help='Was message sent to someone', store=True) + class mail_notification(models.Model): _inherit = 'mail.notification' From 97d7d16ba1cfe607650d0c337dbf3665b5438552 Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Mon, 25 Jan 2016 16:23:06 +0500 Subject: [PATCH 25/28] [FIX] inherit problem column "sent" of relation mail_compose_message does not exist --- models.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/models.py b/models.py index 9d011a3..2f9257b 100644 --- a/models.py +++ b/models.py @@ -18,3 +18,10 @@ class mail_notification(models.Model): def _notify(self, cr, uid, message_id, **kwargs): super(mail_notification, self)._notify(cr, uid, message_id, **kwargs) self.pool['mail.message'].browse(cr, uid, message_id)._get_sent() + + +class mail_compose_message(models.TransientModel): + + _inherit = 'mail.compose.message' + sent = fields.Boolean('Sent', help='dummy field to fix inherit error') + From 3eae2ce899fff83c1664117ef60e442cf9a26bbb Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Fri, 18 Mar 2016 12:17:51 +0500 Subject: [PATCH 26/28] mail_sent: fix #90 --- models.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/models.py b/models.py index 2f9257b..38c82e9 100644 --- a/models.py +++ b/models.py @@ -7,7 +7,8 @@ class mail_message(models.Model): @api.one @api.depends('author_id', 'notified_partner_ids') def _get_sent(self): - self.sent = len(self.notified_partner_ids) > 1 or len(self.notified_partner_ids) == 1 and self.author_id and self.notified_partner_ids[0].id != self.author_id.id + self_sudo = self.sudo() + self_sudo.sent = len(self_sudo.notified_partner_ids) > 1 or len(self_sudo.notified_partner_ids) == 1 and self_sudo.author_id and self_sudo.notified_partner_ids[0].id != self_sudo.author_id.id sent = fields.Boolean('Sent', compute=_get_sent, help='Was message sent to someone', store=True) From 1a7add98a0467ed4fb5ecb084664486e4d33a11f Mon Sep 17 00:00:00 2001 From: Ivan Yelizariev Date: Fri, 18 Mar 2016 12:24:11 +0500 Subject: [PATCH 27/28] bump 1.0.2 --- __openerp__.py | 2 +- doc/changelog.rst | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 doc/changelog.rst diff --git a/__openerp__.py b/__openerp__.py index c90c467..90e1701 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -1,6 +1,6 @@ { 'name' : 'Sentbox', - 'version' : '1.0.1', + 'version' : '1.0.2', 'author' : 'IT-Projects LLC, Ivan Yelizariev', 'license': 'GPL-3', 'category' : 'Social Network', diff --git a/doc/changelog.rst b/doc/changelog.rst new file mode 100644 index 0000000..7615117 --- /dev/null +++ b/doc/changelog.rst @@ -0,0 +1,9 @@ +.. _changelog: + +Changelog +========= + +`1.0.2` +------- + +- FIX access issue "read access error on delete" From 070ba321f3cc96f9ed3d6cc6af8f0aa0ccbea726 Mon Sep 17 00:00:00 2001 From: Ildar Nasyrov Date: Sun, 27 Mar 2016 16:28:40 +0500 Subject: [PATCH 28/28] [MOV] module -- mail_sent --- README.rst => mail_sent/README.rst | 0 __init__.py => mail_sent/__init__.py | 0 __openerp__.py => mail_sent/__openerp__.py | 0 {doc => mail_sent/doc}/changelog.rst | 0 {i18n => mail_sent/i18n}/mail_sent.pot | 0 {i18n => mail_sent/i18n}/sl.po | 0 models.py => mail_sent/models.py | 0 {static => mail_sent/static}/description/icon.png | Bin {static => mail_sent/static}/description/index.html | 0 {static => mail_sent/static}/description/menu.png | Bin .../static}/description/messages.png | Bin views.xml => mail_sent/views.xml | 0 12 files changed, 0 insertions(+), 0 deletions(-) rename README.rst => mail_sent/README.rst (100%) rename __init__.py => mail_sent/__init__.py (100%) rename __openerp__.py => mail_sent/__openerp__.py (100%) rename {doc => mail_sent/doc}/changelog.rst (100%) rename {i18n => mail_sent/i18n}/mail_sent.pot (100%) rename {i18n => mail_sent/i18n}/sl.po (100%) rename models.py => mail_sent/models.py (100%) rename {static => mail_sent/static}/description/icon.png (100%) rename {static => mail_sent/static}/description/index.html (100%) rename {static => mail_sent/static}/description/menu.png (100%) rename {static => mail_sent/static}/description/messages.png (100%) rename views.xml => mail_sent/views.xml (100%) diff --git a/README.rst b/mail_sent/README.rst similarity index 100% rename from README.rst rename to mail_sent/README.rst diff --git a/__init__.py b/mail_sent/__init__.py similarity index 100% rename from __init__.py rename to mail_sent/__init__.py diff --git a/__openerp__.py b/mail_sent/__openerp__.py similarity index 100% rename from __openerp__.py rename to mail_sent/__openerp__.py diff --git a/doc/changelog.rst b/mail_sent/doc/changelog.rst similarity index 100% rename from doc/changelog.rst rename to mail_sent/doc/changelog.rst diff --git a/i18n/mail_sent.pot b/mail_sent/i18n/mail_sent.pot similarity index 100% rename from i18n/mail_sent.pot rename to mail_sent/i18n/mail_sent.pot diff --git a/i18n/sl.po b/mail_sent/i18n/sl.po similarity index 100% rename from i18n/sl.po rename to mail_sent/i18n/sl.po diff --git a/models.py b/mail_sent/models.py similarity index 100% rename from models.py rename to mail_sent/models.py diff --git a/static/description/icon.png b/mail_sent/static/description/icon.png similarity index 100% rename from static/description/icon.png rename to mail_sent/static/description/icon.png diff --git a/static/description/index.html b/mail_sent/static/description/index.html similarity index 100% rename from static/description/index.html rename to mail_sent/static/description/index.html diff --git a/static/description/menu.png b/mail_sent/static/description/menu.png similarity index 100% rename from static/description/menu.png rename to mail_sent/static/description/menu.png diff --git a/static/description/messages.png b/mail_sent/static/description/messages.png similarity index 100% rename from static/description/messages.png rename to mail_sent/static/description/messages.png diff --git a/views.xml b/mail_sent/views.xml similarity index 100% rename from views.xml rename to mail_sent/views.xml