Image Upload Widget, risolvere i problemi di caricamento

Fra tutte le Widget che sono passate per le Dashboard dei miei Mac, la Image Upload Widget di Model Concept è forse la migliore e sicuramente una delle più utili. Il leggerissimo programmino permette in tutta semplicità di caricare un’immagine direttamente sul servizio di hosting gratuito Image Shack, restituendo un comodissimo URL già accorciato con TinyURL. L’integrazione con il sistema di notifiche Growl completa efficacemente l’opera.

Purtroppo, qualche mese fa, Image Upload ha smesso di funzionare di colpo. Ho pensato che il problema fosse legato a un qualche cambiamento nei codici restituiti da ImageShack o TinyURL non ancora assimilato dagli sviluppatori. L’attesa di un update si è fatta troppo lunga e non sapendo bene in quali porzioni dell’applicazione andare a cercare ho evitato di mettere le mani direttamente sulla widget, optando per soluzioni differenti.

Ho scoperto con piacere che, come me, anche Aron Trimble di TUAW ha riscontrato il medesimo problema. Con piacere ancora maggiore accolgo la soluzione fornita da Aron, che ha messo le mani nelle viscere di Image Upload, sistemando la stringa che crea il problema. Dopo il salto i dettagli tecnici per mettere in pratica il bugfix.

Sul problema avevo intuito giusto, era dovuto ad un cambiamento effettuato da TinyURL che non era stato recepito dallo sviluppatore di questa semiabbandonata widget. Mettere in pratica la soluzione fornita da Aron è molto semplice:

  • Aprite la cartella Libreria/Widgets (nel vostro Hard Disk se avete installato la Widget per tutti gli utenti del computer, nelle vostra cartella personale se l’avete installata solo per il vostro utente)
  • Cliccate con il tasto destro sulla Widget Image Upload e selezionate l’opzione Mostra contenuto pacchetto.
  • Ora dovete aprire il file imageupload.js; per modificare file di codice vi consiglio vivamente di installarvi l’editor Smultron, gratuito e  comodissimo.
  • Individuate alla riga 287 la stringa che comincia con “output=” e commentatela inserendo due backslash (//).
  • Inserite subito sotto questo codice senza le virgolette
    “output = widget.system( “/usr/bin/curl -s \”http://tinyurl.com/create.php?url=” + str_ImgURL + “\” | /usr/bin/awk -F\\\” \'{ print $2 }\’ | /usr/bin/grep http | /usr/bin/awk \’NR==12{print $1}\'”, null ).outputString;”
  • Salvate il file e riavviate Image Upload nella Dashboard rimuovendo la Widget e inserendola nuovamente. Ora dovrebbe funzionare tutto come prima. Se avete bisogno di delucidazioni non esitate a domandare nei commenti.

Se anche voi eravate soliti utilizzare Image Upload sarete sicuramente contenti dell’esistenza di questo workaround. Se non avete mai provato questa widget vi consiglio vivamente di testarla. Finora ci eravamo trattenuti dal recensirla su TAL proprio per l’esistenza di questo fastidioso bug.

Per le stesse motivazioni fornite da Trimble, non forniamo la widget “aggiustata” sotto forma di download diretto: non è ben chiaro se la licenza d’uso del software permetta o meno di redistribuire l’applicazione modificata. In ogni caso speriamo che la Model Concept si decida a fornire un update del programmino, ora che qualcuno ha già fatto tutto il lavoro sporco a costo zero!

[via | TUAW]

15 commenti su “Image Upload Widget, risolvere i problemi di caricamento”

  1. scusate ma cosa intendete con commentate al 4° punto? poi, la scritta in rosso la devo cambiare con quella che avete scritto voi?

    Rispondi
  2. @ mac93
    con commentate intendono l’aggiunta di // ad inizio riga, che rende il codice di quella riga un commento e non più un comando

    Rispondi
  3. @ mac93:

    Commentare significa che inserendo i due backslash il codice che segue su quella riga non verrà interpretato, e sarà considerato commento al codice. ;)

    E’ un metodo che si usa per non cancellare porzioni di codice e non farle comunque interpretare.

    Rispondi
  4. ah ecco grazie 1000, sono un po ignorante in campo:) un altra cosa, l stringa in ch senso bisogna scriverla sotto, nella riga 288 o sempre nella riga 287?
    grazie e scusate se rompo ma la widget mi sarebbe molto utile!

    Rispondi
  5. fantastico!!! il programma sistemato funge alla perfezione!!!l’unica accortezza è di stare attenti a come smultron inserisce le virgolette perche a me le aveva copiate male…basta re inserire tutte le ” e le ‘ e il programma funziona bene…
    non so se mi sono spiegato bene…

    Rispondi
  6. Ciao Mac93. Allora, copia esattamente questo codice

    Nel file vai alla riga 287 e prima di output metti //
    Il codice dovrebbe diventare verde.
    Poi vai alla riga 288, premi invio, così da spostare tutto di una riga.
    Torna alla riga 288 e copia il codice seguente.

    output = widget.system( “/usr/bin/curl -s \”http://tinyurl.com/create.php?url=” + str_ImgURL + “\” | /usr/bin/awk -F\\\” \’{ print $2 }\’ | /usr/bin/grep http | /usr/bin/awk \’NR==12{print $1}\’”, null ).outputString;

    salva il file e riavvia la widget ;)

    Rispondi
  7. @ Camillo: sìsì, ma mentre il blocco del widget “as it is” è un blocco in umpload con la rotellina che gira all’infinito, questo è un blocco totale. Non fa più mouseover, nè fa gestire le preferenze.

    Rispondi

Lascia un commento