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]
capemaster 01/01/2009 il 12:41
mmhhh
si blocca proprio… la widget non reagisce più
mac93 01/01/2009 il 13:53
scusate ma cosa intendete con commentate al 4° punto? poi, la scritta in rosso la devo cambiare con quella che avete scritto voi?
Nòr 01/01/2009 il 14:55
@ mac93
con commentate intendono l’aggiunta di // ad inizio riga, che rende il codice di quella riga un commento e non più un comando
Camillo Miller 01/01/2009 il 14:57
@ 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.
Camillo Miller 01/01/2009 il 14:58
@ capemaster:
L’articolo parla appunto della soluzione per quel problema :)
mac93 01/01/2009 il 15:57
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!
narduz 02/01/2009 il 11:44
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…
mac93 02/01/2009 il 11:54
io non ci sono ancora riuscito, uffa non è che qualcuno può inviarmi x email il file da modificare?
Camillo Miller 02/01/2009 il 12:06
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 ;)
mac93 02/01/2009 il 12:38
ho fatto come mi dici te ma nn so perchè ma la widget si blocca non risponde più :(
capemaster 02/01/2009 il 13:13
@ 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.
capemaster 02/01/2009 il 13:15
è upload, ovviamente
Casera_Stagionato 03/01/2009 il 18:29
Ciao a tutti,
ma a me il widget non si installa nemmeno. Il sistema mi restituisce un errore di “windget non valido”. Uso Mac Os X 10.5.6 super aggiornato. Grazie!
http://img293.imageshack.us/img293/8329/screencapturejk9.png
mac93 10/04/2009 il 09:08
a me ha cominciato a non funzionare più