terça-feira, 31 de julho de 2007

Joomla, Virtuemart e opção default

Recentemente tenho estado a colocar on-line uma loja de nome Estética Online e para isso utilizei o CMS Joomla 1.0.12 com um plugin chamado Virtuemart 1.0.10, para além de vários outros mas para o caso interessa este.
Em todos os produtos que foram colocados na loja, por uma questão de coerência foi sempre colocado o formato do produto como atributo numa caixa de texto descrita no backoffice da versão portuguesa do Virtuemart como "Lista de atributos". Isto colocou um problema. Mesmo os produtos que só tinham um formato disponível e portanto só tinham uma opção nessa lista de atributos não podiam ser comprados directamente já que o Virtuemart obrigava a que se entrasse na página de detalhe do produto e se escolhesse uma opção e isto iria baralhar muitos utilizadores.
Pelo que andei a investigar não existe nenhuma solução disponível pelo que publico aqui o que fiz para solucionar este problema.
A solução que me interessava era fazer com que a primeira opção da lista fosse a escolhida por omissão, já que esta correspondia ao preço default apresentado. O facto de, mesmo quando há várias opções, existir um formato por omissão não é problemático já que no carrinho de compras aparece o formato que foi escolhido dando assim hipótese de o utilizador rever o formato caso deseje outro.
Para conseguir esta solução foi necessário fazer uma alteração simples Num ficheiro do virtuemart. O ficheiro a alterar é o seguinte:

[siteroot]/administrator/components/com_virtuemart/classes/ps_cart.php

Na linha 134 desse ficheiro, imediatamente antes do seguinte pedaço de código:

if ( ($result["attribute_given"] == false && !empty( $result["advanced_attribute_list"] ))
|| ($result["custom_attribute_given"] == false && !empty( $result["custom_attribute_list"] )) ) {
    $_REQUEST['flypage'] = ps_product::get_flypage($product_id);
    $GLOBALS['page'] = 'shop.product_details';
    $vmLogger->tip( $VM_LANG->_PHPSHOP_CART_SELECT_ITEM );
    return true;
}


Coloquei o seguinte código:

if($result['attribute_given'] == false) {
    $result['attribute_given'] = true;
    $dummy = explode(",", $result['advanced_attribute_list']);
    $d['description'] = $dummy[1];
}


Foi uma solução simples e que até agora parece estar a funcionar, creio que como a opção escolhida é a primeira é possível que bastasse colocar o attribute_given a true, para outra opção default que não a primeira penso que se terá que mudar mais atributos e não só a descrição. Aconselho sempre a fazer uma cópia do ficheiro original e a colocar bem visível um comentário a indicar o início e o fim das alterações.

PS: Confesso que devido aos meus hábitos de python e perl ainda tentei fazer as duas últimas linhas numa só, assim:

$d['description'] = explode(",", $result['advanced_attribute_list'])[1];

mas o PHP não é assim tão à frente.

Eu também quero falar disto

Já que toda a gente fala, eu também quero meter a minha colherada no tema BTuga.
Regressei de férias para descobrir que o BTuga tinha sido fechado com direito a rusga da PJ e tudo. Confesso que não sou utilizador do BTuga, pelo mesmo motivo que penso que o fecho do BTuga e sites que tais é positivo, e espantem-se, positivo para os utilizadores habituais deste tipo de serviços.
O BTuga pega numa filosofia de partilha, se bem que uma partilha desenquadrada da lei, ou talvez de uma lei desenquadrada da realidade, e transforma essa partilha num negócio. Sempre que um destes sites que força a que se faça upload de algo ou se pague para fazer o download de algo em troca fecha, mais consolidada fica a verdadeira partilha livre, e convenhamos, que para os adeptos da pirataria não há melhor do que a troca sem que se tenha que ser forçado a nada.
Eu utilizo muito pouco este tipo de coisas e das raras vezes que o faço utilizo serviços que não impõem restrições e acabo sempre por ter um ratio positivo de upload/download (entenda-se dou mais do que recebo) mesmo não sendo forçado a fazer o upload de nada e não tendo muita coisa para partilhar.

domingo, 22 de julho de 2007

I'm Alive, I'm Alive

Para os que pensaram que eu me tinha evaporado, fica aqui o aviso que tenho estado de férias e que estas vão durar até ao final da semana, ou seja só regresso a 31 de Julho. Por este motivo o blog vai continuar em descanso mais uma semanita.

terça-feira, 10 de julho de 2007

A não perder

A não perder este post, no blog do Tux Vermelho.
Posso já enumerar alguns erros que cometo e que lá estão descritos. Como a escrita demasiado rebuscada, o uso de parêntesis para fazer apartes, às vezes uma certa redundância, por vezes aproveito o título como se fosse o início da primeira frase do post dando origem a voz passiva e frases demasiado longas.

Experiência interessante

Não podia deixar de colocar aqui este vídeo que descobri através do blog do Nuno Markl.

segunda-feira, 9 de julho de 2007

Rejoice windows (l)users

Uma aplicação que não experimentei, e provavelmente com um bocado de sorte nunca irei experimentar mas que parece estar no bom caminho para vir a ser o Quicksilver para windows. Se alguém o tiver testado e quiser deixar por aqui um testemunho, está à vontade.

quarta-feira, 4 de julho de 2007

Os cabos, ai os cabos...

Nesta minha arrumação resolvi não mexer nos cabos que rodeiam a minha mesa, para evitar que essa tarefa consumisse todo o tempo que é suposto ser utilizado para remover tralha. Mas os cabos são um dos problemas que sempre me perseguiram, e penso que também a qualquer pessoa que tenha um sistema informático um pouco mais complexo (ou mesmo simples). Hoje ao seguir alguns links num dos artigos referidos num dos meus posts anteriores dei com isto. Tudo o que tenha a ver com reduzir a confusão causada pelos cabos é de experimentar.

Ficheiros temporários do Scanner

No Mac OS X Hints, está um artigo sobre limpar os ficheiros temporários dos scanners HP.
O meu não guarda nada disso, nem sequer no sítio onde ele aponta. O meu cria os ficheiros em ~/Documents/Scanner Output/, mas essa é a directoria utilizada pelo software da HP e o próprio software mostra o que lá está.

De-Clutter Reloaded

O Merlin Mann do 43Folders, publicou o 4º artigo na sua sequência de artigos sobre arrumações.
Uma das coisa que descobri com anos de desarrumação e contra a qual continuo a lutar, é que uma das maiores causas de desarrumação é não ter um sítio para arrumar certas coisas. Tudo o que não tenha sítio onde ficar vai acabar por ficar desarrumando e na zona onde esse objecto ficar outros que também não têm lugar vão aparecendo no mesmo sítio, até que fica uma confusão tal que ninguém tem vontade de mexer naquilo.

Eu estou na primeira fase que é arrumar a mesa do computador e mais 3 outros armários que estão uma confusão. Existe uma terceira zona onde estão as coisa que saíram da mesa do computador e de um dos armários que está ainda em fase de arrumação e que são as tais coisas que não são lixo mas ainda não têm sítio, ou que têm sítio e que ainda não foram para lá.

A segunda fase, que, para as coisas que saíram das zonas já arrumadas será feita antes do fim do próximo fim-de-semana, séra para as coisa que têm sítio colocá-las no sítio correspondente.

A terceira fase consistirá em organizar-me de modo a arranjar lugar para as coisa que não são para ir fora mas que não têm sítio.

terça-feira, 3 de julho de 2007

Deita lá isso fora

Comprei na 5ª feira passada uma impressora, e como não tinha espaço na minha mesa do computador para lá colocar um alfinete, apesar da mesa ter para aí 2,30m, tive que me dedicar a arrumar a mesa, deitar fora tudo o que não interessava e arranjar lugar para o que interessa.
Ao fim de cerca de 2 horas a cavar em papel, lá consegui chegar ao tampo.
Como "sidenote" a impressora que comprei foi uma HP C3180, que funciona perfeitamente como impressora e scanner no Mac, e que li antes mesmo de a comprar, funciona também com ambas as funcionalidades em Linux. Até agora estou bastante satisfeito com ela e aconselho quem estiver para comprar uma a dar uma vista de olhos a este modelo (custou-me €68.99 na macro).
Bem a propósito desta arrumação e do deitar fora de coisas que não interessam, ficam três links para o 43folders; link 1, link 2 e link 3. O segundo link especialmente tem muito a ver com o meu problema.

segunda-feira, 2 de julho de 2007

Que futuro para as Democracias ?

Primeiro que tudo queria fazer uma espécie de disclaimer. Porque a minha escrita não tem piadinha nenhuma e se eu alguma vez me puser a escrever um livro apoio todos os que assinem uma petição para acabar com o meu livro e o substituir por um belo exemplar de poesia Vogon.
E também porque as minhas opiniões tendem a ser radicais, self-centered, pouco razoáveis e extremamente polémicas, sendo que até a mim me custa a ler a rezinguisse que escrevo quando se trata de temas sociais.
Quero também agradecer aquele que aparentemente é meu conterrâneo, o Carlos Afonso, pois eu não estava a pensar escrever o artigo do mês e acabei por o fazer por ter conseguido organizar as minhas ideias como consequência da conversa sobre o assunto que tivemos no regresso do jantar do Planet Geek.
Para terminar o disclaimer, fica o aviso de que sou bastante volátil e que possivelmente dentro de duas semanas já discordarei de grande parte do que aqui disse ;)
Dito isto aqui fica o artigo:

Todos os sistemas têm a sua duração, todos acabam. Foi assim com o sistema imperial, monárquico, dictatorial e creio que será assim com as democracias.
Para citar uma banda da qual não sou grande fã:
Nunca gostei que a maioria

Organizasse o meu dia a dia

Não acredito em democracia

A democracia é a ditadura das maiorias. Para um povo como o Português que se gosta de nivelar pela bitola da mediocridade custa a ouvir e mais ainda custará a admitir que as pessoas não são todas iguais. A grande maioria das pessoas não é inteligente e age quase em piloto automático.
Pode-se comparar uma eleição com uma experiência com ratos, onde teríamos uma gaiola, grande, com uma zona à qual os ratos estão habituados e outra zona que eles nunca exploraram mas que está ao alcance da vista. Na zona conhecida existem, no caso específico de Portugal, dois comedores, noutros sítios os números poderão ser diferentes, e ambos dão choques eléctricos. Na zona desconhecida existem vários outros comedores que não se sabe se dão choque ou não. Mas os ratos correm entre esses dois comedores e nunca se arriscam a ir à zona desconhecida apesar de verem por lá outros comedores.
As consequências para os poucos que estão acima desta maioria são catastróficas. São permanentemente governados por um bando de ladrões, idiotas, corruptos, etc... sem que possam fazer o que for para o impedir.
Numa democracia, como um todo um povo tem os governantes que merece, individualmente existem sempre membros de minorias que são prejudicados pela ignorância da maioria.
Por isto a democracia já provou que não funciona, aproveitando-se desta ignorância, as grandes corporações, como por exemplo as farmacêuticas, as tabaqueiras (como se pode ver recentemente pelos sucessivos recuos na lei do tabaco até a tornar praticamente inútil), construtoras, etc... , aproveitam para controlar o poder.
Quais seriam então os sistemas que poderiam substituir a democracia?
Essa é uma discussão que não se encaixa no âmbito deste artigo e que daria pano para mangas. O que se sabe é que dos sistemas supra-referidos aparentemente nenhum é melhor que a democracia. Mais vale a ditadura da maioria do que a de um homem só.

domingo, 1 de julho de 2007

Quicksilver for beginers

Já várias vezes me perguntaram o que é o Quicksilver, para que serve, porquê que gosto tanto do Quicksilver. É complicado responder, penso que nem quem o fez o sabe definir bem ou não o descreveriam como "A unified, extensible interface for working with applications, contacts, music, and other data." que cheira a chavão com pouco significado.
O Quicksilver é daquelas coisa que só experimentando se percebe. Um erro bastante comum consiste em considerar o Quicksilver um Application Launcher. Um erro crasso! Foi a procurar um Application Launcher para Mac semelhante ao launcher do gnome que vinha no ubuntu 5.x e que entretanto se transformou num fumegante pedaço de bosta (desde que fiz o upgrade para o 6 e pior ainda no 7), que eu encontrei o Quicksilver. Mas rapidamente me comecei a aperceber que aquilo não era um simples launcher. Eu definiria aquilo como uma linha de comandos em modo gráfico.
Aqui fica um link para um screencast de Quicksilver para iniciados.