Conjunto de mudanças 6552 no repositório publico


Ignorar:
Timestamp:
25/06/2012 15:36:45 (9 anos atrás)
Autor:
mazza
Mensagem:

edicao do carrosel: adicionar e remover painel

Localização:
PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis
Arquivos:
1 adicionado
6 editados

Legenda:

Não Modificado
Adicionado
Removido
  • PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis/browser/boxes/carousel.py

    r6547 r6552  
    3838        for i in range(NUMBER_OF_PRE_CREATED_BOXES):
    3939            if i not in numbers:
    40                 numbers.append(i)
     40                numbers.insert(0, i)
    4141                break
    4242
    43     def remove_item(self, index):
     43    def remove_item(self, id):
     44        index = self._index_from_id(id)
    4445        self.numbers.remove(index)
    45         Box(ICarouselItem, i).erase_data(self.context)
     46        Box(ICarouselItem, index).erase_data(self.context)
    4647
    47     def reorder(self, order):
    48         self.numbers[:] = [int(o.split('_')[-1]) for o in order.split(',')]
     48    def reorder(self, ids):
     49        self.numbers[:] = [self._index_from_id(id) for id in ids.split(',')]
     50
     51    def _index_from_id(self, id):
     52        return int(id.split('_')[-1])
    4953
    5054
     
    6670        if 'add' in self.request:
    6771            self._carousel.add_item()
    68         elif 'del' in self.request:
    69             self._carousel.remove_item()
     72        elif 'remove' in self.request:
     73            self._carousel.remove_item(self.request['remove'])
    7074        elif 'reorder' in self.request:
    7175            self._carousel.reorder(self.request['reorder'])
     76    # TODO: ajustar o render para retornar apenas feedback de sucesso ou falha
    7277
    7378class CarouselBox(BaseBox):
  • PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis/browser/boxes/carouseledit.pt

    r6547 r6552  
    1010<metal:content-core fill-slot="content">
    1111
    12     <script>
    13     $(function() {
     12  <h1>Carrossel</h1>
    1413
    15     $( ".column" ).sortable({
    16                         update: function(event, ui) {
    17                                 var order = $(this).sortable('toArray').toString();
    18                 $.post('edit-carousel', {reorder:order});
    19                         }
    20     });
     14  <h2>Edição</h2>
    2115
    22     $( ".portlet" ).addClass( "ui-widget ui-widget-content ui-helper-clearfix ui-corner-all" )
    23             .find( ".portlet-header" )
    24                 .addClass( "ui-widget-header ui-corner-all" )
    25                 .prepend( "<span class='ui-icon ui-icon-minusthick'></span>")
    26                 .end()
    27             .find( ".portlet-content" );
     16  <ul>
     17    <li>Arreste os paineis para alterar a ordem em que aparecem no carrosel.</li>
     18    <li>Clique em nos ícones <img src="pencil_icon.png" width="16" height="16" alt="Lápis"/>
     19      em cada painel para editá-lo.</li>
     20    <li>Ao terminar volte para a página original.</li>
     21  </ul>
    2822
    29         $( ".portlet-header .ui-icon" ).click(function() {
    30             $( this ).toggleClass( "ui-icon-minusthick" ).toggleClass( "ui-icon-plusthick" );
    31             $( this ).parents( ".portlet:first" ).find( ".portlet-content" ).toggle();
    32         });
    33 
    34         $( ".column" ).disableSelection();
    35 
    36 
    37     });
    38     </script>
    39 
    40     <h1>Carrossel</h1>
    41 
    42     <h2>Edição</h2>
    43 
    44     <ul>
    45       <li>Arreste os paineis para alterar a ordem em que aparecem no carrosel.</li>
    46       <li>Clique em nos ícones <img src="pencil_icon.png" width="16" height="16" alt="Lápis"/>
    47         em cada painel para editá-lo.</li>
    48       <li>Ao terminar salve suas mudanças e volte para a página original.</li>
    49     </ul>
    50 
    51     <div tal:content="structure view/carousel" />
     23  <div tal:content="structure view/carousel" />
    5224
    5325</metal:content-core>
  • PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis/browser/boxes/templates/carousel-edit.html

    r6547 r6552  
    1 <div class="column" id="carousel-edit-panels">
     1<div id="carousel-edit-panels">
    22  {%- for number, data, edit_href in items %}
    33  <div class="portlet" id="carousel_item_{{ number }}">
     
    2020  {%- endfor %}
    2121</div>
     22<form id="carousel-add-form" method="post" action="edit-carousel">
     23  <button id="carousel-add-button" type="submit" name="add" value="_">
     24    Adicionar um novo painel
     25  </button>
     26</form>
  • PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis/sass/_carousel-edit.scss

    r6540 r6552  
    11// TODO: reescrever completamente isso para alinhar-se com o carousel.scss !!!!
    2 .column {
     2// TODO: simpificar o javascript para simplesmente usar templates e scss
     3#carousel-edit-panels {
    34    width: 700px;
    45    float: left;
    56    padding-bottom: 100px;
     7    margin-top: 10px;
    68}
    79.portlet {
    810    margin: 0 1em 1em 0;
    911    width: $carousel-width;
    10     /* height: $carousel-height; */
     12    .editable-box {
     13        min-height: $carousel-height;
     14    }
    1115}
    1216.portlet-header {
     
    2630    height: $carousel-height !important;
    2731}
     32
     33#carousel-add-form {
     34    padding: 10px 0;
     35    font-size: 16px;
     36}
     37.carousel-add-button {
     38    font-size: 12px;
     39}
    2840.ui-sortable-placeholder * {
    2941    visibility: hidden;
  • PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis/static/index.html

    r6522 r6552  
    2020  <!-- É importante que isto venha depois de unifyHeightsOfDottedCells -->
    2121  <script src="js/editable-box.js"></script>
     22
     23  <!-- TODO: colocar isso apenas para carouseledit.pt -->
     24  <script src="js/carousel-edit.js"></script>
     25
    2226</head>
    2327<body>
  • PortalInterlegis/produtos/il.portalinterlegis/trunk/src/il/portalinterlegis/static/js/editable-box.js

    r6540 r6552  
    2727              },
    2828              onClose: function() {
    29                   location.reload();
     29                  // location.reload() would resend post data sometimes
     30                  location = location.href
    3031              }
    3132          },
Note: Veja TracChangeset para ajuda no uso do visualizador de conjunto de mudanças.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.