pawlo884 Posted November 17, 2013 Share Posted November 17, 2013 Witam. Tak jak w temacie. Szukam rozwiązania aby kopiować opis produktu w miejsce krótkiego opisu ponieważ ręczne kopiowanie jest nieco męczące. Pozdrawiam Link to comment Share on other sites More sharing options...
vekia Posted November 17, 2013 Share Posted November 17, 2013 jaka wersja prestashop? Link to comment Share on other sites More sharing options...
pawlo884 Posted November 17, 2013 Author Share Posted November 17, 2013 1.5.6 Link to comment Share on other sites More sharing options...
vekia Posted November 17, 2013 Share Posted November 17, 2013 ok dzięki, jeszcze jedno pytanie: chodzi Ci o ustawienie "z automatu" masowo dla wielu produktów, czy o ułatwienie sobie pracy w back office? (piszac pierwszego posta pomyslałem o tym drugim jednak po chwili zastanowienia doszedłem do wniosku, że możesz pytać o jakiś "automat") Link to comment Share on other sites More sharing options...
pawlo884 Posted November 17, 2013 Author Share Posted November 17, 2013 Chodzi mi o ułatwienie sobie pracy w back office. Znalazłem gdzieś na anglojęzycznym forum rozwiązanie ale z 2010 roku więc jak dla mnie nijak się ma do obecnej presty bo nie jestem na tyle biegły w programowaniu aby wiedzieć gdzie co wkleić. Tam to było rozwiązane poprzez dodanie linijki kodu w product.tpl Link to comment Share on other sites More sharing options...
vekia Posted November 17, 2013 Share Posted November 17, 2013 ok! no to mam rozwiązanie, wydaje mi się, ze ułatwi prace w pliku: js/tools.js dodaj taki kod: $( document ).ready(function() { $('.product_description').dblclick(function(){tinyMCE.activeEditor.setContent($('#description_1').val())}); }); teraz na stronie produktu: to jest tylko przykład, możesz np. dodac swoje buttony do kopiowania i w kodzie powyżej zamiast .product_description dajesz nazwę swojej klasy buttona. Link to comment Share on other sites More sharing options...
pawlo884 Posted November 17, 2013 Author Share Posted November 17, 2013 (edited) a to ma być jakieś konkretne miejsce w kodzie? dodałem praktycznie na samym końcu i nie działa. /* * 2007-2013 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Academic Free License (AFL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/afl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2013 PrestaShop SA * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ function ps_round(value, precision) { if (typeof(roundMode) === 'undefined') roundMode = 2; if (typeof(precision) === 'undefined') precision = 2; method = roundMode; if (method === 0) return ceilf(value, precision); else if (method === 1) return floorf(value, precision); precisionFactor = precision === 0 ? 1 : Math.pow(10, precision); return Math.round(value * precisionFactor) / precisionFactor; } function ceilf(value, precision) { if (typeof(precision) === 'undefined') precision = 0; precisionFactor = precision === 0 ? 1 : Math.pow(10, precision); tmp = value * precisionFactor; tmp2 = tmp.toString(); if (tmp2[tmp2.length - 1] === 0) return value; return Math.ceil(value * precisionFactor) / precisionFactor; } function floorf(value, precision) { if (typeof(precision) === 'undefined') precision = 0; precisionFactor = precision === 0 ? 1 : Math.pow(10, precision); tmp = value * precisionFactor; tmp2 = tmp.toString(); if (tmp2[tmp2.length - 1] === 0) return value; return Math.floor(value * precisionFactor) / precisionFactor; } function formatedNumberToFloat(price, currencyFormat, currencySign) { price = price.replace(currencySign, ''); if (currencyFormat === 1) return parseFloat(price.replace(',', '').replace(' ', '')); else if (currencyFormat === 2) return parseFloat(price.replace(' ', '').replace(',', '.')); else if (currencyFormat === 3) return parseFloat(price.replace('.', '').replace(' ', '').replace(',', '.')); else if (currencyFormat === 4) return parseFloat(price.replace(',', '').replace(' ', '')); return price; } //return a formatted price function formatCurrency(price, currencyFormat, currencySign, currencyBlank) { // if you modified this function, don't forget to modify the PHP function displayPrice (in the Tools.php class) blank = ''; price = parseFloat(price.toFixed(6)); price = ps_round(price, priceDisplayPrecision); if (currencyBlank > 0) blank = ' '; if (currencyFormat == 1) return currencySign + blank + formatNumber(price, priceDisplayPrecision, ',', '.'); if (currencyFormat == 2) return (formatNumber(price, priceDisplayPrecision, ' ', ',') + blank + currencySign); if (currencyFormat == 3) return (currencySign + blank + formatNumber(price, priceDisplayPrecision, '.', ',')); if (currencyFormat == 4) return (formatNumber(price, priceDisplayPrecision, ',', '.') + blank + currencySign); if (currencyFormat == 5) return (formatNumber(price, priceDisplayPrecision, ' ', '.') + blank + currencySign); return price; } //return a formatted number function formatNumber(value, numberOfDecimal, thousenSeparator, virgule) { value = value.toFixed(numberOfDecimal); var val_string = value+''; var tmp = val_string.split('.'); var abs_val_string = (tmp.length === 2) ? tmp[0] : val_string; var deci_string = ('0.' + (tmp.length === 2 ? tmp[1] : 0)).substr(2); var nb = abs_val_string.length; for (var i = 1 ; i < 4; i++) if (value >= Math.pow(10, (3 * i))) abs_val_string = abs_val_string.substring(0, nb - (3 * i)) + thousenSeparator + abs_val_string.substring(nb - (3 * i)); if (parseInt(numberOfDecimal) === 0) return abs_val_string; return abs_val_string + virgule + (deci_string > 0 ? deci_string : '00'); } //change the text of a jQuery element with a sliding effect (velocity could be a number in ms, 'slow' or 'fast', effect1 and effect2 could be slide, fade, hide, show) function updateTextWithEffect(jQueryElement, text, velocity, effect1, effect2, newClass) { if(jQueryElement.text() !== text) if(effect1 === 'fade') jQueryElement.fadeOut(velocity, function(){ $(this).addClass(newClass); if(effect2 === 'fade') $(this).text(text).fadeIn(velocity); else if(effect2 === 'slide') $(this).text(text).slideDown(velocity); else if(effect2 === 'show') $(this).text(text).show(velocity, function(){}); }); else if(effect1 === 'slide') jQueryElement.slideUp(velocity, function(){ $(this).addClass(newClass); if(effect2 === 'fade') $(this).text(text).fadeIn(velocity); else if(effect2 === 'slide') $(this).text(text).slideDown(velocity); else if(effect2 === 'show') $(this).text(text).show(velocity); }); else if(effect1 === 'hide') jQueryElement.hide(velocity, function(){ $(this).addClass(newClass); if(effect2 === 'fade') $(this).text(text).fadeIn(velocity); else if(effect2 === 'slide') $(this).text(text).slideDown(velocity); else if(effect2 === 'show') $(this).text(text).show(velocity); }); } //show a JS debug function dbg(value) { var active = false;//true for active var firefox = true;//true if debug under firefox if (active) if (firefox) console.log(value); else alert(value); } /** * Function : print_r() * Arguments: The data - array,hash(associative array),object * The level - OPTIONAL * Returns : The textual representation of the array. * This function was inspired by the print_r function of PHP. * This will accept some data as the argument and return a * text that will be a more readable version of the * array/hash/object that is given. */ function print_r(arr, level) { var dumped_text = ""; if (!level) level = 0; //The padding given at the beginning of the line. var level_padding = ""; for (var j = 0 ; j < level + 1; j++) level_padding += " "; if (typeof(arr) === 'object') { //Array/Hashes/Objects for (var item in arr) { var value = arr[item]; if (typeof(value) === 'object') { //If it is an array, dumped_text += level_padding + "'" + item + "' ...\n"; dumped_text += dump(value,level+1); } else { dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n"; } } } else { //Stings/Chars/Numbers etc. dumped_text = "===>" + arr + "<===("+typeof(arr)+")"; } return dumped_text; } //verify if value is in the array function in_array(value, array) { for (var i in array) if (array[i] === value) return true; return false; } function resizeAddressesBox(nameBox) { maxHeight = 0; if (typeof(nameBox) === 'undefined') nameBox = '.address'; $(nameBox).each(function() { $(this).css('height', 'auto'); currentHeight = $(this).height(); if (maxHeight < currentHeight) maxHeight = currentHeight; }); $(nameBox).height(maxHeight); } $(document).ready(function() { $.fn.checkboxChange = function(fnChecked, fnUnchecked) { if ($(this).prop('checked') && fnChecked) fnChecked.call(this); else if(fnUnchecked) fnUnchecked.call(this); if (!$(this).attr('eventCheckboxChange')) { $(this).live('change', function() { $(this).checkboxChange(fnChecked, fnUnchecked); }); $(this).attr('eventCheckboxChange', true); } }; }); // kopiowanie opisu do krótkiego opisu $( document ).ready(function() { $('.product_description').dblclick(function(){tinyMCE.activeEditor.setContent($('#description_1').val())}); }); // Use it to simulate target blank link $(function(){ $('a.js-new-window').click(function(){ window.open(this.href); return false; }); }); Edited November 17, 2013 by pawlo884 (see edit history) Link to comment Share on other sites More sharing options...
vekia Posted November 17, 2013 Share Posted November 17, 2013 wszystko jest ok, problem jest w innym miejscu. ja w swoim przykładzie pokazałem jak to zrobić dla języka angielskiego: #description_1 ta 1 na końcu to numer ID języka. jak działasz na innej wersji językowej, tj. np. masz tylko język Polski - Twój ID języka jest na 100% inny zweryfikuj to proszę i podmień 1 na poprawną wartość Link to comment Share on other sites More sharing options...
pawlo884 Posted November 17, 2013 Author Share Posted November 17, 2013 (edited) jak dla mnie powinno działać.. chyba że to nie to Edited November 17, 2013 by pawlo884 (see edit history) Link to comment Share on other sites More sharing options...
vekia Posted November 17, 2013 Share Posted November 17, 2013 zaraz zaraz... ten kod który podałeś, to z jakiego pliku pochodzi? Link to comment Share on other sites More sharing options...
pawlo884 Posted November 18, 2013 Author Share Posted November 18, 2013 (edited) /shop/themes/szablon1/js/tools.js brak precyzji czasem zabija Tak więc który plik mam edytować, bo póki co dwa znalazłem. Edited November 18, 2013 by pawlo884 (see edit history) Link to comment Share on other sites More sharing options...
vekia Posted November 18, 2013 Share Posted November 18, 2013 plik: /js/tools.js z katalogu prestashop, nie z katalogu z templatką Link to comment Share on other sites More sharing options...
pawlo884 Posted November 18, 2013 Author Share Posted November 18, 2013 (edited) też już to zrobiłem i niestety nie działa OK chyba mam rozwiązanie problemu. Przetestowałem w IE i działa. Moja mozarella coś szwankuje chyba. Przepraszam za kłopot i godzinę spędzoną na poszukiwaniu problemu. Wyczyściłem cache przeglądarki i wszystko jest teraz ok. Edited November 18, 2013 by pawlo884 (see edit history) Link to comment Share on other sites More sharing options...
vekia Posted November 18, 2013 Share Posted November 18, 2013 czyli przeglądarka pamiętała starą zawartość pliku, fajnie, że jest ok gdyby trzeba było zrobić wsparcie dla kilku języków, wiesz gdzie mnie szukać Link to comment Share on other sites More sharing options...
pawlo884 Posted November 18, 2013 Author Share Posted November 18, 2013 miałem o to pytać kilka postów wcześniej tylko skupiłem się już na czym innym i zapomniałem. Ale to już przy następnej okazji odświeżymy wątek. Dzięki za pomoc. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now