Eu penso que Drupal pode encontrar suas necessidades com uma combinação de funcionalidade do núcleo (para perfis do registo de usuário) combinada com os seguintes módulos:
Ubercart para o carro de compra & relatórios (você precisa de verific a respeito dos relatórios encontra todas suas necessidades ou verific se há um outro módulo que estenda o relatório de Ubercart para encontrar suas necessidades)
Calendário: escolher seus módulos favoritos entre de muitos:
http://drupal.org/search/apachesolr_search/CalendarA comunidade de Drupal é muito grande & útil também.