No estás registrado (Registrarse)

Vanilla 1.1.10 es un producto de Lussumo. Para más información: Documentación, Soporte.

    •  
      CommentAuthorignatius
    • CommentTimeJan 15th 2012
     # 1
    Estoy creando un algunos módulos extra para un CMS muy básico hecho sobre CodeIgniter y estoy encantado salvo por el sortable este. Parto del módulo de menús en el que se ordenan los elementos usando nestedSorteable y funciona perfecto tal que así:


    <script src="<?php echo $this->config->item('admin_assets_path');?>js/jquery.ui.nestedSortable.js"></script>
    <script>
    $(document).ready(function() {
    $('#item_list').nestedSortable({
    placeholder: 'placeholder',
    forcePlaceholderSize: true,
    'opacity': .6,
    'items':'li',
    'nested':'ol',
    stop: function(i) {
    $.post("<?php echo base_url(); ?>reorder_<?php echo $this->uri->segment(2);?>/", { items: $("#item_list").nestedSortable('toArray'), menu_id: <?php echo $this->uri->segment(4); ?>, <?php echo $this->config->item('csrf_token_name'); ?>: $('input[name="ci_token"]').val() });
    }
    });
    });
    </script>


    Y he creado el módulo FAQ en el que los elementos no están anidados y usan solo 'sortable'...


    <script src="<?php echo $this->config->item('admin_assets_path');?>js/jquery.ui.sortable.js"></script>
    <script>
    $(document).ready(function() {
    $('#item_list').sortable({
    placeholder: 'placeholder',
    forcePlaceholderSize: true,
    'opacity': .6,
    stop: function(i) {
    $.post("<?php echo base_url(); ?>reorder_faqitems/", { items: $("#item_list").sortable('toArray'), lang_faq: <?php echo $this->uri->segment(4); ?>, <?php echo $this->config->item('csrf_token_name'); ?>: $('input[name="ci_token"]').val() });
    }
    });
    });
    </script>


    El archivo .js existe y está en su sitio; incluso me deja ordenar la lista pero no envía el POST. La url a la que postea existe y funciona; además de ésta he probado tropecientas configuraciones más que he encontrado por ahí, y con alguna he logrado enviar algo por GET pero no me vale con enviar solo el array ordenado; necesito, además los dos valores adicionales que véis el lang_faq y el token de seguridad... :smash: :smash:

    Gracias!
    •  
      CommentAuthorJavi
    • CommentTimeJan 15th 2012
     # 2
    desde el debug de firebug, puedes copiar la peticion o simplemente, no la hace?
    •  
      CommentAuthorignatius
    • CommentTimeJan 15th 2012
     # 3
    Posted By: Javidesde el debug de firebug, puedes copiar la peticion o simplemente, no la hace?


    No la hace...
    •  
      CommentAuthorJavi
    • CommentTimeJan 15th 2012
     # 4
    y no te da ningun error de javascript? se me hace que hay algun error de sintaxi...
    •  
      CommentAuthorignatius
    • CommentTimeJan 15th 2012
     # 5
    Javi, gracias por tu ayuda... perdona que no te haya contestado antes...

    Sí que da un error, no conozco bien firebug, pero en la consola, me da un error:


    es is not defined


    'es' se refiere al valor de lang_faq que se intenta postear junto al array ordenado.

    ¡si le quito esa parte postea! :first: no se soluciona, pero es un avance...
    •  
      CommentAuthorignatius
    • CommentTimeJan 15th 2012 editado
     # 6
    upss si lo pongo entre comillas funcioooona :first:

    No puedo creer que una chorrada así me haya tenido tan loco. Gracias por tu ayuda, de no haberle metido mano a la consola del firebug me hubiera muerto probando cosas... Ahora solo falta procesar bien lo que me llega por post, pero ahí me las apaño mejor.
    •  
      CommentAuthorJavi
    • CommentTimeJan 15th 2012
     # 7
    :-) son errores típicos cuando mezclas js y php...

    Por cierto, si hubieras tabulado el $.post lo hubieras encontrado antes el error, es una recomendación de alguien que llevará acumuladas unas 100 horas en búsquedas de errores de este tipo :dumb:


    $.post("<?php echo base_url(); ?>reorder_faqitems/", {
    items: $("#item_list").sortable('toArray'),
    lang_faq: <?php echo $this->uri->segment(4); ?>,
    <?php echo $this->config->item('csrf_token_name'); ?>: $('input[name="ci_token"]').val()
    });
    •  
      CommentAuthorignatius
    • CommentTimeJan 15th 2012
     # 8
    Posted By: Javisi hubieras tabulado el $.post


    Sí, tomo nota. Queda mucho más claro, la verdad...

    Pero es que como partía del otro módulo pues... :dumb:

    Por cierto, el CodeIgniter me gusta cada vez más. La de horas que me hubiera ahorrado de haberlo conocido hace tiempo. Aún así hay que echarle horas porque la curva de aprendizaje es lo que tiene... pero tiene una pinta estupenda. Y sobre todo es que te hace ser organizado aunque seas un desastre por naturaleza y no tengas ni puta idea de MVC y demás paradigmas. Además de lo que supone tener un esqueleto pontente desarrollado, lo veo como los cuadernos de doble raya para escribir derecho :dumb:
    •  
      CommentAuthorJavi
    • CommentTimeJan 15th 2012
     # 9
    Posted By: ignatiusAdemás de lo que supone tener un esqueleto pontente desarrollado


    Cuando le pilles el tranquillo al MVC, acabarás desarrollándote uno propio quitando toda la farfolla que los frameworks te endiñan. Pero, de todos, CI es el más rápido de aprender!

    Suerte :cataa::cataa: