← Back to team overview

openerp-dev-web team mailing list archive

[Merge] lp:~openerp-dev/openobject-client-web/web-piratepad into lp:openobject-client-web

 

cpa(OpenERP) has proposed merging lp:~openerp-dev/openobject-client-web/web-piratepad into lp:openobject-client-web.

Requested reviews:
  OpenERP SA's Web Client R&D (openerp-dev-web)

-- 
https://code.launchpad.net/~openerp-dev/openobject-client-web/web-piratepad/+merge/38391
Your team OpenERP SA's Web Client R&D is requested to review the proposed merge of lp:~openerp-dev/openobject-client-web/web-piratepad into lp:openobject-client-web.
=== modified file 'addons/openerp/controllers/attachment.py'
--- addons/openerp/controllers/attachment.py	2010-09-20 06:22:44 +0000
+++ addons/openerp/controllers/attachment.py	2010-10-14 07:52:45 +0000
@@ -88,6 +88,21 @@
         return {'id': attachment_id, 'name': datas.filename}
 
     @expose('json', methods=('POST',))
+    def save_pad(self, **kwargs):
+        params, data = TinyDict.split(cherrypy.session['params'])
+        pad_name=kwargs.get('pad_name')
+        ctx = dict(rpc.session.context,
+                   default_res_model=params.model, default_res_id=params.id,
+                   active_id=False, active_ids=[])
+        
+        pad_link = "http://piratepad.net/"+'-'.join(pad_name.split())
+        attachment_id = rpc.RPCProxy('ir.attachment').create({
+            'name': pad_name,
+            'url': pad_link,
+        }, ctx)
+        return {'id': attachment_id, 'name': pad_name, 'url': pad_link}
+        
+    @expose('json', methods=('POST',))
     def remove(self, id=False, **kw):
         proxy = rpc.RPCProxy('ir.attachment')
         try:

=== modified file 'addons/openerp/static/css/screen.css'
--- addons/openerp/static/css/screen.css	2010-10-13 16:02:00 +0000
+++ addons/openerp/static/css/screen.css	2010-10-14 07:52:45 +0000
@@ -2182,10 +2182,14 @@
 button {
 }
 
-#sidebar #add-attachment {
+#sidebar #add-attachment,
+#sidebar #add-pad {
     position: absolute;
     top: 3px;
     right: 1px;
+    padding:1px 6px; 
+    line-height:14px; 
+    -moz-box-shadow:0 0px 0 transparent
 }
 
 .attachments-a li {

=== modified file 'addons/openerp/static/javascript/form.js'
--- addons/openerp/static/javascript/form.js	2010-10-13 13:03:05 +0000
+++ addons/openerp/static/javascript/form.js	2010-10-14 07:52:45 +0000
@@ -1138,8 +1138,9 @@
  *
  * Creates a new line in #attachments if the creation succeeds.
  */
-function createAttachment(){
-    if (!jQuery('#sidebar_attachments_datas').val()) {
+function createAttachment(e){
+	
+    if (!jQuery('#sidebar_pad_datas').val() && !jQuery('#sidebar_attachments_datas').val()) {
         return false;
     }
     var form = jQuery(this);
@@ -1150,8 +1151,16 @@
                 'id': 'attachment_item_' + data['id'],
                 'data-id': data['id']
             });
+<<<<<<< TREE
 
+=======
+            var url = openobject.http.getURL('/openerp/attachment/get', {'record': data['id']});
+            if(data['url']) {
+            	url = data['url'];
+            }   
+>>>>>>> MERGE-SOURCE
             jQuery([jQuery('<a>', {
+<<<<<<< TREE
                 'rel': 'external',
                 'href': openobject.http.getURL('/openerp/attachment/get', {
                     'record': data['id']
@@ -1159,11 +1168,21 @@
                 'class': 'attachment-file'
             }).text(data['name']), jQuery('<span>|</span>'), jQuery("<a href='#' class='close'>Close</a>")]).appendTo(attachment_line);
 
+=======
+	                'rel': 'external',
+	                'href': url,
+	                'class': 'attachment-file'
+	            }).text(data['name']), jQuery('<span>|</span>'), jQuery("<a href='#' class='close'>Close</a>")]).appendTo(attachment_line);
+>>>>>>> MERGE-SOURCE
             jQuery('#attachments').append(attachment_line);
+            if(data['url']){
+            	jQuery('#attachments [id="'+'attachment_item_'+data['id']+'"] a').attr('target', '_blank');
+            }
             form.resetForm();
             form.hide();
         }
     });
+    
     return false;
 }
 
@@ -1181,6 +1200,19 @@
         submit: createAttachment
     });
 }
+function setupPads(){
+	var padForm = jQuery('#pad-box').hide();
+	jQuery('#sidebar_pad_ok').bind('click', function(){
+		padForm.submit();
+	});
+    jQuery('#add-pad').click(function(e){
+        padForm.show();
+        e.preventDefault();
+    });
+    padForm.bind({
+		submit: createAttachment
+	});
+}
 
 function error_popup(obj){
     try {

=== modified file 'addons/openerp/widgets/templates/sidebar.mako'
--- addons/openerp/widgets/templates/sidebar.mako	2010-10-13 12:26:08 +0000
+++ addons/openerp/widgets/templates/sidebar.mako	2010-10-14 07:52:45 +0000
@@ -43,14 +43,20 @@
     % endif
     % if view_type == 'form':
     <div class="sideheader-a">
+<<<<<<< TREE
         <a href="#" id="add-attachment" class="button-a" style="line-height: 13px;">${_("Add")}</a>
+=======
+        <a href="#" id="add-attachment" class="button-a" style="right:40px;">${_("Add")}</a>
+        <a href="#" id="add-pad" class="button-a" >${_("Pad")}</a>
+>>>>>>> MERGE-SOURCE
         <h2>${_("Attachments")}</h2>
+        
     </div>
     <ul id="attachments" class="attachments-a">
         % for attachment in attachments:
             <!-- don't forget to also change jquery template in form.js/createAttachment -->
             <li id="attachment_item_${attachment['id']}" data-id="${attachment['id']}">
-                <a class="attachment-file" rel="external"
+                <a class="attachment-file" rel="external"  target="_blank"
                    href="${attachment['url'] or py.url('/openerp/attachment/get', record=attachment['id'])}">
                     ${attachment['name']}
                 </a>
@@ -62,10 +68,25 @@
 
     <form id="attachment-box" action="/openerp/attachment/save" method="post"
           enctype="multipart/form-data">
-        <label for="sidebar_attachments_datas">${_("File")}:</label>
-        <input type="file" id="sidebar_attachments_datas" class="binary"
+        	<label for="sidebar_attachments_datas">${_("File")}:</label>
+        	<input type="file" id="sidebar_attachments_datas" class="binary"
                name="datas" kind="binary" size="5"/>
-    </form>
+     </form>
+     <form id="pad-box" action="/openerp/attachment/save_pad" method="post">
+        	<label for="sidebar_pad_datas">${_("Name")}:</label>
+        	<table width="100%">
+        	<tr>
+        		<td width=60% style="padding-right:8px;">
+        			<input type="text" id="sidebar_pad_datas" class="binary"
+               		name="pad_name" kind="url" size="5" />
+               </td>
+            	<td>
+            		<a href="#" id="sidebar_pad_ok" class="button-a">${_("Ok")}</a>
+            	</td>
+            </tr>
+            </table>
+     </form>
+   
     % endif
 
     <div class="sideheader-a">
@@ -116,6 +137,7 @@
 <script type="text/javascript">
     jQuery(document).ready(function() {
     	setupAttachments();
+    	setupPads();
     	jQuery('#sidebar_view_log').fancybox();
    	});
 </script>