#371, notifier un bug de plat/al directement depuis le site
authorx2001corpet <x2001corpet@839d8a87-29fc-0310-9880-83ba4fa771e5>
Sat, 29 Jul 2006 16:29:09 +0000 (16:29 +0000)
committerx2001corpet <x2001corpet@839d8a87-29fc-0310-9880-83ba4fa771e5>
Sat, 29 Jul 2006 16:29:09 +0000 (16:29 +0000)
git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@694 839d8a87-29fc-0310-9880-83ba4fa771e5

ChangeLog
htdocs/css/flyspray.css [new file with mode: 0644]
htdocs/javascript/flyspray.js [new file with mode: 0644]
templates/skin/common.footer.tpl
templates/skin/common.header.tpl
templates/skin/common.menu.tpl

index 442f0f3..4a263a9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -83,6 +83,8 @@ Bug/Wish:
     * Carnet:
         - #435: Calendar contains yearly events for all the contacts.      -FRU
 
+    * Core:
+        - #371: Users can send bugs directly to plat/al tracker.           -Car
     * Emails:
         - #426: Add an identification header in mails.                     -FRU
 
diff --git a/htdocs/css/flyspray.css b/htdocs/css/flyspray.css
new file mode 100644 (file)
index 0000000..395a6db
--- /dev/null
@@ -0,0 +1,25 @@
+#flyspray_report {
+       display:none;
+       position:fixed;
+       width:60%;
+       height:470px;
+       top:20%;
+       left:20%;
+       border: solid 1px;
+       background:white;
+       color:black;
+       text-align:left;
+}
+#flyspray_report div {
+       margin-left:10%;
+       margin-right:10%;
+}
+#flyspray_report textarea {
+       width:100%;
+       margin-bottom:10px;
+       height:300px;
+       display:block;
+}
+#flyspray_submit {
+       text-align:center;
+}
\ No newline at end of file
diff --git a/htdocs/javascript/flyspray.js b/htdocs/javascript/flyspray.js
new file mode 100644 (file)
index 0000000..337e0aa
--- /dev/null
@@ -0,0 +1,66 @@
+/***************************************************************************\r
+ *  Copyright (C) 2003-2006 Polytechnique.org                              *\r
+ *  http://opensource.polytechnique.org/                                   *\r
+ *                                                                         *\r
+ *  This program is free software; you can redistribute it and/or modify   *\r
+ *  it under the terms of the GNU General Public License as published by   *\r
+ *  the Free Software Foundation; either version 2 of the License, or      *\r
+ *  (at your option) any later version.                                    *\r
+ *                                                                         *\r
+ *  This program is distributed in the hope that it will be useful,        *\r
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of         *\r
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *\r
+ *  GNU General Public License for more details.                           *\r
+ *                                                                         *\r
+ *  You should have received a copy of the GNU General Public License      *\r
+ *  along with this program; if not, write to the Free Software            *\r
+ *  Foundation, Inc.,                                                      *\r
+ *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *\r
+ ***************************************************************************/\r
+\r
+function send_bug() {\r
+       document.getElementById('flyspray_report').style.display = 'block';\r
+       return false;\r
+}\r
+\r
+function close_bug(f,send) {\r
+       var detail = document.getElementById('flyspray_detail');\r
+       detail.value = utf8(detail.value);\r
+       var title = document.getElementById('flyspray_title');\r
+       title.value = utf8(title.value);\r
+       if (send) {\r
+               f.target = '_blank';\r
+               f.submit();\r
+       }\r
+       f.reset();\r
+       document.getElementById('flyspray_report').style.display = 'none';\r
+}\r
+\r
+function utf8(isotext)\r
+{\r
+       var utf8text = "";\r
+       for ( i=0; i<isotext.length; i++ )\r
+       {\r
+               unicodchar = isotext.charCodeAt(i);\r
+               \r
+               if(unicodchar < 128){\r
+                       utf8text += String.fromCharCode(unicodchar);\r
+               } else if(unicodchar < 0x800) {\r
+                       var val1 = 0xC0 + (unicodchar & 0x7C0) / 0x40;          // 0011111000000\r
+                       var val2 = 0x80 + (unicodchar & 0x3F);                          // 0000000111111\r
+                       utf8text += String.fromCharCode(val1,val2);\r
+               } else if(unicodchar < 0x10000) {\r
+                       var val1 = 0xE0 + (unicodchar & 0xF000) / 0x1000;       // 001111000000000000\r
+                       var val2 = 0x80 + (unicodchar &  0xFC0) / 0x40;         // 000000111111000000\r
+                       var val3 = 0x80 + (unicodchar &   0x3F);                        // 000000000000111111\r
+                       utf8text += String.fromCharCode(val1,val2, val3);\r
+               } else if(unicodchar < 0x200000){\r
+                       var val4 = 0x80 + (unicodchar & 0x1C0000) / 0x40000;// 00111000000000000000000\r
+                       var val2 = 0x80 + (unicodchar &  0x3F000) / 0x1000;     // 00000111111000000000000\r
+                       var val3 = 0x80 + (unicodchar &    0xFC0) / 0x40;       // 00000000000111111000000\r
+                       var val4 = 0x80 + (unicodchar &     0x3F);                      // 00000000000000000111111\r
+                       utf8text += String.fromCharCode(val1,val2, val3, val4);\r
+        }\r
+       }\r
+       return utf8text;\r
+}\r
index ebfaa6c..3455477 100644 (file)
 {*                                                                        *}
 {**************************************************************************}
 
+<div id="flyspray_report">
+<form action="http://trackers.polytechnique.org/" method="post" enctype="multipart/form-data">
+       <h1>Signaler un bug ou demander une amélioration</h1>
+       <div>
+               <input type="hidden" name="do" value="modify"/>
+               <input type="hidden" name="action" value="newtask"/>
+               <input type="hidden" name="project_id" value="1"/>
+               <select name="task_type">
+           <option value="1">Bug</option>
+                       <option value="2">Wish</option>
+               </select>
+               <input type="text" name="item_summary" id="flyspray_title" value="sur la page {$smarty.server.SCRIPT_URL}" size="50" maxlength="100"/>
+               <input type="hidden" name="productcategory" value="1"/><!-- non trié -->
+               <input type="hidden" name="itemstatus" value="2"/><!-- New -->
+               <input type="hidden" name="assigned_to" value="0"/><!-- No one -->
+               <input type="hidden" name="operating_system" value="1"/><!-- All -->
+               <input type="hidden" name="task_severity" value="2"/><!-- Low -->
+               <input type="hidden" name="task_priority" value="2"/><!-- Normal -->
+               <input type="hidden" name="productversion" value=""/><!-- ??? -->
+               <input type="hidden" name="closedbyversion" value=""/><!-- Undecided -->
+               <input type="hidden" name="due_date" value=""/>
+               <textarea name="detailed_desc" id="flyspray_detail" cols="70" rows="10">
+
+** Explique ici le problème ou l'amélioration proposée **
+               
+Page : {$smarty.server.SCRIPT_URI}
+Navigateur : {$smarty.server.HTTP_USER_AGENT}
+Skin : {$smarty.session.skin} 
+Singalé par {$smarty.session.forlife}</textarea>
+               <div id="flyspray_submit">
+                       <input type="button" value="Fermer" onclick="close_bug(this.form,false)"/>
+                       <input type="button" value="Signaler le bug" onclick="close_bug(this.form,true)"/>
+               </div>
+       </div>
+</form>
+</div>
 
 <div>
   Plat/al <a href="changelog">{#globals.version#}</a> - Copyright © 1999-2006 <a href="http://x-org.polytechnique.org/">Polytechnique.org</a>
index 26a9db8..162357e 100644 (file)
@@ -36,6 +36,7 @@
     <link rel="bookmark" href="http://www.polytechnique.org/"       title="| Polytechnique.org" />
     <link rel="bookmark" href="http://www.polytechnique.fr/eleves/" title="| Site d'élèves" />
 
+               <link rel="stylesheet" type="text/css" href="css/flyspray.css" />
     {foreach from=$xorg_css item=css}
     <link rel="stylesheet" type="text/css" href="{$css}" />
     {/foreach}
@@ -46,6 +47,9 @@
     <script type="text/javascript" src="javascript/md5.js"></script>
     <script type="text/javascript" src="javascript/sha1.js"></script>
     <script type="text/javascript" src="javascript/secure_hash.js"></script>
+    {if $smarty.session.auth}
+    <script type="text/javascript" src="javascript/flyspray.js"></script>
+    {/if}
 
     {if $xorg_rss}
     <link rel="alternate" type="application/rss+xml" title="{$xorg_rss.title}" href="{$xorg_rss.href}" />
index 7b78f2f..789cd94 100644 (file)
@@ -73,6 +73,7 @@
 <div class="menu_item"><a href="Docs/">Documentations</a></div>
 <div class="menu_item"><a href="Docs/NousContacter">Nous contacter</a></div>
 <div class="menu_item"><a href="Docs/Emploi">Carrières</a></div>
+<div class="menu_item"><a href="send_bug" onclick="send_bug();return false">Signaler un bug</a></div>
 
 {if $smarty.session.perms eq admin}
 <div class="menu_title">***</div>
@@ -89,6 +90,7 @@
   </tr>
 </table>
 {/if}
+
 {/if}
 
 {* vim:set et sw=2 sts=2 sws=2: *}