From 4fc33b1bd5c5c1bfab08eb34d2af5a962d725dae Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Sun, 17 Jun 2012 17:32:54 -0400 Subject: [PATCH] Add installation environment details app --- apps/installation/__init__.py | 7 ++++ apps/installation/links.py | 7 ++++ apps/installation/models.py | 3 ++ apps/installation/permissions.py | 8 ++++ .../images/icons/interface_preferences.png | Bin 0 -> 1904 bytes apps/installation/urls.py | 5 +++ apps/installation/views.py | 37 ++++++++++++++++++ docs/releases/0.12.2.rst | 12 +++++- requirements/production.txt | 1 + settings.py | 1 + urls.py | 1 + 11 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 apps/installation/__init__.py create mode 100644 apps/installation/links.py create mode 100644 apps/installation/models.py create mode 100644 apps/installation/permissions.py create mode 100644 apps/installation/static/images/icons/interface_preferences.png create mode 100644 apps/installation/urls.py create mode 100644 apps/installation/views.py diff --git a/apps/installation/__init__.py b/apps/installation/__init__.py new file mode 100644 index 0000000000..99a5459f71 --- /dev/null +++ b/apps/installation/__init__.py @@ -0,0 +1,7 @@ +from __future__ import absolute_import + +from project_tools.api import register_tool + +from .links import installation_details + +register_tool(installation_details) diff --git a/apps/installation/links.py b/apps/installation/links.py new file mode 100644 index 0000000000..b1a9445deb --- /dev/null +++ b/apps/installation/links.py @@ -0,0 +1,7 @@ +from __future__ import absolute_import + +from django.utils.translation import ugettext_lazy as _ + +from .permissions import PERMISSION_INSTALLATION_DETAILS + +installation_details = {'text': _(u'installation details'), 'view': 'installation_details', 'icon': 'interface_preferences.png', 'permissions': [PERMISSION_INSTALLATION_DETAILS]} diff --git a/apps/installation/models.py b/apps/installation/models.py new file mode 100644 index 0000000000..71a8362390 --- /dev/null +++ b/apps/installation/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/apps/installation/permissions.py b/apps/installation/permissions.py new file mode 100644 index 0000000000..9b85bb458a --- /dev/null +++ b/apps/installation/permissions.py @@ -0,0 +1,8 @@ +from __future__ import absolute_import + +from django.utils.translation import ugettext_lazy as _ + +from permissions.models import PermissionNamespace, Permission + +namespace = PermissionNamespace('installation', _(u'Installation')) +PERMISSION_INSTALLATION_DETAILS = Permission.objects.register(namespace, 'installation_details', _(u'View installation environment details')) diff --git a/apps/installation/static/images/icons/interface_preferences.png b/apps/installation/static/images/icons/interface_preferences.png new file mode 100644 index 0000000000000000000000000000000000000000..60026f35b857a189bbf41d732ca874ee37ff4ef0 GIT binary patch literal 1904 zcmV-$2aouPP)QfTS1I0l_)Bpkpx*1Qb3jf#e%FN zON$T!wVmnAn|D3;zBj|nbSS8JlQZYOyMFha@0@#w0nl16{NdXGQ;JN^@zBB>Yi?wo zEDQ=`&|vPmKDTf*1QnYwTFK_~&um>v#7Z2j%;hXZXZyp81?hA*dt19O1 zJW?d~BdG}o;4-<1=1vVGOHTt%1)#x-#^4|{4o!tFv?@fgba=ZQr`p;YqesovsjXMC zjsWc=_KOC<0tB@g0ce@%hRdELETJm4>8LKW8f>S!LKRiCOADCr)7mCy@R=r5KV-kA z7!U?!H2&rG@i0x>A7MoRK)~d163R*4lHk^vH6+UHvCPV&+|Q$b?Y=sLBVO0Y0u8w$ z0SNT{Q=KG<_&0+ z?+i|DbroJT?dgK&Og;2EFW%UifQ{okn7BC(rDN~F=dXD@0K)X$JGYjMM?^m0@EKgT z=MNYZihXGT0;_j%!B=S@E|ZA%%Ux_3UxU}bjKk;S@6)_mnrA*90I`8|KZ{6W5(Fc+ zNZ}SIBu|*t7O0?2Odkx=tlmRW<;VJ0?|_1nC_-B>{h{eJ!q&p~!u*=rP(HKS9*QeYYE5&}7>De4=x!8$(UKCA^D!-;0;kU3j6p);Kquk=ExKdp zPNcPME8DViy1*1;FLRjb1dy~==fi}xPJBI;W7HakvMF_s&jFR}-6JDeX0gaH{#T#kOgFj9kU=6=|RG7tMPl2Q1%+jiXY)11iWq78)Mn z04e7cQ{Hc`%cQ*?7{rINX|;m7xu6~CUw0Ib07J$o>GL=go>?g|IpDK7 zFnaXZP@5^66x>T>NUY}gruZe)^qYuXZ*weNz8o`WPM2d>e7I5qm=%8(NlTWldS}k; zQPLnm7w|9=iUtwuiY?3*)lO95;VeECZlKi-jve3af;wy#(o&PKXzBZ;Q}D;N>r&cL z)XbZ|5Jk^tBQqyw#FAypzYiY1K^SV9MYga+C=-w1yhc00;set-N8mAaq*G)ZIlM zAi|ZdTaV1FOazD+FXZM*usQ*oT2hRKi>?n;qX5{Kk4!SLk^z}Nz(b%EvY3$aLx=G0 z?AeqZP5gG@0{ zfpiMfPAW{k3#~K~Fbq^zSHtJ?(F2qo-=@(p+%)SRxqkf`+{BMSKn8(Jvo1VlXC*8C z8IOMZ+t;&5JWPoU11kOV`e5zaQlzG(V&K35$j;8jXRFuZ&1qBQdaG8iL0(=SoRpaM z?>~U5s%q5Ndk%y+psUtG-7}tj^uw;feGQBmI|c(^?2GwJJ^&{-v~SmrT&`f#mNL|P zedyP(AKIp+!5~Ws_Z&HVXy&2vgL`SJR{-E{W?V~{_hX7*`nU0aM?40g05N^+{rxD& z>y3nj=BT5P%b?d%I%Q0ORk*6&SC52d&C$DeuE@Ca2>>w@9s$5twP5IA(oaX<4ga8M z?&8YI qg64mc0Ahi0+27vqO~cFI0t^6DtFiN!{Aeox0000