Changeset 69 in main


Ignore:
Timestamp:
07/05/10 16:19:14 (11 years ago)
Author:
pjoulaud
Message:

Implementation of the checkin function for files in documents

Location:
trunk/openPLM
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/openPLM/plmapp/controllers.py

    r67 r69  
    835835        if doc_file.document.pk != self.object.pk: 
    836836            raise ValueError("Bad file's document") 
     837        if doc_file.filename != new_file.name: 
     838            raise ValueError("Checkin document and document already in plm have different names") 
    837839        if doc_file.locked: 
    838840            self.unlock(doc_file)    
     
    882884                delete = form.cleaned_data["delete"] 
    883885                filename = form.cleaned_data["id"] 
     886                print "filename" 
     887                print form.instance.id 
    884888                if delete: 
    885889                    self.delete_file(filename) 
  • trunk/openPLM/plmapp/views.py

    r68 r69  
    570570 
    571571########################################################################################## 
     572@login_required 
     573def checkin_file(request, object_type_value, object_reference_value, object_revision_value, file_id_value): 
     574    """ Manage html page for file checkin in the document""" 
     575    context_dict = init_context_dict(object_type_value, object_reference_value, object_revision_value) 
     576    obj = get_obj(object_type_value, object_reference_value, object_revision_value) 
     577    if isinstance(obj, DocumentController): 
     578        class_for_div="NavigateBox4Doc" 
     579    else: 
     580        class_for_div="NavigateBox4Part" 
     581    menu_list = obj.menu_items 
     582    var_dict, request_dict = display_global_page(request) 
     583    request.session.update(request_dict) 
     584    context_dict.update(var_dict) 
     585    if request.POST: 
     586        checkin_file_form_instance = AddFileForm(request.POST, request.FILES) 
     587        if checkin_file_form_instance.is_valid(): 
     588            obj.checkin(models.DocumentFile.objects.get(id=file_id_value), request.FILES["filename"]) 
     589            context_dict.update({'object_menu': menu_list, }) 
     590            return HttpResponseRedirect("/object/%s/%s/%s/files/" \ 
     591                                        % (object_type_value, object_reference_value, object_revision_value) ) 
     592        else: 
     593            checkin_file_form_instance = AddFileForm(request.POST) 
     594            context_dict.update({'class4search_div': True, 'class4div': class_for_div, 'object_menu': menu_list, 'add_file_form': add_file_form_instance, }) 
     595            return render_to_response('DisplayFileAdd.htm', context_dict) 
     596    else: 
     597        checkin_file_form_instance = AddFileForm() 
     598        context_dict.update({'class4search_div': True, 'class4div': class_for_div, 'object_menu': menu_list, 'add_file_form': checkin_file_form_instance, }) 
     599        return render_to_response('DisplayFileAdd.htm', context_dict) 
     600 
     601########################################################################################## 
    572602###             Manage html pages for part creation / modification                     ### 
    573603########################################################################################## 
  • trunk/openPLM/templates/DisplayObjectChild.htm

    r47 r69  
    77        <tr> 
    88            <td> 
    9                 <form action="./add"> 
    10                     <input type="submit" value="ADD"> 
    11                 </form> 
     9                <a href="./add/">ADD</a> 
    1210            </td> 
    1311            <td> 
  • trunk/openPLM/templates/DisplayObjectDocCad.htm

    r67 r69  
    44 
    55{% block content %} 
    6  
    7     <form method="post" action="./add/"> 
    8             <input type="submit" value="ADD"> 
    9     </form> 
    10         <br /> 
    116    <form method="post" action="">       
    127        {{ doc_cad_formset.management_form }} 
    138            <table class="Content"> 
     9                 <tr> 
     10                    <td><a href="./add/">ADD</a></td> 
     11                    <td><input type="submit" value="DISCONNECT"></td> 
     12                </tr> 
    1413                {% for form in doc_cad_formset.forms %} 
    1514                    {{ form.id }} 
     
    2726                        </tr>    
    2827                {% endfor %} 
    29                 <tr> 
    30                     <td></td> 
    31                     <td><input type="submit" value="DISCONNECT"></td> 
    32                 </tr> 
    3328            </table> 
    3429    </form> 
  • trunk/openPLM/templates/DisplayObjectFiles.htm

    r65 r69  
    44 
    55{% block content %} 
    6     <form method="POST" action="./add/"> 
    7         <input type="submit" value="ADD"> 
    8     </form> 
     6     
    97    <form method="POST" action=""> 
    108        {{ file_formset.management_form }} 
    11             <br /> 
    129            <table class="Content"> 
     10                <tr> 
     11                        <td></td> 
     12                        <td><a href="./add/">ADD</a></td> 
     13                    <td><input type="submit" value="DELETE"></td> 
     14            </tr> 
    1315                    <tr class="Content"> 
    1416                        {% for form in file_formset.forms %} 
     
    2628                            <td class="Content">{{form.instance.size}}</td> 
    2729                            <td class="Content"><input type="submit" value="DOWNLOAD"></td> 
    28                             <td class="Content"><input type="submit" value="CHECKOUT"></td> 
     30                            <td class="Content"><input type="submit" value="CHECK-OUT"></td> 
     31                            <td class="Content"><a href="./checkin/{{form.instance.id}}/">CHECK-IN</a></td> 
    2932                    </tr> 
    3033            {% endfor %} 
    31                 <tr> 
    32                         <td></td> 
    33                         <td></td> 
    34                     <td><input type="submit" value="DELETE"></td> 
    35             </tr> 
    3634            </table> 
    3735    </form> 
  • trunk/openPLM/templates/DisplayObjectRelPart.htm

    r67 r69  
    44 
    55{% block content %} 
    6  
    7     <form action="./add"> 
    8         <input type="submit" value="ADD"> 
    9     </form> 
    10         <br /> 
    116    <form method="post" action="">       
    127        {{ rel_part_formset.management_form }} 
    138            <table class="Content"> 
     9                <tr> 
     10                    <td> 
     11                        <a href="./add/">ADD</a> 
     12                    </td> 
     13                    <td> 
     14                        <input type="submit" value="DISCONNECT"> 
     15                </td> 
     16            </tr> 
    1417                {% for form in rel_part_formset.forms %} 
    1518                {{ form.id }} 
     
    2730                        </tr>    
    2831                {% endfor %} 
    29                 <tr> 
    30                     <td> 
    31                         <input type="submit" value="DISCONNECT"><br /> 
    32                 </td> 
    33             </tr> 
    3432            </table> 
    3533    </form> 
  • trunk/openPLM/urls.py

    r68 r69  
    3030    (r'^object/([^/]+)/([^/]+)/([^/]+)/files/$', display_files), 
    3131    (r'^object/([^/]+)/([^/]+)/([^/]+)/files/add/$', add_file), 
     32    (r'^object/([^/]+)/([^/]+)/([^/]+)/files/checkin/([^/]+)/$', checkin_file), 
    3233    (r'^object/([^/]+)/([^/]+)/([^/]+)/modify/$', modify_object), 
    3334    (r'^object/create/$', create_object), 
Note: See TracChangeset for help on using the changeset viewer.