venerdì 4 marzo 2011

Cancellare programmaticamente un documento

Ho passato il pomeriggio a bestemmiare in tutte le lingue che conosco e a giudicare dagli sguardi che mi circondano, penso di aver raggiunto livelli da "Esorcista" (mancava solo il getto di vomito verde).
Non è che dovevo fare tutto sto lavoro poi... Avendo caricato vari nodi dalla cache e individuato quello da cancellare, utilizzavo il metodo delete() sul documento e ... subito dopo il postback mi ritrovavo il nodo vivo (solo che ripubblicando il sito, spariva come doveva fare).
Il codice assomigliava un po' a questo:
int idNode = 1111;
doc docDaCancellare = new Document(idNode);

docDaCancellare.delete();
umbraco.library.RefreshContent();

ma niente da fare quel maldedetto nodo (sebbene fisicamente sparito dal back-end) continuava a tornare nella mia applicazione come se niente fosse, nonostante ricaricasse un DataTable con tutti i figli del nodo genitore ricaricato.
Alla fine, ho scovato la risposta ai miei problemi in questo post di Tim Saunders (?)
Risultato il codice giusto è qualcosa di simile:
int idNode = 1111;
doc docDaCancellare = new Document(idNode);

if(docDaCancellare.Published)
{
    docDaCancellare.Unpublish();
    umbraco.library.UnpublishSingleNode(docDaCancellare.Id);
}
docDaCancellare.delete();
umbraco.library.RefreshContent();

dove la parte importante per me, la fa umbraco.library.UnpublishSingleNode(docDaCancellare.Id);in quanto rimuove il nodo cancellato dalla cache (file umbraco.config nella cartella data) che sparisce così dalla mia applicazione.
Ora sembra tutto scontato ma dato che il metodo delete() si può chiamare tranquillamente su un documento pubblicato ottenendo la sua cancellazione, non mi sarebbe mai venuto in mente di "depubblicare".
Spero che la mia esperienza possa essere d'aiuto.

domenica 1 agosto 2010

Come fare per installare Umbraco sui server di Aruba

Chi di voi ha acquistato un dominio su Aruba insieme ad un database MS-Sql pensando di installarci Umbraco ci è sicuramente rimasto molto male: l'utente che Aruba vi ha comunicato per accedere al database non è un database owner (dbo) e questo impedisce l'installazione di Umbraco (che non è elencato fra le applicazioni che Aruba vi lascia installare con il suo nuovo Windows Applications Installer).
Non volete spendere i soldi per un server virtuale basic: nessun problema!
Non si tratta di una grande soluzione, ma in questo nuovo articolo da me pubblicato su http://www.umbracoitalia.org/ vi spiego come modificare il codice sorgente di Umbraco con Visual Studio in modo da poter installare Umbraco sullo spazio acquistato da Aruba.
Purtroppo, c'è un prezzo da pagare: per ogni versione minore successiva, dovrete rimodificare il sorgente e il problema non essendo dovuto ad Umbraco, bensì alle politiche di sicurezza di Aruba, non avrete nessuna garanzia che un eventuale upgrade sarà indolore. Come continua a ripetere mio figlio: "Uomo avvisato mezzo salvato!"

lunedì 5 luglio 2010

Lavorare con gli stili all'interno del Richtext Editor di Umbraco

Poter disporre di stili personalizzati all’interno del Richtext Editor di Umbraco permette di mettere a disposizione dei redattori di contenuti gli strumenti necessari alla creazione di testo formattato senza dover necessariamente dare loro l’accesso al codice html. Questo articolo vi insegnerà come popolare il menu a discesa degli stili e fare in modo che l’aspetto del testo nell’editor corrisponda all’aspetto dello stesso sul sito pubblicato.
Su umbracoitalia.org, troverete il tutorial che ho scritto a riguardo.

sabato 3 luglio 2010

Aggiornamento a Umbraco 4.5 su Virtual Server Professional

Questa mattina ho deciso di aggiornare una installazione di Umbraco su un server virtuale di Aruba (Win 2003).
Seguendo passo a passo gli accorgimenti preconisati da Niels (vedi articolo su sito Umbraco).
Ma appena caricato il nuovo web.config modificato, il sito si inchioda (Errore nel web.config).
Non ci vuole tanto a capire che sul server non è mai stato installato il framework 4.0 (avrei anche potuto verificare). Utilizzando web platform installer 2.0,  l'installazione è una passeggiata. Riavvio e... niente, neanche stavolta: un banalissimo codice di errore 500 (un bel errore interno del server non meglio specificato).
Cerca ancora... ah, grazie a Plesk, Umbraco sta girando sull'App Pool di default (che esegue NET 2.0). Vado a modificare la configurazione del web site, ma non funziona.
A questo punto, torno nella configurazione del dominio in Plesk e imposto un App Pool separato. (Prima avevo provato a configurare un app pool ASP.NET 4.0 ma senza successo perchè a Plesk, non piace che si vada a toccare direttamente IIS 6.0.) - Mi chiedo se per gli altri siti sarò costretto a fare lo stesso o se potrò riutilizzare il mio app pool. Secondo me, con Plesk, non se ne parla.
Un' ultima correzione, dopo l'installazione del framework 4, tutti i siti stavano utilizzando il filtro del framework 4 e io mi disperavo perché non funzionavano più nessuno dei siti. L'ho riportato al 2.0 per la configurazione di default. E questa volta funziona tutto.
Se non che con questa nuova versione di Umbraco è inutilie tentare di accedere all'indirizzo www.website/umbraco/ bisogna proprio specificare umbraco/umbraco.aspx o umbraco/login.aspx. (Mi sa che questa la risolverò con qualche modifiche al web.config).
Comunque, attenti all'upgrade sui server di Aruba, non è una passeggiata!

mercoledì 30 giugno 2010

Umbraco in Italia: partenza difficile

La notizia è di questa mattina: il Visual Studio Community Tour di Microsoft in Trentino è stato annullato. E con lui, la presentazione ufficiale della communità italiana che si occupa del CMS open-source danese Umbraco.

Il lavoro per organizzare un simile evento è tanto. Bisogna trovare gli speaker, gli sponsors, un luogo adatto alla manifestazione. Poi, si commincia a preparare i contenuti: slides, codice, siti e showcase. Con tanta buona volontà, perché la soddisfazione è solo quella di poter parlare della nostra passione davanti ad un pubblico di intenditori.

L'evento era una prima sotto tanti punti di vista. Speravo di poter dare vita alla community di sviluppatori .NET. Mettere in piedi una rete di persone qualificate, conoscitori delle tecnologie Microsoft (Silverlight, MVC2, LINQ, ASP.NET 4) e questo non poteva che andare a vantaggio delle aziende IT che operano localmente (e non solo). Insomma, il vantaggio economico per il Trentino c'era. Col tempo, si sarebbe potuto contare su una rete di persone competenti, senza dover formarle. Così non è stato. Con pochi iscritti che non erano neanche trentini, l'evento doveva per forza essere cancellato. Avvisi in Università, evento su Facebook e i cinguettii di Twitter non sono bastati.

Doveva essere anche la prima uscita di Umbraco Italia. E allora cos'è che non ha funzionato? E il Trentino che non è interessato alle tecnologie Microsoft? Sono i canali d'informazione alternativi che non hanno funzionato? Twitter e Facebook non arrivano sulle Dolomiti? O, la località scelta non è piaciuta?

Baselga di Pinè non era una scelta azzardata. Per chi passa ore e ore rinchiuso a rovinarsi gli occhi davanti ad uno schermo, questa bella località, con i suoi laghi e le sue innumerevoli possibilità di passeggiate nei boschi, poteva essere un piacevole diversivo. Anche il giorno e l'orario erano stati scelti con gli stessi criteri: il venerdì pomeriggio la produttività aziendale rasenta lo zero! Altra vantaggio: si stava al fresco e non nell'inferno estivo della città di Trento.

venerdì 30 aprile 2010

Installare Umbraco con Web Platform Installer

Mi sono accorto oggi che Simone Chiaretta aveva pubblicato il 19 aprile su FoxyBlog un breve articolo per segnalare la pubblicazione sul sito BeIt di Microsoft di due webcast che riguardano l'installazione di applicazioni open-source con Microsoft Web Platform Installer.

Il primo riguarda l'installazione di Subtext ed è reallizzato da Simone (a chi auguro buona fortuna per il suo nuovo lavoro a Bruxelles, la città da cui provengo), mentre
il secondo è stato realizzato da me è riguarda invece l'installazione di Umbraco.

Non perdeteveli.

domenica 18 aprile 2010

SEAT – Pagine gialle fa concorrenza sleale alle web agency?

Questa la domanda rivoltami ieri da un’amica dopo aver ricevuto la visita di un commerciale SEAT, che in cambio di un impegno a firmare un contratto per 2 anni di inserzione sulle pagine gialle, le ha offerto la realizzazione gratuita di un sito web di una decina di pagina, compreso registrazione del dominio e servizio fotografico professionale. E non si tratta nemmeno del classico sito statico dato che Seat offre al cliente la possibilità di gestire in modo autonomo le foto e i testi. L’offerta rivolta agli inserzionisti Pagine Gialle ha di che preoccupare le piccole agenzie che operano a livello locale in piccole realtà?

“Quando ti vogliono regalare qualcosa, inizia a chiederti dove sta la fregatura!”

Personalmente, non so dirvi se e dove in questo caso stia la fregatura ma una cosa è certa: se questa iniziativa è estesa a tutti i clienti SEAT, senza distinzioni basate su criteri locali o regionali, costringerà più di una piccola agenzia a chiudere. Per quanto piccolo sia, la creazione di un sito ha per forza un costo. Un designer ne deve studiare la grafica con il cliente, un fotografo deve andare in loco a fare il servizio, i testi devono essere scritti, il codice html della pagine deve essere ottimizzato per essere visto sulla maggior parte dei browser in circolazione. E se tutto questo per il cliente finale viene offerto a costo zero, non vi è possibilità di concorrenza.

Queste agenzie si troveranno nella condizione di dover chiudere oppure di collaborare con SEAT, a delle condizioni vergognose, perdendo per sempre la capacità di innovare e di acquistare strumenti di produzione aggiornati (Adobe Creative Suite 5 Design Premium, la suite indispensabile ad ogni web designer costa da sola € 2.299,00 IVA escl. per licenza).

Non so se sia o meno concorrenza sleale ma di sicuro si tratta di una concorrenza con la quale non posso competere nel segmento delle piccole medie aziende locali.