Ubuntu: Accedere a un disco NTFS con i permessi dell’utente corrente

Per montare un disco NTFS con i permessi di un utente che non sia root, inserire la seguente riga nel file /etc/fstab:

UUID=0C4EC5344EC5177C	/mefia/TUA_CARTELLA	ntfs-3g	dmask=000,fmask=000,uid=1000,gid=1000	0	0

Dove:
uuid e l’Id univoco della partizione da montare, (blkid /dev/sda1)
dmask e fmask sono i permessi dati alle cartelle e ai file, in questo caso permessi 777

uid e gid l’id dell’utente e del gruppo che si vuole associare, per recuperare il relativo Id usare il comando

id -u NOMEUTENTE
id -g NOMEUTENTE
Share

Magento: Upgrade 1.4.1.1 to 1.4.2 “Cannot load configuration for payment method…”

Cannot load configuration for payment method “paybox_direct”, “protx_standard”, “paybox_system”,”eway_direct”, “eway_shared”, “eway_secure”, “chronopay_standard”, “cybermut_payment”, “ideal_basic”, “ideal_advanced”, “cybersource_soap”, “flo2cash_web”, “ogone”

Con l’aggiornamento di Magento 1.4.2 mi sono ritrovato ad una serie di errori al modulo Pagamenti… che non mi permetteva di accedere alla scheda Cliente.

Andando a verificare le cartelle dei moduli sopra il file di configurazione non esisteva e altre cartelle erano vuote (Block, controllers, etc)… non so quali siano le modifiche apportate, ho fatto qualche ricerca senza alcun risultato.

Ho risolto con la eliminazione dalla tabella (core_config_data) di configurazione di tutti i riferimenti ai moduli coinvolti (campo path valorizzato a /payment/[NOME MODULO]%), tutti i moduli coinvolti erano già disattivati. Per pulizia ho eliminato anche le relative cartelle.

Share

Magento: Validazione Javascript personalizzata di campi Form

Magento mette a disposizione una serie di controlli dei vari campi Form:

validate-select – Seleziona un valore dalla Lista

required-entry – Campo obbligatorio

validate-number – Inserisci un numero valido

validate-digits – Inserisci solo numeri, spazio  e altri caratteri come i punti e le virgole esclusi

validate-alpha – Usa solo lettere (a-z or A-Z)

validate-code – Usa lettere (a-z), numeri (0-9) o underscore (_), il primo carattere deve essere una lettera

validate-alphanum – Usa solo lettere (a-z or A-Z) o numeri (0-9). Non sono ammessi spazi o altri caratteri

validate-street – Usa solo lettere (a-z or A-Z), numeri (0-9),  spazi, o il carattere cancelletto #

validate-phoneStrict – Inserisci un numero di telefono validio. Per esempio (123) 456-7890 o 123-456-7890

validate-phoneLax – Inserisci un numero di telefono valido. Per esempio (123) 456-7890 o 123-456-7890

validate-fax – Inserisci un numero di Fax valido. Per esempio (123) 456-7890 o 123-456-7890

validate-date – Inserisci una data valida

validate-email – Inserisci un indirizzo email valido. Per esempio johndoe@domain.com

validate-emailSender – Usa solo lettere (a-z or A-Z), numeri (0-9) , underscore (_) o spazi

validate-password – Inserisci 6 o più caratteri. Gli spazi ad inizio e fine saranno ignorati

validate-admin-password – Inserisci 7 o più caratteri. La Password deve contenere sia numeri che lettere

validate-cpassword – Verifica che la Passwordi di controllo sia uguale

validate-url – Inserisci un valido URL. http:// è obbligatorio

validate-clean-url – Inserisci un valido URL. Per esempio http://www.example.com o www.example.com

validate-identifier – Inserisci un valido ID. Per esempio example-page, example-page.html o anotherlevel/example-page

validate-xml-identifier – Inserisci un valido ID XML. Per esempio something_1, block5, id-4

validate-ssn – Inserisci un valido SSN. Per esempio 123-45-6789

validate-zip – Inserisci un valido CAP. Per esempio 90602 o 90602-1234

validate-zip-international – Inserisci un valido CAP

validate-date-au – Formato data non corretto usa: dd/mm/yyyy. Per esempio 17/03/2006

validate-currency-dollar – Inserisci una valuta corretta. Per esempio $100.00

validate-one-required – Seleziona una delle opzioni

validate-one-required-by-name – Seleziona una delle opzioni

validate-not-negative-number – Inserisci un numero positivo

validate-state – Seleziona lo Stato/Provincia

validate-new-password – Inserisci 6 o più caratteri. Gli spazi iniziali e finali saranno ignorati

validate-greater-than-zero – Inserisci un numero maggiore di 0

validate-zero-or-greater – Inserisci un numero maggiore o uguale a 0

validate-cc-number – Inserisci un numero di Carta di Credito valido

validate-cc-type – Il numero di Carta di Credi con corrisponde con il Tipo di Carta

validate-cc-type-select – Il Tipo di Carta non corrsisponde con il numero di Carta di Credito

validate-cc-exp – Data scadenza non corretta

validate-cc-cvn – Numero di verifica non valido

validate-data – Usa solo lettere (a-z or A-Z), numeri (0-9) o underscore (_), il primo carattere deve essere una lettera

validate-css-length – Inserisci una lunghezza valida per i CSS. Per esempio 100px o 77pt o 20em o .5ex o 50%

validate-length – Lunghezza massima superata

Per utilizzare queste validazione basta inserire una classe CSS con la verifica che deve essere implementata, ad es:

<input type="text"
id="field_id"
name="field_name"
value="value"
class="required-entry validate-alphanum"
/>

Nell’esempio sopra, richiediamo che il campo field_name sia obbligatorio e che contenga solo lettere (a-z e A-Z) e numeri (0-9).

Se invece volessimo fare dei controlli più specifici, come ad esempio il controllo del codice fiscale, possiamo creare una nostra validazione da inserire in Magento e per poi essere riutilizzata in tutto il sito. Per farlo è sufficiente inserire poche codice di Javascript:

if(Validation) {
Validation.addAllThese([
               [
                'validate-tuocontrollo',
                'Messaggio da visualizzare',
                function(v,r){
                  return v.indexOf('RCC')==-1?false:true;
                }
                ]
           ]);
}

Dove:
validate-tuocontrollo: è la classe CSS che va inserita nel tag input
Messaggio da visualizzare: E’ il messaggio che verrà visualizzato all’utente nel caso in cui il controllo fallisce
function (v,r)…: E’ il controllo Javascript che si occuperà di validare il campo, il parametro v è il valore del campo mentre il parametro r è l’oggetto HTML da validare, nel nostro caso il TAG input

Per estendere il nostro controllo al tag dell’esempio sopra basta inserire la classe validate-tuocontrollo

 <input type="text"
              id="field_id"
              name="field_name"
              value="value"
              class="required-entry validate-alphanum validate-tuocontrollo"
/>

Il codice Javascript di cui sopra, puo’ essere inserito in:

– In un file JS apposito che dovrà essere incluso nella pagina contenente il campo da validare
– Direttamente nel blocco phtml che contiene il campo da validare.

Riferimenti in inglese:

http://fishpig.co.uk/magento-forms-prototype-javascript-validation/
http://blog.baobaz.com/en/blog/custom-javascript-form-validators

Share

Sharepoint: Installazione Visual Studio Workflow Solution

Ho creato una Workflow per Sharepoint 2010 sviluppato con Visual Studio 2010, che mette a disposizione di noi sviluppatore molte più funzionalità rispetto ai WorkFlow preparati con Sharepoint Designer.

Terminato lo sviluppo e la fase di Test, rigorosamente su una macchina di sviluppo è il momento di rilasciare la solution (.wsp) sulla macchina di produzione. Per prima cosa è necessario creare il Package (Tasto destro sul Progetto, in Solution Explorer, e selezionare Package), preparato il file .wsp lo copiamo sul server dove andrà installato e seguiamo i passi qui indicati:

Dal menù start aprite la Sharepoint 2010 Management Shellche si trova in:

Start -> Microsoft SharePoint 2010 Products -> SharePoint 2010 Management Shell

Si aprirà una shell dove possiamo eseguire direttamente alcuni comandi di configurazione di Sharepoint, eseguiamo:

PS C:\Users\xxxxxx&gt; Add-SPSolution -LiteralPath c:\SOLUTION_FILE.wsp
Name                           SolutionId                           Deployed
 ----                           ----------                           --------
 wf_e1_waf.wsp                  44701e0a-7b84-4057-b4df-c77bde504b86 False
PS C:\Users\xxxxxx&gt; Install-SPSolution -Identity SOLUTION_FILE.wsp -GacDeployment

Dal sito in Sharepoint accedere al menù Site Actions->Site Settings->Site collection features ed attivare la feature.

Nel caso in cui dovete procedere a rilasciare una Feature installata con il metodo sopra  è possibile effettuare un update della solutions:

PS C:\Users\xxxxxx&gt; Update-SPSolution -Identity SOLUTION_FILE.wsp -LiteralPath c:\SOLUTION_FILE.wsp -GACDeployment

Questo qui descritto è uno dei diversi metodi per rilasciare una WSP, ma mi sembra quello più pratico… e voi quale metodo usate?

Share

PHP: Debug con Eclipse e Xdebug

E’ da un po’ che mi cimento con la programmazione PHP, ma fin’ora i debug erano solo qualche echo, seguito dal comando exit… ma quando i progetti cominciano a diventare grossi… la soluzione fin’ora adottata non è sufficiente, oltre che perdere molto tempo.

Quindi cosa fare?? Ci vengono incontro due Tool per il debug delle applicazione PHP:

XDEBUG (http://xdebug.org/)

ZEND DEBUGGER (http://www.zend.com/it/)

Vediamo come utilizzare il primo con il Tool Eclipse (nessuno vieta di utilizzare il caro vecchio vim). Ho utilizzato come sistema desktop Ubuntu 10.10, ma non dovrebbe essere molto diverso per la Windows.

Innanzitutto da Shell installiamo xdebug:

sudo apt-get install php5-xdebug

Editiamo il file di configurazione installato dalla procedura di cui sopra:

sudo vi /etc/php5/conf.d/xdebug.ini

ed aggiungiamo in fondo al file queste poche righe dopo :

xdebug.remote_enable=On
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"

Riavviamo Apache:

sudo /etc/init.d/apache2 restart

Ora procediamo alla configurazione di Eclipse:

Verificate di avere configurato il Browser dal Menù windows->preferences quindi selezionate General->Web Browser

Ora configuriamo il Debug aprendo la relativa finestra di Configurazione menù Run->Debug configurations

Valorizzate i campi come segue:

Server Debugger: Xdebugger

Php Server: Configurate per accedere al vostro sito di sviluppo (nel mio caso è in localhos)

Break at the irst line: disabilitata

Url-> Auto generate: disabilitata

Applicate le modifiche.

Ora siete pronti ad avviare il Debug, inserite un breakpoint, avviate il debug con il tasto F11, si aprirà il browser definito, navigate fino alla pagina che contiene il debug e Eclipse si attiverà sul Breakpoint…

Share