Plus Forum E-handelsforumet Logistik Script för SkickaLätt

Visar 10 inlägg - 1 till 10 (av 16 totalt)
  • Författare
    Inlägg
  • #98889
    Bjorn
    Deltagare

    Med inspiration från Fractronics packsoft-script gjorde jag ett för Postens Skicka Lätt.

    Det är mitt första Greasemonkey-script så det går säkert att förbättra, då jag har 2 shoppar så har scriptet stöd för båda, är enkelt att lägga till fler eller ta bort. Jag har kommenterat de rader som ni behöver ändra för att få det att fungera för er. Förbättringsförslag eller frågor mottages gärna.

    Scriptet triggas alltså om urlarna innehåller vad som specats. Jag triggar kopieringen av adress på inputfältet firstname som ligger i en container med id customers.

    Installera Greasemonkey till Firefox, spara scriptet lokalt som t.ex. skickalatt.user.js och öppna det i Firefox så får du där möjlighet att installera det som ett GM-script.

    // ==UserScript==
    // @name skickalatt
    // @namespace http://www.dinshopp.se
    // @author Björn Hansson
    // @description Posten skicka lätt
    // @include http://skicka.posten.se*
    // @include http://www.dinshopp1.se/admin*
    // @include http://www.dinshopp2.se/admin*
    // @require http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js
    // @version 001
    // ==/UserScript==

    // Base url identifier of page to collect address from
    var customer_info_url_base = “index.php?controller=customers&action=setCustomer&id=”; // You need to change this

    // When object is clicked on the above page address is collected (in this case the input field with the name firstname in the container with id customers)
    var object_to_click = “#customers input[name=firstname]”; // You need to change this

    // Attach the collect_address function to above object on the page to copy address from
    if (window.location.href.indexOf(customer_info_url_base) > -1)
    {
    $(object_to_click).click(collect_address);
    }
    else if (GM_getValue(“collected”) == 1 && document.location.href.indexOf(“serviceSettings.aspx?ServiceKey=SkickaLatt”)>-1)
    { // Posten skicka lätt page: If address is collected and we are at postens page for skicka lätt

    // Packet size
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_SizeSettings_LengthTextBox’).val(’20’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_SizeSettings_WidthTextBox’).val(’20’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_SizeSettings_HeightTextBox’).val(’10’); // You need to change this

    // Sending company
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressCompany’).val(‘Företag AB’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressName’).val(GM_getValue(“fromName”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressStreet’).val(‘Gatan 1’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressZip’).val(‘12312’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressCity’).val(‘Staden’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressEmail’).val(GM_getValue(“fromEmail”));

    // Customer info
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromCompany’).trigger(“click”);
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressName’).val(GM_getValue(“firstname”)+’ ‘+GM_getValue(“lastname”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressStreet’).val(GM_getValue(“address1”)+’ ‘+GM_getValue(“address2”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressZip’).val(GM_getValue(“zipcode”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressCity’).val(GM_getValue(“city”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressEmail’).val(GM_getValue(“email”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressMobilePhoneNumber’).val(GM_getValue(“cell_phone”));
    }

    function collect_address()
    {
    GM_setValue(“firstname”, $(“input[name=firstname]”).val() );
    GM_setValue(“lastname”, $(“input[name=lastname]”).val() );
    GM_setValue(“email”, $(“input[name=email]”).val() );
    GM_setValue(“address1”, $(“input[name=address1]”).val() );
    GM_setValue(“address2”, $(“input[name=address2]”).val() );
    GM_setValue(“zipcode”, $(“input[name=zipcode]”).val().replace(” “,””) ); // No spaces allowed in zipcode
    GM_setValue(“city”, $(“input[name=city]”).val() ); // Not actually needed since posten fills this by auto from zipcode..
    GM_setValue(“cell_phone”, $(“input[name=cell_phone]”).val() );

    if(document.location.href.indexOf(“http://www.dinshopp1.se/admin”)>-1) // You need to change this
    {
    GM_setValue(“fromName”, “Shoppnamn1”); // You need to change this
    GM_setValue(“fromEmail”, “info@dinshopp1.se”); // You need to change this
    }
    else if(document.location.href.indexOf(“http://www.dinshopp2.se/admin”)>-1) // You need to change this
    {
    GM_setValue(“fromName”, “Shoppnamn2”); // You need to change this
    GM_setValue(“fromEmail”, “info@dinshopp2.se”); // You need to change this
    }

    GM_setValue(“collected”, “1”);
    alert(“Address of ” + GM_getValue(“firstname”) + ” ” + GM_getValue(“lastname”) + ” collected. You are now redirected to posten.se”);
    window.open(“http://skicka.posten.se/Skicka/Pages/serviceSettings.aspx?ServiceKey=SkickaLatt”);
    }
    [/CODE][CODE]
    // ==UserScript==
    // @name skickalatt
    // @namespace http://www.dinshopp.se
    // @author Björn Hansson
    // @description Posten skicka lätt
    // @include http://skicka.posten.se*
    // @include http://www.dinshopp1.se/admin*
    // @include http://www.dinshopp2.se/admin*
    // @require http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js
    // @version 001
    // ==/UserScript==

    // Base url identifier of page to collect address from
    var customer_info_url_base = “index.php?controller=customers&action=setCustomer&id=”; // You need to change this

    // When object is clicked on the above page address is collected (in this case the input field with the name firstname in the container with id customers)
    var object_to_click = “#customers input[name=firstname]”; // You need to change this

    // Attach the collect_address function to above object on the page to copy address from
    if (window.location.href.indexOf(customer_info_url_base) > -1)
    {
    $(object_to_click).click(collect_address);
    }
    else if (GM_getValue(“collected”) == 1 && document.location.href.indexOf(“serviceSettings.aspx?ServiceKey=SkickaLatt”)>-1)
    { // Posten skicka lätt page: If address is collected and we are at postens page for skicka lätt

    // Packet size
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_SizeSettings_LengthTextBox’).val(’20’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_SizeSettings_WidthTextBox’).val(’20’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_SizeSettings_HeightTextBox’).val(’10’); // You need to change this

    // Sending company
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressCompany’).val(‘Företag AB’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressName’).val(GM_getValue(“fromName”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressStreet’).val(‘Gatan 1’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressZip’).val(‘12312’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressCity’).val(‘Staden’); // You need to change this
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromAddressEmail’).val(GM_getValue(“fromEmail”));

    // Customer info
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_fromCompany’).trigger(“click”);
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressName’).val(GM_getValue(“firstname”)+’ ‘+GM_getValue(“lastname”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressStreet’).val(GM_getValue(“address1”)+’ ‘+GM_getValue(“address2”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressZip’).val(GM_getValue(“zipcode”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressCity’).val(GM_getValue(“city”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressEmail’).val(GM_getValue(“email”));
    $(‘#ctl00_PlaceHolderMain_ServiceSettings_AddressControl_toAddressMobilePhoneNumber’).val(GM_getValue(“cell_phone”));
    }

    function collect_address()
    {
    GM_setValue(“firstname”, $(“input[name=firstname]”).val() );
    GM_setValue(“lastname”, $(“input[name=lastname]”).val() );
    GM_setValue(“email”, $(“input[name=email]”).val() );
    GM_setValue(“address1”, $(“input[name=address1]”).val() );
    GM_setValue(“address2”, $(“input[name=address2]”).val() );
    GM_setValue(“zipcode”, $(“input[name=zipcode]”).val().replace(” “,””) ); // No spaces allowed in zipcode
    GM_setValue(“city”, $(“input[name=city]”).val() ); // Not actually needed since posten fills this by auto from zipcode..
    GM_setValue(“cell_phone”, $(“input[name=cell_phone]”).val() );

    if(document.location.href.indexOf(“http://www.dinshopp1.se/admin”)>-1) // You need to change this
    {
    GM_setValue(“fromName”, “Shoppnamn1”); // You need to change this
    GM_setValue(“fromEmail”, “info@dinshopp1.se”); // You need to change this
    }
    else if(document.location.href.indexOf(“http://www.dinshopp2.se/admin”)>-1) // You need to change this
    {
    GM_setValue(“fromName”, “Shoppnamn2”); // You need to change this
    GM_setValue(“fromEmail”, “info@dinshopp2.se”); // You need to change this
    }

    GM_setValue(“collected”, “1”);
    alert(“Address of ” + GM_getValue(“firstname”) + ” ” + GM_getValue(“lastname”) + ” collected. You are now redirected to posten.se”);
    window.open(“http://skicka.posten.se/Skicka/Pages/serviceSettings.aspx?ServiceKey=SkickaLatt”);
    }
    [/CODE]

    #152894
    shavingroom
    Deltagare

    Tack för detta!

    Tyvärr är man ju inte direkt vass på script/programmering trots att jag jobbar med IT…

    Kör min butik på Talex (osc) och en hel del verkar annorlunda från hur ditt script ser ut.

    Kan betala för att få detta att fungera, PM!

    #152936
    tonys
    Medlem

    Hej Shavingroom,
    Det är bara att kontakta oss.
    Talex är inte riktigt osc sedan länge heller :-)

    #152958
    Bjorn
    Deltagare

    Svarar gärna på frågor om ni behöver hjälp, man får anpassa triggern (object_to_click) och från vilka fält uppgifterna hämtas, beroende på hur sidan är uppbyggd.

    #161420
    thbr02
    Medlem

    Jag försöker att integrera detta script med Opencart och skulle helst se att jag kunde köra scriptet i Opencart utan att använda mig av någon webläsar plugin. Är detta möjligt?

    #161428
    Bjorn
    Deltagare

    Nej inte detta script. Det är gjort just för den plugin.

    #161433
    thbr02
    Medlem

    Ska variablerna defineras i Opencart på något sätt som i pacsoft scriptet?

    #161470
    thbr02
    Medlem

    Jag skulle gärna vilja använda detta script för att på ett enkelt sätt föra över tidskrävande uppgifter till Postens formulär. Mitt problem är att jag inte har en aning om hur jag aktiverar det. Tar gärna emot lite tips. Jag använder Opencart 1.5.1.3.

    #175252
    jonas32
    Deltagare

    Jepp, fick allt att funka på båda mina shoppar. Så perfekt :) Tack.
    Finns det någon som kan hjälpa mig hur man lägger det i varukorgen automatiskt också så vore det dunder :)

    #181257
    Jon82
    Deltagare

    @jonas32 78040 wrote:

    Jepp, fick allt att funka på båda mina shoppar. Så perfekt :) Tack.
    Finns det någon som kan hjälpa mig hur man lägger det i varukorgen automatiskt också så vore det dunder :)

    Hej.. fungerar det här fortfarande?
    Kan verkligen ingenting om att programmera så all hjälp uppskattas.

    Skulle älska att få igång det här till webshopen.

Visar 10 inlägg - 1 till 10 (av 16 totalt)
  • Du måste vara inloggad för att svara på detta ämne.