Inscrições abertas para nosso Webinar anual Adianti Framework 2024!
Clique aqui para saber mais
Componente chat adminlte - barra de rolagem não funciona Olá pessoal. Eu criei um componente de chat igual ao do adminlte.. o problema é que a barra de rolagem do chat, caso haja várias mensagens, não funciona. Alguma ideia de como fazer ela funcionar? ela é o $div8 do código abaixo: **Quando o componente estiver ok eu posto ele nas contribs. ...
FT
Componente chat adminlte - barra de rolagem não funciona  
Olá pessoal. Eu criei um componente de chat igual ao do adminlte.. o problema é que a barra de rolagem do chat, caso haja várias mensagens, não funciona. Alguma ideia de como fazer ela funcionar? ela é o $div8 do código abaixo:

**Quando o componente estiver ok eu posto ele nas contribs.



  1. <?php
  2. namespace academico\Widget;
  3. use Adianti\Widget\Base\TElement;
  4. class TChat extends TElement {
  5. public function __construct()
  6.     {
  7.         parent::__construct('div');
  8.         
  9.         $div1 = new TElement('div');
  10.         $div1->{'class'} = 'box box-primary';
  11.         $div2 = new TElement('div');
  12.         $div2->{'class'} = 'box-header ui-sortable-handle';
  13.         $div2->{'style'} = 'cursor: move;';
  14.         $i = new TElement('i');
  15.         $i->{'class'} = 'fa fa-comments-o';
  16.         $h3 = new TElement('h3');
  17.         $h3->{'class'} = 'box-title';
  18.         $h3->add('Chat');
  19.         $div3 = new TElement('div');
  20.         $div3->{'class'} = 'box-tools pull-right';
  21.         $div3->{'data-toggle'} = 'tooltip';
  22.         $div3->{'data-original-title'} = 'Status'
  23.         $div4 = new TElement('div');
  24.         $div4->{'class'} = 'btn-group';
  25.         $div4->{'data-toggle'} = 'btn-toggle';
  26.         $button = new TElement('button');
  27.         $button->{'type'} = 'button';
  28.         $button->{'class'} = 'btn btn-default btn-sm active';
  29.         $i1 = new TElement('i');
  30.         $i1->{'class'} = 'fa fa-square text-green';
  31.         $button->add($i1);
  32.         $button1 = new TElement('button');
  33.         $button1->{'type'} = 'button';
  34.         $button1->{'class'} = 'btn btn-default btn-sm';
  35.         $i2 = new TElement('i');
  36.         $i2->{'class'} = 'fa fa-square text-red';
  37.         $button1->add($i2);
  38.         $div4->add($button);
  39.         $div4->add($button1);
  40.         $div3->add($div4);
  41.         $div2->add($i);
  42.         $div2->add($div3);
  43.         $div2->add($h3);
  44.         $div1->add($div2);
  45.         $div5 = new TElement('div');
  46.         $div5->{'class'} = 'slimScrollDiv';
  47.         $div5->{'style'} = 'overflow: hidden; width: auto; height: 250px;';
  48.         $div6 = new TElement('div');
  49.         $div6->{'class'} = 'box-body chat';
  50.         $div6->{'id'} = 'chat-box';
  51.         $div6->{'style'} = 'overflow: hidden; width: auto; height: 250px;';
  52.         $div5->add($div6);
  53.        
  54.         //////////////////// MENSATEM ITEM /////////////////
  55.         $div7 = new TElement('div');
  56.         $div7->{'class'} = 'item';
  57.         $img = new TElement('img');
  58.         $img->{'src'} = 'http://localhost/academico/app/images/profile/profile-icon.png';
  59.         $img->{'alt'} = 'Imagem do perfil';
  60.         $img->{'class'} = 'online';
  61.         $p = new TElement('p');
  62.         $p->{'class'} = 'message';
  63.         $a = new TElement('a');
  64.         $a->{'href'} = '#';
  65.         $a->{'class'} = 'name';
  66.         $small = new TElement('small');
  67.         $small->{'class'} = 'text-muted pull-right';
  68.         $i3 = new TElement('i');
  69.         $i3->{'class'} = 'fa fa-clock-o';
  70.         $small->add($i3);
  71.         $small->add('2:15');
  72.         $a->add($small);
  73.         $a->add('Nome do user');
  74.         $p->add($a);
  75.         $p->add('Texto de uma mensagem exemplo Texto de uma mensagem exemplo');
  76.         $div7->add($img);
  77.         $div7->add($p);
  78.         /////////////////////////////////////////////////////
  79.         $div6->add($div7); //PREENCHE COM VÁRIAS MENSAGENS DE EXEMPLO
  80.         $div6->add($div7);
  81.         $div6->add($div7);
  82.         $div6->add($div7);
  83.         $div6->add($div7);
  84.         $div6->add($div7);
  85.         $div6->add($div7);
  86.         $div6->add($div7);
  87.         $div6->add($div7);
  88.         $div8 = new TElement('div');
  89.         $div8->{'class'} = 'slimScrollBar';
  90.         $div8->{'style'} = 'background: rgb(0, 0, 0); width: 7px; position: absolute; top: 40px; opacity: 0.4; display: block; border-radius: 7px; z-index: 99; right: 1px; height: 184.911px;';
  91.         $div9 = new TElement('div');
  92.         $div9->{'class'} = 'slimScrollRail';
  93.         $div9->{'style'} = 'width: 7px; height: 100%; position: absolute; top: 0px; display: none; border-radius: 7px; background: rgb(51, 51, 51); opacity: 0.2; z-index: 90; right: 1px;';
  94.         $div10 = new TElement('div');
  95.         $div10->{'class'} = 'box-footer';
  96.         $div11 = new TElement('div');
  97.         $div11->{'class'} = 'input-group';
  98.         $input = new TElement('input');
  99.         $input->{'class'} = 'form-control';
  100.         $div12 = new TElement('div');
  101.         $div12->{'class'} = 'input-group-btn';
  102.         $button2 = new TElement('button');
  103.         $button2->{'class'} = 'btn btn-primary btn-flat';
  104.         $i3 = new TElement('i');
  105.         $i3->{'class'} = 'fa fa-plus';
  106.         $button2->add($i3);
  107.         $div12->add($button2);
  108.         $div11->add($input);
  109.         $div11->add($div12);
  110.         
  111.         $div10->add($div11);
  112.         $div5->add($div8);
  113.         $div5->add($div9);
  114.       
  115.         $div1->add($div5);
  116.     //   $div1->add($div10);
  117.         parent::add($div1);
  118.     }
  119. }
  120. ?>



E aqui é como eu fiz a página:

  1. <?php
  2. use academico\Widget\TChat;
  3. class CommonPage extends TPage
  4. {
  5.     public function __construct()
  6.     {
  7.         parent::__construct();
  8.         $chat = new TChat;
  9.         $campo = new TEntry('campo');
  10.         $campo->setSize(400);
  11.         $div10 = new TElement('div');
  12.         $div10->{'class'} = 'box-footer';
  13.         $div11 = new TElement('div');
  14.         $div11->{'class'} = 'input-group';
  15.         $div11->add($campo);
  16.         $div10->add($div11);
  17.         parent::add($chat);
  18.         parent::add($div10);
  19.     }
  20. }

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (2)


FT

Já descobri que este rocha.la/jQuery-slimScroll precisa ser usado. Inclui os arquivos e também já inclui no libraries.html mas ainda falta saber como usá-lo na hora de criar o componente.
TR

Ola, conseguiu terminar seu componente de chat?
Poderia disponibilizá-lo?