Guest User

Untitled

a guest
May 24th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.40 KB | None | 0 0
  1. <?
  2. jimport('edesktop.doctrine.conexao');
  3. Doctrine_Core::loadModels(dirname(__FILE__) .DS. 'produtos' .DS);
  4.  
  5. class edProdutos
  6. {
  7. var
  8. $query,
  9. $pager = false,
  10. $pagerNome = '',
  11. $pagerRanger = false,
  12. $pagerLayout = false,
  13. $pagerOrders = array(),
  14. $urlTemplate = '',
  15. $pagerMaxPerPage = 10,
  16. $pagerGetPage = 1,
  17. $pagerGetPageVar = 'pag',
  18. $pagerLayoutTemplate = '<a href="{%url}">{%page}</a>',
  19. $pagerLayoutTemplateSelect = '[<a href="{%url}" class="select active">{%page}</a>]',
  20. $pagerRangerOptions = array('chunk' => 7);
  21.  
  22.  
  23. public function __construct()
  24. {
  25.  
  26. }
  27.  
  28. public function getUrl($tipo, $name = '')
  29. {
  30. $u['404'] = JURI::base(1).'/media/com_edesktop/imagens/404.jpg';
  31.  
  32. $u['url.media'] = JURI::base().'media/com_edesktop/produtos/';
  33. $u['path.media'] = JPATH_BASE .DS. 'media' .DS. 'com_edesktop' .DS. 'produtos';
  34.  
  35. $u['url.imagens'] = $u['url.media'] .'imagens/';
  36. $u['path.imagens'] = $u['path.media'] .DS. 'imagens';
  37.  
  38. $u['url.fabricantes'] = $u['url.imagens'] .'fabricantes/' .$name. '.jpg';
  39. $u['path.fabricantes'] = $u['path.imagens'] .DS. 'fabricantes' .DS. $name .'.jpg';
  40.  
  41. $u['url.produtos'] = $u['url.imagens'] .'produtos/' .$name. '.jpg';
  42. $u['path.produtos'] = $u['path.imagens'] .DS. 'produtos' .DS. $name .'.jpg';
  43.  
  44. return $u[$tipo];
  45. }
  46.  
  47. public function createPager()
  48. {
  49. $this->pagerGetPageVar = $this->pagerNome.$this->pagerGetPageVar;
  50. $this->pagerGetPage = JRequest::getInt($this->pagerGetPageVar, 1);
  51.  
  52. $this->_configPagerOrder();
  53. $this->_configUrl();
  54.  
  55. $this->pager = new Doctrine_Pager($this->query, $this->pagerGetPage, $this->pagerMaxPerPage);
  56. $this->pagerRanger = new Doctrine_Pager_Range_Sliding($this->pagerRangerOptions);
  57.  
  58. $this->pagerLayout = new Doctrine_Pager_Layout($this->pager, $this->pagerRanger, $this->urlTemplate);
  59. $this->pagerLayout->setTemplate($this->pagerLayoutTemplate);
  60. $this->pagerLayout->setSelectedTemplate($this->pagerLayoutTemplateSelect);
  61.  
  62. return $this->pagerLayout;
  63. }
  64.  
  65.  
  66.  
  67. private function _configPagerOrder()
  68. {
  69. $orders = $this->pagerOrders;
  70.  
  71. if(count($orders))
  72. {
  73. $pagerGetOrderVar = $this->pagerNome.'ordem';
  74. $pagerGetOrder = JRequest::getInt($pagerGetOrderVar, 0);
  75.  
  76. if(isset($orders[$pagerGetOrder]['sql']))
  77. {
  78. $order = $orders[$pagerGetOrder]['sql'];
  79. $this->query = $this->query->orderBy($order);
  80. }
  81. }
  82. }
  83.  
  84.  
  85.  
  86. private function _configUrl()
  87. {
  88. $u =& JURI::getInstance();
  89. $queryString = array_merge($u->getQuery(1), array($this->pagerGetPageVar => '{%page_number}'));
  90. $u->setQuery($queryString);
  91. $this->urlTemplate = urldecode($u->toString());
  92. $u->setVar($this->pagerGetPageVar, $this->pagerGetPage);
  93. }
  94.  
  95.  
  96.  
  97. public function busca_produto_id($id)
  98. {
  99. $q = Doctrine::getTable('Produto')->find($id);
  100.  
  101. return $q;
  102. }
  103.  
  104.  
  105.  
  106. public function busca_todos_produtos()
  107. {
  108. $this->query = Doctrine_Query::create()->from('Produto');
  109.  
  110. $this->createPager();
  111.  
  112. return $this->pagerLayout;
  113. }
  114.  
  115.  
  116.  
  117. public function busca_produtos_por_destaqe()
  118. {
  119.  
  120. }
  121.  
  122.  
  123. public function busca_produtos_por_categorias()
  124. {
  125.  
  126. }
  127.  
  128.  
  129.  
  130. public function busca_produto_por_search()
  131. {
  132.  
  133. }
  134.  
  135.  
  136.  
  137. public function busca_produto_por_fabricante()
  138. {
  139.  
  140. }
  141.  
  142.  
  143.  
  144. public function salvar_produto()
  145. {
  146.  
  147. }
  148.  
  149.  
  150.  
  151. public function excluir_produto()
  152. {
  153.  
  154. }
  155.  
  156.  
  157. public function busca_todas_categorias()
  158. {
  159. $this->query = Doctrine_Query::create()->from('Categoria');
  160.  
  161. $this->createPager();
  162.  
  163. return $this->pagerLayout;
  164. }
  165. }
  166. ?>
Add Comment
Please, Sign In to add comment