Os objetos e serviços do jCom são o coração de toda loja virtual: são eles que controlam o catálogo de produtos, a cesta de compras, pagamentos e cadastros.
Objetos e serviços funcionam de forma semelhante e sua diferença é conceitual: chamamos de serviços alguns objetos especiais que estão disponíveis para todos os clientes que acessam a loja, enquanto os objetos são específicos de cada cliente. Por exemplo, o serviço de "catálogo" permite a todos os clientes o acesso aos mesmos produtos, enquanto o objeto "cesta de compras" é único para cada cliente.
Os objetos e serviços são também variáveis, e portanto representados com o símbolo "$", como $catalogService, $newsService e $cart. Contudo, estes objetos são mais complexos do que as variáveis que cobrimos anteriormente, já que possuem propriedades e comandos próprios.
Por exemplo, na seção sobre configuração da loja, cobrimos o objeto $store. Este objeto contém todas as propriedades do arquivo jcom.xml, que podem ser acessados desta forma:
O site está configurado para mostrar $store.itemsPerPage itens por página
Já o objeto $util possui apenas comandos. Um dos comandos disponíveis serve para formatar valores monetários. Note como os objetos, comandos e propriedades podem ser combinados de forma a obtermos o resultado desejado:
$util.formatCurrency( 11 ) resulta em R$ 11,00
$util.formatCurrency( $store.minOrder ) resulta em R$ 50,00 $util.formatCurrency( $cart.subTotal ) resulta em R$ 0,00 se a cesta estiver vazia
Serviços disponíveis
| $catalogService | Gerencia o catálogo de produtos |
|---|---|
| $languageService | Permite trocar a língua de visualização do site |
| $newsService | Gerencia notícias |
| $orderService | Gerencia pedidos já realizados |
| $clientService | Gerencia os cadastros de clientes |
| $checkoutService | Gerencia a finalização de um pedido |
| $contactService | Permite o envio de mensagens de contato por e-mail |
| $validatorService | Faz a validação de formulários |
| $subscriberService | Gerencia cadastros de newsletters (boletins por e-mail) |
| $recommendationService | Permite a recomendação da loja virtual a amigos |
Objetos Disponíveis
| $store | Representa a loja e configurações |
|---|---|
| $util | Contém comandos de utilidade geral |
| $cart | Representa a cesta de compras de cada cliente |
| $language | Contém a língua selecionada pelo cliente. O valor padrão é o configurado como "locale" nas propriedades da loja. Normalmente é "pt_BR". |
| $page | Representa a página atual |
| $params | Contém os parâmetros GET e POST da requisição |
| $session | Contém as variáveis de sessão do cliente |
| $msg | Contém as mensagens pré-definidas de internacionalização |
| $order | Representa um pedido, depois de finalizado |

