Version Notes
none
Download this release
Release Info
Developer | Magento Core Team |
Extension | Beck_LiveChat |
Version | 1.3.5 |
Comparing to | |
See all releases |
Code changes from version 1.3.4 to 1.3.5
- app/code/community/Beck/LiveChat/Block/Session.php +52 -0
- app/code/community/Beck/LiveChat/Block/Session/Detail.php +37 -60
- app/code/community/Beck/LiveChat/Block/Session/Detail/Grid.php +87 -0
- app/code/community/Beck/LiveChat/Block/Session/{List.php → Grid.php} +36 -13
- app/code/community/Beck/LiveChat/Block/Widget/Grid/Column/Renderer/State.php +10 -24
- app/code/community/Beck/LiveChat/Helper/Data.php +25 -0
- app/code/community/Beck/LiveChat/Model/Api.php +2 -2
- app/code/community/Beck/LiveChat/Model/Archives/Message.php +10 -0
- app/code/community/Beck/LiveChat/Model/Archives/Session.php +82 -0
- app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Message.php +9 -0
- app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Message/Collection.php +10 -0
- app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Session.php +9 -0
- app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Session/Collection.php +10 -0
- app/code/community/Beck/LiveChat/Model/Session.php +15 -0
- app/code/community/Beck/LiveChat/controllers/Session/ListController.php +61 -6
- app/code/community/Beck/LiveChat/controllers/Session/LiveController.php +2 -2
- app/code/community/Beck/LiveChat/etc/config.xml +10 -2
- app/code/community/Beck/LiveChat/etc/system.xml +19 -0
- app/code/community/Beck/LiveChat/sql/livechat_setup/mysql4-upgrade-1.3.0-1.3.5.php +32 -0
- app/design/adminhtml/default/default/layout/livechat.xml +10 -2
- app/design/adminhtml/default/default/template/livechat/operator.phtml +1 -1
- app/design/adminhtml/default/default/template/livechat/session.phtml +50 -0
- app/design/adminhtml/default/default/template/livechat/session/detail.phtml +42 -0
- app/design/adminhtml/default/default/template/livechat/widget/sessionslive.phtml +7 -2
- app/etc/modules/ZBeck_LiveChat.xml +1 -1
- app/locale/fr_FR/Beck_LiveChat.csv +9 -1
- package.xml +4 -4
- skin/adminhtml/default/default/livechat/livechat.css +2 -0
app/code/community/Beck/LiveChat/Block/Session.php
ADDED
@@ -0,0 +1,52 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Beck_LiveChat_Block_Session extends Mage_Adminhtml_Block_Template
|
3 |
+
{
|
4 |
+
|
5 |
+
public function __construct()
|
6 |
+
{
|
7 |
+
parent::__construct();
|
8 |
+
$this->setTemplate('livechat/session.phtml');
|
9 |
+
}
|
10 |
+
|
11 |
+
protected function _prepareLayout()
|
12 |
+
{
|
13 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
14 |
+
if ($type == 'standard')
|
15 |
+
{
|
16 |
+
$this->setChild('add_new_button',
|
17 |
+
$this->getLayout()->createBlock('adminhtml/widget_button')
|
18 |
+
->setData(array(
|
19 |
+
'label' => Mage::helper('livechat')->__('View archived sessions'),
|
20 |
+
'onclick' => "setLocation('".$this->getUrl('livechat/session_list/index/type/archive')."')",
|
21 |
+
'class' => 'scalable back'
|
22 |
+
))
|
23 |
+
);
|
24 |
+
}
|
25 |
+
elseif ($type == 'archive')
|
26 |
+
{
|
27 |
+
$this->setChild('add_new_button',
|
28 |
+
$this->getLayout()->createBlock('adminhtml/widget_button')
|
29 |
+
->setData(array(
|
30 |
+
'label' => Mage::helper('livechat')->__('View live sessions'),
|
31 |
+
'onclick' => "setLocation('".$this->getUrl('livechat/session_list/index/')."')",
|
32 |
+
'class' => 'scalable back'
|
33 |
+
))
|
34 |
+
);
|
35 |
+
}
|
36 |
+
|
37 |
+
|
38 |
+
$this->setChild('grid', $this->getLayout()->createBlock('livechat/session_grid', 'session.grid'));
|
39 |
+
return parent::_prepareLayout();
|
40 |
+
}
|
41 |
+
|
42 |
+
public function getAddNewButtonHtml()
|
43 |
+
{
|
44 |
+
return $this->getChildHtml('add_new_button');
|
45 |
+
}
|
46 |
+
|
47 |
+
public function getGridHtml()
|
48 |
+
{
|
49 |
+
return $this->getChildHtml('grid');
|
50 |
+
}
|
51 |
+
|
52 |
+
}
|
app/code/community/Beck/LiveChat/Block/Session/Detail.php
CHANGED
@@ -1,75 +1,52 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class Beck_LiveChat_Block_Session_Detail extends Mage_Adminhtml_Block_Widget_Grid
|
4 |
{
|
5 |
-
private $idSession = 0;
|
6 |
|
7 |
-
|
8 |
{
|
9 |
parent::__construct();
|
10 |
-
$this->
|
11 |
-
$this->setDefaultSort('id');
|
12 |
-
$this->setDefaultDir('desc');
|
13 |
-
$this->setSaveParametersInSession(true);
|
14 |
-
$this->setUseAjax(true);
|
15 |
-
$this->setVarNameFilter('sessiondetail_filter');
|
16 |
-
$this->sessionId = $this->getRequest()->getParam('sessionId', 0);
|
17 |
-
}
|
18 |
-
|
19 |
-
protected function _prepareCollection()
|
20 |
-
{
|
21 |
-
$session = Mage::getModel('livechat/session')->load($this->sessionId);
|
22 |
-
$collection = $session->getMessages();
|
23 |
-
$this->setCollection($collection);
|
24 |
-
parent::_prepareCollection();
|
25 |
-
return $this;
|
26 |
}
|
27 |
|
28 |
-
protected function
|
29 |
{
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
|
|
|
|
55 |
}
|
56 |
|
57 |
-
|
58 |
{
|
59 |
-
|
60 |
-
$this->getMassactionBlock()->setFormFieldName('message');
|
61 |
-
|
62 |
-
$this->getMassactionBlock()->addItem('delete', array(
|
63 |
-
'label'=> Mage::helper('livechat')->__('Delete'),
|
64 |
-
'url' => $this->getUrl('*/*/massMessageDelete', array('sessionId'=>$this->sessionId)),
|
65 |
-
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
66 |
-
));
|
67 |
-
|
68 |
-
return $this;
|
69 |
}
|
70 |
|
71 |
-
public function
|
72 |
{
|
73 |
-
return $this->
|
74 |
}
|
|
|
75 |
}
|
1 |
+
<?php
|
2 |
+
class Beck_LiveChat_Block_Session_Detail extends Mage_Adminhtml_Block_Template
|
|
|
3 |
{
|
|
|
4 |
|
5 |
+
public function __construct()
|
6 |
{
|
7 |
parent::__construct();
|
8 |
+
$this->setTemplate('livechat/session/detail.phtml');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
}
|
10 |
|
11 |
+
protected function _prepareLayout()
|
12 |
{
|
13 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
14 |
+
if ($type == 'standard')
|
15 |
+
{
|
16 |
+
$this->setChild('add_new_button',
|
17 |
+
$this->getLayout()->createBlock('adminhtml/widget_button')
|
18 |
+
->setData(array(
|
19 |
+
'label' => Mage::helper('livechat')->__('Back'),
|
20 |
+
'onclick' => "setLocation('".$this->getUrl('livechat/session_list/index/')."')",
|
21 |
+
'class' => 'scalable back'
|
22 |
+
))
|
23 |
+
);
|
24 |
+
}
|
25 |
+
elseif ($type == 'archive')
|
26 |
+
{
|
27 |
+
$this->setChild('add_new_button',
|
28 |
+
$this->getLayout()->createBlock('adminhtml/widget_button')
|
29 |
+
->setData(array(
|
30 |
+
'label' => Mage::helper('livechat')->__('Back'),
|
31 |
+
'onclick' => "setLocation('".$this->getUrl('livechat/session_list/index/type/archive')."')",
|
32 |
+
'class' => 'scalable back'
|
33 |
+
))
|
34 |
+
);
|
35 |
+
|
36 |
+
}
|
37 |
+
|
38 |
+
$this->setChild('grid', $this->getLayout()->createBlock('livechat/session_detail_grid', 'session.detail.grid'));
|
39 |
+
return parent::_prepareLayout();
|
40 |
}
|
41 |
|
42 |
+
public function getAddNewButtonHtml()
|
43 |
{
|
44 |
+
return $this->getChildHtml('add_new_button');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
}
|
46 |
|
47 |
+
public function getGridHtml()
|
48 |
{
|
49 |
+
return $this->getChildHtml('grid');
|
50 |
}
|
51 |
+
|
52 |
}
|
app/code/community/Beck/LiveChat/Block/Session/Detail/Grid.php
ADDED
@@ -0,0 +1,87 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Block_Session_Detail_Grid extends Mage_Adminhtml_Block_Widget_Grid
|
4 |
+
{
|
5 |
+
private $idSession = 0;
|
6 |
+
|
7 |
+
public function __construct()
|
8 |
+
{
|
9 |
+
parent::__construct();
|
10 |
+
$this->setId('id');
|
11 |
+
$this->setDefaultSort('id');
|
12 |
+
$this->setDefaultDir('desc');
|
13 |
+
$this->setSaveParametersInSession(true);
|
14 |
+
$this->setUseAjax(true);
|
15 |
+
$this->setVarNameFilter('sessiondetail_filter');
|
16 |
+
$this->sessionId = $this->getRequest()->getParam('sessionId', 0);
|
17 |
+
}
|
18 |
+
|
19 |
+
protected function _prepareCollection()
|
20 |
+
{
|
21 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
22 |
+
if ($type == 'standard')
|
23 |
+
{
|
24 |
+
$session = Mage::getModel('livechat/session')->load($this->sessionId);
|
25 |
+
$collection = $session->getMessages();
|
26 |
+
$this->setCollection($collection);
|
27 |
+
}
|
28 |
+
elseif ($type == 'archive')
|
29 |
+
{
|
30 |
+
$session = Mage::getModel('livechat/archives_session')->load($this->sessionId);
|
31 |
+
$collection = $session->getMessages();
|
32 |
+
$this->setCollection($collection);
|
33 |
+
}
|
34 |
+
|
35 |
+
$this->setCollection($collection);
|
36 |
+
parent::_prepareCollection();
|
37 |
+
return $this;
|
38 |
+
}
|
39 |
+
|
40 |
+
protected function _prepareColumns()
|
41 |
+
{
|
42 |
+
$this->addColumn('message_id',
|
43 |
+
array(
|
44 |
+
'header'=> Mage::helper('catalog')->__('ID'),
|
45 |
+
'width' => '50px',
|
46 |
+
'type' => 'number',
|
47 |
+
'index' => 'id',
|
48 |
+
));
|
49 |
+
$this->addColumn('date',
|
50 |
+
array(
|
51 |
+
'header'=> Mage::helper('livechat')->__('Placed at'),
|
52 |
+
'index' => 'date',
|
53 |
+
'type'=> 'datetime'
|
54 |
+
));
|
55 |
+
$this->addColumn('autorname',
|
56 |
+
array(
|
57 |
+
'header'=> Mage::helper('livechat')->__('Autor'),
|
58 |
+
'index' => 'autor_name',
|
59 |
+
));
|
60 |
+
$this->addColumn('message',
|
61 |
+
array(
|
62 |
+
'header'=> Mage::helper('livechat')->__('Message'),
|
63 |
+
'index' => 'message',
|
64 |
+
));
|
65 |
+
|
66 |
+
return parent::_prepareColumns();
|
67 |
+
}
|
68 |
+
|
69 |
+
protected function _prepareMassaction()
|
70 |
+
{
|
71 |
+
$this->setMassactionIdField('id');
|
72 |
+
$this->getMassactionBlock()->setFormFieldName('message');
|
73 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
74 |
+
$this->getMassactionBlock()->addItem('delete', array(
|
75 |
+
'label'=> Mage::helper('livechat')->__('Delete'),
|
76 |
+
'url' => $this->getUrl('*/*/massMessageDelete', array('sessionId' => $this->sessionId, 'type' => $type)),
|
77 |
+
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
78 |
+
));
|
79 |
+
|
80 |
+
return $this;
|
81 |
+
}
|
82 |
+
|
83 |
+
public function getGridUrl()
|
84 |
+
{
|
85 |
+
return $this->getUrl('*/*/detailGrid', array('_current'=>true));
|
86 |
+
}
|
87 |
+
}
|
app/code/community/Beck/LiveChat/Block/Session/{List.php → Grid.php}
RENAMED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
class
|
4 |
{
|
5 |
public function __construct()
|
6 |
{
|
@@ -16,8 +16,18 @@ class Beck_LiveChat_Block_Session_List extends Mage_Adminhtml_Block_Widget_Grid
|
|
16 |
|
17 |
protected function _prepareCollection()
|
18 |
{
|
19 |
-
$
|
20 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
parent::_prepareCollection();
|
22 |
return $this;
|
23 |
}
|
@@ -87,21 +97,33 @@ class Beck_LiveChat_Block_Session_List extends Mage_Adminhtml_Block_Widget_Grid
|
|
87 |
{
|
88 |
$this->setMassactionIdField('id');
|
89 |
$this->getMassactionBlock()->setFormFieldName('session');
|
90 |
-
$this->
|
|
|
|
|
|
|
91 |
'label'=> Mage::helper('livechat')->__('Open'),
|
92 |
'url' => $this->getUrl('*/*/massOpen'),
|
93 |
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
101 |
'label'=> Mage::helper('livechat')->__('Delete'),
|
102 |
'url' => $this->getUrl('*/*/massDelete'),
|
103 |
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
104 |
-
|
|
|
105 |
return $this;
|
106 |
}
|
107 |
|
@@ -112,6 +134,7 @@ class Beck_LiveChat_Block_Session_List extends Mage_Adminhtml_Block_Widget_Grid
|
|
112 |
|
113 |
public function getRowUrl($row)
|
114 |
{
|
115 |
-
|
|
|
116 |
}
|
117 |
}
|
1 |
<?php
|
2 |
|
3 |
+
class Beck_LiveChat_Block_Session_Grid extends Mage_Adminhtml_Block_Widget_Grid
|
4 |
{
|
5 |
public function __construct()
|
6 |
{
|
16 |
|
17 |
protected function _prepareCollection()
|
18 |
{
|
19 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
20 |
+
if ($type == 'standard')
|
21 |
+
{
|
22 |
+
$collection = Mage::getModel('livechat/session')->getCollection();
|
23 |
+
$this->setCollection($collection);
|
24 |
+
}
|
25 |
+
elseif ($type == 'archive')
|
26 |
+
{
|
27 |
+
$collection = Mage::getModel('livechat/archives_session')->getCollection();
|
28 |
+
$this->setCollection($collection);
|
29 |
+
}
|
30 |
+
|
31 |
parent::_prepareCollection();
|
32 |
return $this;
|
33 |
}
|
97 |
{
|
98 |
$this->setMassactionIdField('id');
|
99 |
$this->getMassactionBlock()->setFormFieldName('session');
|
100 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
101 |
+
if ($type == 'standard')
|
102 |
+
{
|
103 |
+
$this->getMassactionBlock()->addItem('open', array(
|
104 |
'label'=> Mage::helper('livechat')->__('Open'),
|
105 |
'url' => $this->getUrl('*/*/massOpen'),
|
106 |
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
107 |
+
));
|
108 |
+
$this->getMassactionBlock()->addItem('close', array(
|
109 |
+
'label'=> Mage::helper('livechat')->__('Close'),
|
110 |
+
'url' => $this->getUrl('*/*/massClose'),
|
111 |
+
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
112 |
+
));
|
113 |
+
$this->getMassactionBlock()->addItem('archive', array(
|
114 |
+
'label'=> Mage::helper('livechat')->__('Archive'),
|
115 |
+
'url' => $this->getUrl('*/*/massArchivate'),
|
116 |
+
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
117 |
+
));
|
118 |
+
}
|
119 |
+
elseif ($type == 'archive')
|
120 |
+
{
|
121 |
+
$this->getMassactionBlock()->addItem('delete', array(
|
122 |
'label'=> Mage::helper('livechat')->__('Delete'),
|
123 |
'url' => $this->getUrl('*/*/massDelete'),
|
124 |
'confirm' => Mage::helper('livechat')->__('Are you sure ?')
|
125 |
+
));
|
126 |
+
}
|
127 |
return $this;
|
128 |
}
|
129 |
|
134 |
|
135 |
public function getRowUrl($row)
|
136 |
{
|
137 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
138 |
+
return $this->getUrl('*/*/detail', array('sessionId' => $row->getId(), 'type' => $type));
|
139 |
}
|
140 |
}
|
app/code/community/Beck/LiveChat/Block/Widget/Grid/Column/Renderer/State.php
CHANGED
@@ -6,35 +6,21 @@ class Beck_LiveChat_Block_Widget_Grid_Column_Renderer_State extends Mage_Adminht
|
|
6 |
{
|
7 |
$html = '';
|
8 |
$state = (int)$row->close;
|
9 |
-
|
10 |
$list = array();
|
11 |
-
|
|
|
|
|
|
|
|
|
|
|
12 |
{
|
13 |
-
|
14 |
-
{
|
15 |
-
$customerOnline = Mage::getResourceSingleton('log/visitor_collection')
|
16 |
-
->useOnlineFilter();
|
17 |
-
foreach ($customerOnline as $customer)
|
18 |
-
{
|
19 |
-
$list[] = $customer->getSession_id();
|
20 |
-
}
|
21 |
-
$session->setData('customerOnline', $list);
|
22 |
-
}
|
23 |
-
catch (Exception $e)
|
24 |
{
|
25 |
-
$
|
|
|
26 |
}
|
27 |
}
|
28 |
-
else
|
29 |
-
{
|
30 |
-
$list = $session->getData('customerOnline');
|
31 |
-
}
|
32 |
-
$session = Mage::getModel('livechat/session')->load($row->id);
|
33 |
-
if ($session->Expired($list))
|
34 |
-
{
|
35 |
-
$session->Close();
|
36 |
-
$state = 1;
|
37 |
-
}
|
38 |
|
39 |
if ($state == 1)
|
40 |
{
|
6 |
{
|
7 |
$html = '';
|
8 |
$state = (int)$row->close;
|
9 |
+
|
10 |
$list = array();
|
11 |
+
|
12 |
+
$session = Mage::getSingleton('adminhtml/session');
|
13 |
+
$list = $session->getData('customerOnline');
|
14 |
+
|
15 |
+
$session = Mage::getModel('livechat/session')->load($row->id);
|
16 |
+
if (is_array($list))
|
17 |
{
|
18 |
+
if (Mage::Helper('livechat')->isSessionExpired($session, $list))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
{
|
20 |
+
$session->Expired();
|
21 |
+
$state = 1;
|
22 |
}
|
23 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
|
25 |
if ($state == 1)
|
26 |
{
|
app/code/community/Beck/LiveChat/Helper/Data.php
CHANGED
@@ -2,4 +2,29 @@
|
|
2 |
|
3 |
class Beck_LiveChat_Helper_Data extends Mage_Core_Helper_Abstract
|
4 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
}
|
2 |
|
3 |
class Beck_LiveChat_Helper_Data extends Mage_Core_Helper_Abstract
|
4 |
{
|
5 |
+
public function isSessionExpired(Beck_LiveChat_Model_Session $session, array $customerOnlines)
|
6 |
+
{
|
7 |
+
//Zend_Debug::dump($customerOnlines, 'customerOnlines');
|
8 |
+
//Zend_Debug::dump($session->getCustomer_session_id(),'session_id');
|
9 |
+
$result = true;
|
10 |
+
if ($session->getId() > 0)
|
11 |
+
{
|
12 |
+
if (is_array($customerOnlines))
|
13 |
+
{
|
14 |
+
foreach ($customerOnlines as $customerSessionID)
|
15 |
+
{
|
16 |
+
if ($customerSessionID == $session->getCustomer_session_id())
|
17 |
+
{
|
18 |
+
$result = false;
|
19 |
+
}
|
20 |
+
}
|
21 |
+
}
|
22 |
+
else
|
23 |
+
{
|
24 |
+
$result = false;
|
25 |
+
}
|
26 |
+
}
|
27 |
+
//Zend_Debug::dump($result, 'isSessionExpired');
|
28 |
+
return ($result);
|
29 |
+
}
|
30 |
}
|
app/code/community/Beck/LiveChat/Model/Api.php
CHANGED
@@ -19,7 +19,7 @@ class Beck_LiveChat_Model_Api extends Mage_Api_Model_Resource_Abstract
|
|
19 |
|
20 |
foreach ($sessions as $session)
|
21 |
{
|
22 |
-
if (
|
23 |
{
|
24 |
if ($session->getDispatched() == 0 || $session->getDispatched() == $operator->getId())
|
25 |
{
|
@@ -30,7 +30,7 @@ class Beck_LiveChat_Model_Api extends Mage_Api_Model_Resource_Abstract
|
|
30 |
}
|
31 |
else
|
32 |
{
|
33 |
-
$session->
|
34 |
}
|
35 |
}
|
36 |
}
|
19 |
|
20 |
foreach ($sessions as $session)
|
21 |
{
|
22 |
+
if (!Mage::Helper('livechat')->isSessionExpired($session, $list))
|
23 |
{
|
24 |
if ($session->getDispatched() == 0 || $session->getDispatched() == $operator->getId())
|
25 |
{
|
30 |
}
|
31 |
else
|
32 |
{
|
33 |
+
$session->Expired();
|
34 |
}
|
35 |
}
|
36 |
}
|
app/code/community/Beck/LiveChat/Model/Archives/Message.php
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Model_Archives_Message extends Beck_LiveChat_Model_Message
|
4 |
+
{
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
parent::_construct();
|
8 |
+
$this->_init('livechat/archives_message');
|
9 |
+
}
|
10 |
+
}
|
app/code/community/Beck/LiveChat/Model/Archives/Session.php
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Model_Archives_Session extends Beck_LiveChat_Model_Session
|
4 |
+
{
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
parent::_construct();
|
8 |
+
$this->_init('livechat/archives_session');
|
9 |
+
}
|
10 |
+
|
11 |
+
|
12 |
+
public function saveMessage($autor, $message, $customer_message = '0')
|
13 |
+
{
|
14 |
+
if ($this->getId() > 0)
|
15 |
+
{
|
16 |
+
$message = eregi_replace("(http://)(([[:punct:]]|[[:alnum:]])*)", "<a href=\"\\0\">\\2</a>", $message);
|
17 |
+
$sessionmessage = Mage::getModel('livechat/archives_message');
|
18 |
+
$sessionmessage->setLivechat_session_id($this->getId())
|
19 |
+
->setAutor_name($autor)
|
20 |
+
->setMessage($message)
|
21 |
+
->setIs_customer_message($customer_message)
|
22 |
+
->setDate(now())
|
23 |
+
->save();
|
24 |
+
return ($sessionmessage);
|
25 |
+
}
|
26 |
+
return null;
|
27 |
+
}
|
28 |
+
|
29 |
+
public function getMessages()
|
30 |
+
{
|
31 |
+
if ($this->getId() > 0)
|
32 |
+
{
|
33 |
+
$messages = Mage::getModel('livechat/archives_message')->getCollection()
|
34 |
+
->addFilter('livechat_session_id', $this->getId(), 'and')
|
35 |
+
->setOrder('date', Varien_Data_Collection::SORT_ORDER_ASC);
|
36 |
+
return ($messages);
|
37 |
+
}
|
38 |
+
return null;
|
39 |
+
}
|
40 |
+
|
41 |
+
public function getCustomerMessages()
|
42 |
+
{
|
43 |
+
if ($this->getId() > 0)
|
44 |
+
{
|
45 |
+
$messages = Mage::getModel('livechat/archives_message')->getCollection()
|
46 |
+
->addFilter('livechat_session_id', $this->getId(), 'and')
|
47 |
+
->addFilter('is_customer_message', '1', 'and')
|
48 |
+
->setOrder('date', Varien_Data_Collection::SORT_ORDER_ASC);
|
49 |
+
return ($messages);
|
50 |
+
}
|
51 |
+
return null;
|
52 |
+
}
|
53 |
+
|
54 |
+
public function archive(Beck_LiveChat_Model_Session $session)
|
55 |
+
{
|
56 |
+
if ($session->getId() > 0)
|
57 |
+
{
|
58 |
+
$this->setCustomer_name($session->getCustomer_name());
|
59 |
+
$this->setDate_started($session->getDate_started());
|
60 |
+
$this->setCustomer_session_id($session->getCustomer_session_id());
|
61 |
+
$this->setDispatched($session->getDispatched());
|
62 |
+
$this->setStore_id($session->getStore_id());
|
63 |
+
$this->setOrder_placed($session->getOrder_placed());
|
64 |
+
$this->setClose('1');
|
65 |
+
$this->setCustomer_url($session->getCustomer_url());
|
66 |
+
$this->save();
|
67 |
+
$messages = $session->getMessages();
|
68 |
+
foreach ($messages as $message)
|
69 |
+
{
|
70 |
+
$archived_message = Mage::getModel('livechat/archives_message');
|
71 |
+
$archived_message->setLivechat_session_id($this->getId());
|
72 |
+
$archived_message->setAutor_name($message->getAutor_name());
|
73 |
+
$archived_message->setIs_customer_message($message->getIs_customer_message());
|
74 |
+
$archived_message->setMessage($message->getMessage());
|
75 |
+
$archived_message->setDate($message->getDate());
|
76 |
+
$archived_message->save();
|
77 |
+
}
|
78 |
+
$session->destroy();
|
79 |
+
}
|
80 |
+
return $this;
|
81 |
+
}
|
82 |
+
}
|
app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Message.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Model_Mysql4_Archives_Message extends Mage_Core_Model_Mysql4_Abstract
|
4 |
+
{
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
$this->_init('livechat/livechat_messages_archives', 'id');
|
8 |
+
}
|
9 |
+
}
|
app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Message/Collection.php
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Model_Mysql4_Archives_Message_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
|
4 |
+
{
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
parent::_construct();
|
8 |
+
$this->_init('livechat/archives_message');
|
9 |
+
}
|
10 |
+
}
|
app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Session.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Model_Mysql4_Archives_Session extends Mage_Core_Model_Mysql4_Abstract
|
4 |
+
{
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
$this->_init('livechat/livechat_sessions_archives', 'id');
|
8 |
+
}
|
9 |
+
}
|
app/code/community/Beck/LiveChat/Model/Mysql4/Archives/Session/Collection.php
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Beck_LiveChat_Model_Mysql4_Archives_Session_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
|
4 |
+
{
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
parent::_construct();
|
8 |
+
$this->_init('livechat/archives_session');
|
9 |
+
}
|
10 |
+
}
|
app/code/community/Beck/LiveChat/Model/Session.php
CHANGED
@@ -89,6 +89,20 @@ class Beck_LiveChat_Model_Session extends Mage_Core_Model_Abstract
|
|
89 |
}
|
90 |
}
|
91 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
public function Expired(array $customerOnlines)
|
93 |
{
|
94 |
$result = true;
|
@@ -111,6 +125,7 @@ class Beck_LiveChat_Model_Session extends Mage_Core_Model_Abstract
|
|
111 |
}
|
112 |
return ($result);
|
113 |
}
|
|
|
114 |
|
115 |
public function getNewMessages($CurrentMessages)
|
116 |
{
|
89 |
}
|
90 |
}
|
91 |
|
92 |
+
public function Expired()
|
93 |
+
{
|
94 |
+
$this->Close();
|
95 |
+
$archivate = Mage::getStoreConfig('livechatevents/onsessionexpire/archive', 0) == '1' ? true : false;
|
96 |
+
if ($archivate)
|
97 |
+
{
|
98 |
+
$archive = Mage::getModel('livechat/archives_session');
|
99 |
+
$archive->archive($this);
|
100 |
+
return $archive;
|
101 |
+
}
|
102 |
+
return $this;
|
103 |
+
}
|
104 |
+
|
105 |
+
/*
|
106 |
public function Expired(array $customerOnlines)
|
107 |
{
|
108 |
$result = true;
|
125 |
}
|
126 |
return ($result);
|
127 |
}
|
128 |
+
*/
|
129 |
|
130 |
public function getNewMessages($CurrentMessages)
|
131 |
{
|
app/code/community/Beck/LiveChat/controllers/Session/ListController.php
CHANGED
@@ -5,12 +5,29 @@ class Beck_LiveChat_Session_ListController extends Mage_Adminhtml_Controller_Act
|
|
5 |
public function indexAction()
|
6 |
{
|
7 |
$this->loadLayout();
|
|
|
|
|
|
|
8 |
$this->renderLayout();
|
9 |
}
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
public function gridAction()
|
12 |
{
|
13 |
$this->loadLayout();
|
|
|
14 |
$this->getResponse()->setBody(
|
15 |
$this->getLayout()->createBlock('livechat/session_list')->toHtml()
|
16 |
);
|
@@ -43,7 +60,7 @@ class Beck_LiveChat_Session_ListController extends Mage_Adminhtml_Controller_Act
|
|
43 |
{
|
44 |
foreach ($sessionIds as $sessionId)
|
45 |
{
|
46 |
-
$session = Mage::getSingleton('livechat/
|
47 |
Mage::dispatchEvent('livechat_controller_session_delete', array('session' => $session));
|
48 |
$session->Destroy();
|
49 |
}
|
@@ -54,7 +71,7 @@ class Beck_LiveChat_Session_ListController extends Mage_Adminhtml_Controller_Act
|
|
54 |
$this->_getSession()->addError($e->getMessage());
|
55 |
}
|
56 |
}
|
57 |
-
$this->_redirect('*/*');
|
58 |
}
|
59 |
|
60 |
public function massCloseAction()
|
@@ -115,6 +132,7 @@ class Beck_LiveChat_Session_ListController extends Mage_Adminhtml_Controller_Act
|
|
115 |
{
|
116 |
$messageIds = $this->getRequest()->getParam('message');
|
117 |
$sessionId = $this->getRequest()->getParam('sessionId', 0);
|
|
|
118 |
if (!is_array($messageIds))
|
119 |
{
|
120 |
$this->_getSession()->addError($this->__('Please select message(s)'));
|
@@ -125,9 +143,18 @@ class Beck_LiveChat_Session_ListController extends Mage_Adminhtml_Controller_Act
|
|
125 |
{
|
126 |
foreach ($messageIds as $messageId)
|
127 |
{
|
128 |
-
|
129 |
-
|
130 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
131 |
}
|
132 |
$this->_getSession()->addSuccess($this->__('Total of %d record(s) were successfully deleted', count($messageIds)));
|
133 |
}
|
@@ -136,6 +163,34 @@ class Beck_LiveChat_Session_ListController extends Mage_Adminhtml_Controller_Act
|
|
136 |
$this->_getSession()->addError($e->getMessage());
|
137 |
}
|
138 |
}
|
139 |
-
$this->_redirect('*/*/detail', array('sessionId'=>$sessionId));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
}
|
141 |
}
|
5 |
public function indexAction()
|
6 |
{
|
7 |
$this->loadLayout();
|
8 |
+
|
9 |
+
$this->getOnlineCustomers();
|
10 |
+
|
11 |
$this->renderLayout();
|
12 |
}
|
13 |
|
14 |
+
protected function getOnlineCustomers()
|
15 |
+
{
|
16 |
+
$customerOnline = Mage::getResourceSingleton('log/visitor_collection')
|
17 |
+
->useOnlineFilter();
|
18 |
+
$list = array();
|
19 |
+
foreach ($customerOnline as $customer)
|
20 |
+
{
|
21 |
+
$list[] = $customer->getSession_id();
|
22 |
+
}
|
23 |
+
$session = Mage::getSingleton('adminhtml/session');
|
24 |
+
$session->setData('customerOnline', $list);
|
25 |
+
}
|
26 |
+
|
27 |
public function gridAction()
|
28 |
{
|
29 |
$this->loadLayout();
|
30 |
+
$this->getOnlineCustomers();
|
31 |
$this->getResponse()->setBody(
|
32 |
$this->getLayout()->createBlock('livechat/session_list')->toHtml()
|
33 |
);
|
60 |
{
|
61 |
foreach ($sessionIds as $sessionId)
|
62 |
{
|
63 |
+
$session = Mage::getSingleton('livechat/archives_session')->load($sessionId);
|
64 |
Mage::dispatchEvent('livechat_controller_session_delete', array('session' => $session));
|
65 |
$session->Destroy();
|
66 |
}
|
71 |
$this->_getSession()->addError($e->getMessage());
|
72 |
}
|
73 |
}
|
74 |
+
$this->_redirect('*/*', array('type'=>'archive'));
|
75 |
}
|
76 |
|
77 |
public function massCloseAction()
|
132 |
{
|
133 |
$messageIds = $this->getRequest()->getParam('message');
|
134 |
$sessionId = $this->getRequest()->getParam('sessionId', 0);
|
135 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
136 |
if (!is_array($messageIds))
|
137 |
{
|
138 |
$this->_getSession()->addError($this->__('Please select message(s)'));
|
143 |
{
|
144 |
foreach ($messageIds as $messageId)
|
145 |
{
|
146 |
+
if ($type == 'standard')
|
147 |
+
{
|
148 |
+
$message = Mage::getSingleton('livechat/message')->load($messageId);
|
149 |
+
Mage::dispatchEvent('livechat_controller_message_delete', array('message' => $message));
|
150 |
+
$message->delete();
|
151 |
+
}
|
152 |
+
elseif ($type == 'archive')
|
153 |
+
{
|
154 |
+
$message = Mage::getSingleton('livechat/archives_message')->load($messageId);
|
155 |
+
Mage::dispatchEvent('livechat_controller_message_delete', array('message' => $message));
|
156 |
+
$message->delete();
|
157 |
+
}
|
158 |
}
|
159 |
$this->_getSession()->addSuccess($this->__('Total of %d record(s) were successfully deleted', count($messageIds)));
|
160 |
}
|
163 |
$this->_getSession()->addError($e->getMessage());
|
164 |
}
|
165 |
}
|
166 |
+
$this->_redirect('*/*/detail', array('sessionId'=>$sessionId, 'type'=>$type));
|
167 |
+
}
|
168 |
+
|
169 |
+
public function massArchivateAction()
|
170 |
+
{
|
171 |
+
$sessionIds = $this->getRequest()->getParam('session');
|
172 |
+
if (!is_array($sessionIds))
|
173 |
+
{
|
174 |
+
$this->_getSession()->addError($this->__('Please select chat(s)'));
|
175 |
+
}
|
176 |
+
else
|
177 |
+
{
|
178 |
+
try
|
179 |
+
{
|
180 |
+
foreach ($sessionIds as $sessionId)
|
181 |
+
{
|
182 |
+
$session = Mage::getSingleton('livechat/session')->load($sessionId);
|
183 |
+
$archive = Mage::getModel('livechat/archives_session')->archive($session);
|
184 |
+
Mage::dispatchEvent('livechat_controller_session_archived', array('session' => $session));
|
185 |
+
|
186 |
+
}
|
187 |
+
$this->_getSession()->addSuccess($this->__('Total of %d record(s) were successfully archived', count($sessionIds)));
|
188 |
+
}
|
189 |
+
catch (Exception $e)
|
190 |
+
{
|
191 |
+
$this->_getSession()->addError($e->getMessage());
|
192 |
+
}
|
193 |
+
}
|
194 |
+
$this->_redirect('*/*');
|
195 |
}
|
196 |
}
|
app/code/community/Beck/LiveChat/controllers/Session/LiveController.php
CHANGED
@@ -24,7 +24,7 @@ class Beck_LiveChat_Session_LiveController extends Mage_Adminhtml_Controller_Act
|
|
24 |
{
|
25 |
foreach ($sessions as $session)
|
26 |
{
|
27 |
-
if (
|
28 |
{
|
29 |
if ($session->getDispatched() == 0 || $session->getDispatched() == $operator->getId())
|
30 |
{
|
@@ -35,7 +35,7 @@ class Beck_LiveChat_Session_LiveController extends Mage_Adminhtml_Controller_Act
|
|
35 |
}
|
36 |
else
|
37 |
{
|
38 |
-
$session->
|
39 |
}
|
40 |
}
|
41 |
}
|
24 |
{
|
25 |
foreach ($sessions as $session)
|
26 |
{
|
27 |
+
if (!Mage::Helper('livechat')->isSessionExpired($session, $list))
|
28 |
{
|
29 |
if ($session->getDispatched() == 0 || $session->getDispatched() == $operator->getId())
|
30 |
{
|
35 |
}
|
36 |
else
|
37 |
{
|
38 |
+
$session->Expired();
|
39 |
}
|
40 |
}
|
41 |
}
|
app/code/community/Beck/LiveChat/etc/config.xml
CHANGED
@@ -2,10 +2,9 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Beck_LiveChat>
|
5 |
-
<version>1.3.
|
6 |
</Beck_LiveChat>
|
7 |
</modules>
|
8 |
-
|
9 |
<admin>
|
10 |
<routers>
|
11 |
<livechat>
|
@@ -134,6 +133,12 @@
|
|
134 |
<livechat_sessions>
|
135 |
<table>livechat_sessions</table>
|
136 |
</livechat_sessions>
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
</entities>
|
138 |
</livechat_mysql4>
|
139 |
</models>
|
@@ -223,6 +228,9 @@
|
|
223 |
<oncustomersendmessage>
|
224 |
<allowcustomerreopen>1</allowcustomerreopen>
|
225 |
</oncustomersendmessage>
|
|
|
|
|
|
|
226 |
</livechatevents>
|
227 |
</default>
|
228 |
</config>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Beck_LiveChat>
|
5 |
+
<version>1.3.5</version>
|
6 |
</Beck_LiveChat>
|
7 |
</modules>
|
|
|
8 |
<admin>
|
9 |
<routers>
|
10 |
<livechat>
|
133 |
<livechat_sessions>
|
134 |
<table>livechat_sessions</table>
|
135 |
</livechat_sessions>
|
136 |
+
<livechat_messages_archives>
|
137 |
+
<table>livechat_messages_archives</table>
|
138 |
+
</livechat_messages_archives>
|
139 |
+
<livechat_sessions_archives>
|
140 |
+
<table>livechat_sessions_archives</table>
|
141 |
+
</livechat_sessions_archives>
|
142 |
</entities>
|
143 |
</livechat_mysql4>
|
144 |
</models>
|
228 |
<oncustomersendmessage>
|
229 |
<allowcustomerreopen>1</allowcustomerreopen>
|
230 |
</oncustomersendmessage>
|
231 |
+
<onsessionexpire>
|
232 |
+
<archive>1</archive>
|
233 |
+
</onsessionexpire>
|
234 |
</livechatevents>
|
235 |
</default>
|
236 |
</config>
|
app/code/community/Beck/LiveChat/etc/system.xml
CHANGED
@@ -249,6 +249,25 @@
|
|
249 |
</allowcustomerreopen>
|
250 |
</fields>
|
251 |
</oncustomersendmessage>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
</groups>
|
253 |
</livechatevents>
|
254 |
</sections>
|
249 |
</allowcustomerreopen>
|
250 |
</fields>
|
251 |
</oncustomersendmessage>
|
252 |
+
<onsessionexpire>
|
253 |
+
<label>When the session expire</label>
|
254 |
+
<frontend_type>text</frontend_type>
|
255 |
+
<sort_order>40</sort_order>
|
256 |
+
<show_in_default>1</show_in_default>
|
257 |
+
<show_in_website>0</show_in_website>
|
258 |
+
<show_in_store>0</show_in_store>
|
259 |
+
<fields>
|
260 |
+
<archive translate="label" module="livechat">
|
261 |
+
<label>Archivate the session</label>
|
262 |
+
<frontend_type>select</frontend_type>
|
263 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
264 |
+
<sort_order>1</sort_order>
|
265 |
+
<show_in_default>1</show_in_default>
|
266 |
+
<show_in_website>0</show_in_website>
|
267 |
+
<show_in_store>0</show_in_store>
|
268 |
+
</archive>
|
269 |
+
</fields>
|
270 |
+
</onsessionexpire>
|
271 |
</groups>
|
272 |
</livechatevents>
|
273 |
</sections>
|
app/code/community/Beck/LiveChat/sql/livechat_setup/mysql4-upgrade-1.3.0-1.3.5.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
$installer = $this;
|
4 |
+
|
5 |
+
$installer->startSetup();
|
6 |
+
|
7 |
+
$installer->run("CREATE TABLE IF NOT EXISTS `{$this->getTable('livechat_messages_archives')}` (
|
8 |
+
`id` int(10) NOT NULL auto_increment,
|
9 |
+
`livechat_session_id` int(10) NOT NULL,
|
10 |
+
`autor_name` varchar(32) NOT NULL,
|
11 |
+
`is_customer_message` enum('0','1') NOT NULL default '0',
|
12 |
+
`message` text NOT NULL,
|
13 |
+
`date` timestamp NOT NULL default CURRENT_TIMESTAMP,
|
14 |
+
PRIMARY KEY (`id`),
|
15 |
+
KEY `livechat_session_id` (`livechat_session_id`)
|
16 |
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
17 |
+
|
18 |
+
CREATE TABLE IF NOT EXISTS `{$this->getTable('livechat_sessions_archives')}` (
|
19 |
+
`id` int(10) NOT NULL auto_increment,
|
20 |
+
`customer_name` varchar(32) NOT NULL,
|
21 |
+
`date_started` datetime NOT NULL,
|
22 |
+
`customer_session_id` varchar(255) NOT NULL,
|
23 |
+
`dispatched` int(10) NOT NULL default '0',
|
24 |
+
`store_id` int(10) NOT NULL,
|
25 |
+
`order_placed` varchar(25) NOT NULL,
|
26 |
+
`close` enum('0','1') NOT NULL default '0',
|
27 |
+
`customer_url` varchar(255) NOT NULL,
|
28 |
+
PRIMARY KEY (`id`),
|
29 |
+
KEY `customer_session_id` (`customer_session_id`)
|
30 |
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
31 |
+
");
|
32 |
+
$installer->endSetup();
|
app/design/adminhtml/default/default/layout/livechat.xml
CHANGED
@@ -1,17 +1,25 @@
|
|
1 |
<?xml version="1.0" encoding="utf-8" ?>
|
2 |
<layout>
|
3 |
-
|
4 |
<livechat_session_list_index>
|
|
|
|
|
|
|
5 |
<reference name="content">
|
6 |
-
<block type="livechat/
|
7 |
</reference>
|
8 |
</livechat_session_list_index>
|
9 |
<livechat_session_list_detail>
|
|
|
|
|
|
|
10 |
<reference name="content">
|
11 |
<block type="livechat/session_detail" name="livechat.session.detail" />
|
12 |
</reference>
|
13 |
</livechat_session_list_detail>
|
14 |
<livechat_operator_list_index>
|
|
|
|
|
|
|
15 |
<reference name="content">
|
16 |
<block type="livechat/operator" name="livechat.operator" />
|
17 |
</reference>
|
1 |
<?xml version="1.0" encoding="utf-8" ?>
|
2 |
<layout>
|
|
|
3 |
<livechat_session_list_index>
|
4 |
+
<reference name="head">
|
5 |
+
<action method="addCss"><name>livechat/livechat.css</name></action>
|
6 |
+
</reference>
|
7 |
<reference name="content">
|
8 |
+
<block type="livechat/session" name="livechat.session.list" />
|
9 |
</reference>
|
10 |
</livechat_session_list_index>
|
11 |
<livechat_session_list_detail>
|
12 |
+
<reference name="head">
|
13 |
+
<action method="addCss"><name>livechat/livechat.css</name></action>
|
14 |
+
</reference>
|
15 |
<reference name="content">
|
16 |
<block type="livechat/session_detail" name="livechat.session.detail" />
|
17 |
</reference>
|
18 |
</livechat_session_list_detail>
|
19 |
<livechat_operator_list_index>
|
20 |
+
<reference name="head">
|
21 |
+
<action method="addCss"><name>livechat/livechat.css</name></action>
|
22 |
+
</reference>
|
23 |
<reference name="content">
|
24 |
<block type="livechat/operator" name="livechat.operator" />
|
25 |
</reference>
|
app/design/adminhtml/default/default/template/livechat/operator.phtml
CHANGED
@@ -27,7 +27,7 @@
|
|
27 |
<div class="content-header">
|
28 |
<table cellspacing="0">
|
29 |
<tr>
|
30 |
-
<td style="width:50%;"><h3 class="icon-head head-
|
31 |
<td class="a-right">
|
32 |
<?php echo $this->getAddNewButtonHtml() ?>
|
33 |
</td>
|
27 |
<div class="content-header">
|
28 |
<table cellspacing="0">
|
29 |
<tr>
|
30 |
+
<td style="width:50%;"><h3 class="icon-head head-livechat"><?php echo Mage::helper('livechat')->__('Operators') ?></h3></td>
|
31 |
<td class="a-right">
|
32 |
<?php echo $this->getAddNewButtonHtml() ?>
|
33 |
</td>
|
app/design/adminhtml/default/default/template/livechat/session.phtml
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Magento
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the Academic Free License (AFL 3.0)
|
8 |
+
* that is bundled with this package in the file LICENSE_AFL.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/afl-3.0.php
|
11 |
+
* If you did not receive a copy of the license and are unable to
|
12 |
+
* obtain it through the world-wide-web, please send an email
|
13 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
+
*
|
15 |
+
* DISCLAIMER
|
16 |
+
*
|
17 |
+
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
+
* versions in the future. If you wish to customize Magento for your
|
19 |
+
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
+
*
|
21 |
+
* @category design_default
|
22 |
+
* @package Mage
|
23 |
+
* @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
|
24 |
+
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
25 |
+
*/
|
26 |
+
?>
|
27 |
+
<div class="content-header">
|
28 |
+
<table cellspacing="0">
|
29 |
+
<tr>
|
30 |
+
<td style="width:50%;"><h3 class="icon-head head-livechat">
|
31 |
+
<?php
|
32 |
+
$type = $this->getRequest()->getParam('type', 'standard');
|
33 |
+
if ($type == 'standard')
|
34 |
+
{
|
35 |
+
echo Mage::helper('livechat')->__('Running chat sessions');
|
36 |
+
}
|
37 |
+
elseif ($type == 'archive')
|
38 |
+
{
|
39 |
+
echo Mage::helper('livechat')->__('Archived chat sessions');
|
40 |
+
}
|
41 |
+
?></h3></td>
|
42 |
+
<td class="a-right">
|
43 |
+
<?php echo $this->getAddNewButtonHtml() ?>
|
44 |
+
</td>
|
45 |
+
</tr>
|
46 |
+
</table>
|
47 |
+
</div>
|
48 |
+
<div>
|
49 |
+
<?php echo $this->getGridHtml() ?>
|
50 |
+
</div>
|
app/design/adminhtml/default/default/template/livechat/session/detail.phtml
ADDED
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Magento
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the Academic Free License (AFL 3.0)
|
8 |
+
* that is bundled with this package in the file LICENSE_AFL.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/afl-3.0.php
|
11 |
+
* If you did not receive a copy of the license and are unable to
|
12 |
+
* obtain it through the world-wide-web, please send an email
|
13 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
+
*
|
15 |
+
* DISCLAIMER
|
16 |
+
*
|
17 |
+
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
+
* versions in the future. If you wish to customize Magento for your
|
19 |
+
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
+
*
|
21 |
+
* @category design_default
|
22 |
+
* @package Mage
|
23 |
+
* @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
|
24 |
+
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
25 |
+
*/
|
26 |
+
?>
|
27 |
+
<div class="content-header">
|
28 |
+
<table cellspacing="0">
|
29 |
+
<tr>
|
30 |
+
<td style="width:50%;"><h3 class="icon-head head-livechat">
|
31 |
+
<?php
|
32 |
+
echo Mage::helper('livechat')->__('Messages');
|
33 |
+
?></h3></td>
|
34 |
+
<td class="a-right">
|
35 |
+
<?php echo $this->getAddNewButtonHtml() ?>
|
36 |
+
</td>
|
37 |
+
</tr>
|
38 |
+
</table>
|
39 |
+
</div>
|
40 |
+
<div>
|
41 |
+
<?php echo $this->getGridHtml() ?>
|
42 |
+
</div>
|
app/design/adminhtml/default/default/template/livechat/widget/sessionslive.phtml
CHANGED
@@ -1,5 +1,8 @@
|
|
1 |
<div class="content-header">
|
2 |
-
|
|
|
|
|
|
|
3 |
<?php
|
4 |
$session = Mage::getSingleton('adminhtml/session');
|
5 |
if ($session->getData('OperatorName') != null):
|
@@ -40,5 +43,7 @@ else:
|
|
40 |
var livechatloginform = new varienForm('livechatloginloginform');
|
41 |
</script>
|
42 |
<?php endif; ?>
|
43 |
-
</
|
|
|
|
|
44 |
</div>
|
1 |
<div class="content-header">
|
2 |
+
<table cellspacing="0">
|
3 |
+
<tr>
|
4 |
+
<td style="width:50%;"><h3 class="icon-head head-livechat">Sessions Live</h3></td>
|
5 |
+
<td class="a-right">
|
6 |
<?php
|
7 |
$session = Mage::getSingleton('adminhtml/session');
|
8 |
if ($session->getData('OperatorName') != null):
|
43 |
var livechatloginform = new varienForm('livechatloginloginform');
|
44 |
</script>
|
45 |
<?php endif; ?>
|
46 |
+
</td>
|
47 |
+
</tr>
|
48 |
+
</table>
|
49 |
</div>
|
app/etc/modules/ZBeck_LiveChat.xml
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
<active>true</active>
|
6 |
<codePool>community</codePool>
|
7 |
<depends />
|
8 |
-
<version>1.3.
|
9 |
</Beck_LiveChat>
|
10 |
</modules>
|
11 |
</config>
|
5 |
<active>true</active>
|
6 |
<codePool>community</codePool>
|
7 |
<depends />
|
8 |
+
<version>1.3.5</version>
|
9 |
</Beck_LiveChat>
|
10 |
</modules>
|
11 |
</config>
|
app/locale/fr_FR/Beck_LiveChat.csv
CHANGED
@@ -84,4 +84,12 @@
|
|
84 |
"Automatically create a new chatsession for everyone","Créer automatiquement une nouvelle session de t'chat pour tout le monde"
|
85 |
"Automatically create a new chat session for every customer logged in","Créer automatiquement une nouvelle session de t'chat pour tous les clients connecté"
|
86 |
"Customer url","Url du client"
|
87 |
-
"Total of %d record(s) were successfully opened","Un total de %d enregistrement(s) ont été ouvert(s) avec succès"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
"Automatically create a new chatsession for everyone","Créer automatiquement une nouvelle session de t'chat pour tout le monde"
|
85 |
"Automatically create a new chat session for every customer logged in","Créer automatiquement une nouvelle session de t'chat pour tous les clients connecté"
|
86 |
"Customer url","Url du client"
|
87 |
+
"Total of %d record(s) were successfully opened","Un total de %d enregistrement(s) ont été ouvert(s) avec succès"
|
88 |
+
"Running chat sessions","Sessions de t'chat en cours"
|
89 |
+
"Archived chat sessions","Sessions de t'chat archivées"
|
90 |
+
"View archived sessions","Voir les sessions archivées"
|
91 |
+
"View live sessions","Voir les sessions en cours"
|
92 |
+
"Back","Retour"
|
93 |
+
"Messages","Messages"
|
94 |
+
"Total of %d record(s) were successfully archived","Un total de %d enregistrement(s) ont été archivé(s) avec succès"
|
95 |
+
"Archive","Archiver"
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Beck_LiveChat</name>
|
4 |
-
<version>1.3.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
@@ -13,9 +13,9 @@ Operator can use the windows software LiveChatOperator wich can stay in tray ico
|
|
13 |
All is free.</description>
|
14 |
<notes>none</notes>
|
15 |
<authors><author><name>Fabrice Beck</name><user>auto-converted</user><email>fabrice.beck@fia-net.com</email></author></authors>
|
16 |
-
<date>2009-02-
|
17 |
-
<time>
|
18 |
-
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="livechat"><file name="base_mini_actions_bg.gif" hash="da2970eac0a22c850b19ee3680475d51"/><file name="base_mini_head_bg.gif" hash="f8c1f130ad69464fe7aff2f589b2ec75"/><file name="chat.png" hash="0b6147abc4b325b6adc53101020214fd"/><file name="close.png" hash="453440e151c84241d7e96fbef87e3ce4"/><file name="close_hover.png" hash="504658759baedc0fae5461fc25d1258d"/></dir></dir><dir name="livechat"><file name="livechat.css" hash="
|
19 |
<compatible/>
|
20 |
<dependencies/>
|
21 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Beck_LiveChat</name>
|
4 |
+
<version>1.3.5</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
13 |
All is free.</description>
|
14 |
<notes>none</notes>
|
15 |
<authors><author><name>Fabrice Beck</name><user>auto-converted</user><email>fabrice.beck@fia-net.com</email></author></authors>
|
16 |
+
<date>2009-02-11</date>
|
17 |
+
<time>13:15:35</time>
|
18 |
+
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="livechat"><file name="base_mini_actions_bg.gif" hash="da2970eac0a22c850b19ee3680475d51"/><file name="base_mini_head_bg.gif" hash="f8c1f130ad69464fe7aff2f589b2ec75"/><file name="chat.png" hash="0b6147abc4b325b6adc53101020214fd"/><file name="close.png" hash="453440e151c84241d7e96fbef87e3ce4"/><file name="close_hover.png" hash="504658759baedc0fae5461fc25d1258d"/></dir></dir><dir name="livechat"><file name="livechat.css" hash="f6446a97f9055a395492c3549ff33bac"/></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="css"><dir name="livechat"><file name="livechat.css" hash="23f6b4208a1828c95d53ca1424e69c1b"/></dir></dir><dir name="images"><dir name="livechat"><file name="ajax-loader.gif" hash="622c5fd994ddbd1dd7295e975a855394"/><file name="chat.png" hash="0b6147abc4b325b6adc53101020214fd"/><file name="livechat_icon_1_offline.gif" hash="6f29645dd823de420f87406adeefbd74"/><file name="livechat_icon_1_online.gif" hash="0fb04fadb0291cae8fb18f077e5cb287"/><file name="livechat_icon_2_offline.gif" hash="ccac8aead3064b6b573b36790c259a4f"/><file name="livechat_icon_2_online.gif" hash="ccffb2ccd56232a48a2886b987095398"/><file name="livechat_icon_3_offline.gif" hash="fee4fd690feaad68955e4d3f17ea61ba"/><file name="livechat_icon_3_online.gif" hash="7218d4f034d4eb13e3d5b0c309687c61"/><file name="livechat_icon_4_offline.gif" hash="17bc9d490e7c66482aaa813c4c542e93"/><file name="livechat_icon_4_online.gif" hash="dd529dbdf1ffc62c593fd6c4548dfd52"/><file name="Thumbs.db" hash="5d6de5587cb6edace482aa9ceb9d5363"/></dir></dir></dir><dir name="modern"><dir name="css"><dir name="livechat"><file name="livechat.css" hash="016c7ca657a01972c199cad16ca823e4"/></dir></dir><dir name="images"><dir name="livechat"><file name="ajax-loader.gif" hash="622c5fd994ddbd1dd7295e975a855394"/><file name="chat.png" hash="0b6147abc4b325b6adc53101020214fd"/><file name="livechat_icon_1_offline.gif" hash="6f29645dd823de420f87406adeefbd74"/><file name="livechat_icon_1_online.gif" hash="0fb04fadb0291cae8fb18f077e5cb287"/><file name="livechat_icon_2_offline.gif" hash="ccac8aead3064b6b573b36790c259a4f"/><file name="livechat_icon_2_online.gif" hash="ccffb2ccd56232a48a2886b987095398"/><file name="livechat_icon_3_offline.gif" hash="fee4fd690feaad68955e4d3f17ea61ba"/><file name="livechat_icon_3_online.gif" hash="7218d4f034d4eb13e3d5b0c309687c61"/><file name="livechat_icon_4_offline.gif" hash="17bc9d490e7c66482aaa813c4c542e93"/><file name="livechat_icon_4_online.gif" hash="dd529dbdf1ffc62c593fd6c4548dfd52"/><file name="Thumbs.db" hash="5d6de5587cb6edace482aa9ceb9d5363"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="livechat.xml" hash="a81edf1f74c9b7f96494ea96a33f9bdc"/></dir><dir name="template"><dir name="livechat"><file name="operator.phtml" hash="7013c5fe4dbd2cba0fe06336dba4c7a7"/><file name="session.phtml" hash="bed057fb47975a3a7a09187b82c76483"/><dir name="session"><file name="detail.phtml" hash="278dbb25de95e687d02b291a67261518"/></dir><dir name="widget"><file name="chatlive.phtml" hash="479a2c65d745884146b3dc60c9ddbafe"/><file name="sessionslive.phtml" hash="491f0101312196553ed2d98d32a85c60"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="livechat.xml" hash="7a80c2f0893481af99d2acabf14de075"/></dir><dir name="template"><dir name="livechat"><file name="chat.phtml" hash="9b1d6d6bfdee8d10093efa73143ba096"/></dir></dir></dir><dir name="modern"><dir name="layout"><file name="livechat.xml" hash="37e80dc38dd51095f830c1ca6349cbe5"/></dir><dir name="template"><dir name="livechat"><file name="chat.phtml" hash="9b1d6d6bfdee8d10093efa73143ba096"/></dir></dir></dir></dir></dir></target><target name="magecommunity"><dir name="Beck"><dir name="LiveChat"><dir name="Block"><file name="Operator.php" hash="359b81c070d1e6599fec6186adbb76cb"/><file name="Session.php" hash="4ef2dd4fbfc349b31acc707882860d9c"/><file name="Template.php" hash="a1ff5f6b84b77e051e11c9c9d127a042"/><dir name="Operator"><file name="Edit.php" hash="540a5246fcff5b1a8e821445e07ebd12"/><file name="List.php" hash="5b371abebd9beb9344831be3d27769f4"/><dir name="Edit"><file name="Form.php" hash="e97d951a63ed996560cb1526e23cb358"/></dir></dir><dir name="Session"><file name="Detail.php" hash="821d5c92c500cafa72ed50ba29eab352"/><file name="Grid.php" hash="b2116c31cbd297ed046296083bbf2fcf"/><dir name="Detail"><file name="Grid.php" hash="15786bd48ac663b9e9292d0d27fe8a30"/></dir></dir><dir name="Widget"><file name="Chat.php" hash="926f6fc13b7490d2f97035f1276078e7"/><file name="Sessions.php" hash="11a90eea0577b5f5481e29f5c2aad013"/><dir name="Grid"><dir name="Column"><dir name="Filter"><file name="Dispatched.php" hash="9052fa22cd9e07375d0de4f312c8bcf3"/><file name="Online.php" hash="1810c742fe22fd536798f2f76a11479c"/><file name="State.php" hash="c4367ea40d730b6b42e887fb0f57f758"/></dir><dir name="Renderer"><file name="Dispatched.php" hash="21e79c6d3662fd71737f1f6021509883"/><file name="Online.php" hash="e16ef426e2d329986774670c75188901"/><file name="State.php" hash="1fb897b1c06515b0376d42718995b0b7"/></dir></dir></dir></dir></dir><dir name="controllers"><file name="ChatController.php" hash="72fd486ae8c4a0ed093e484c42813168"/><file name="OperatorController.php" hash="68e72482a399d247bd8972032c0ea797"/><dir name="Operator"><file name="ListController.php" hash="f46f5c06cf8d91abd14a423d443d9ce9"/></dir><dir name="Session"><file name="ListController.php" hash="7f6a293b79f55722979310b2b24d457b"/><file name="LiveController.php" hash="ba8e5bf611cb4c039fcc61de31a57b36"/></dir></dir><dir name="etc"><file name="api.xml" hash="70f764b56f32f3aa5018a446979b8e7b"/><file name="config.xml" hash="5085a0914d8cca1b3f8c3d68faffb1e0"/><file name="system.xml" hash="345340da65dee7a1304ee9b794e48224"/></dir><dir name="Helper"><file name="Data.php" hash="db59b9ae525f7ae4357e7b29f211ddde"/></dir><dir name="Model"><file name="Api.php" hash="c07f805224fa3567e318641c5ea077aa"/><file name="Event.php" hash="0635e910e3ff53117c7c71ab80cea826"/><file name="Message.php" hash="14b9b7ffef2638e2178ed449945f2189"/><file name="Operator.php" hash="0a79de761f0f1b8b2cfb5318529c6c16"/><file name="Session.php" hash="38e464f28d70d3993d6797cd2a4ed77f"/><dir name="Archives"><file name="Message.php" hash="77405730511ada4e8f973189cc04a70a"/><file name="Session.php" hash="e7e342df2a427a31c6d0392ae230f084"/></dir><dir name="Mysql4"><file name="Message.php" hash="15f54ff4ac2e42d499a465ba02f54545"/><file name="Operator.php" hash="183d4556a4adb362080db8b29b3d363b"/><file name="Session.php" hash="23470233413431cb15fd64d6f6a9e57a"/><dir name="Archives"><file name="Message.php" hash="08a24b0294485713fa948a6bdc321d95"/><file name="Session.php" hash="1e9179810d16098a15e318aec9fecb7d"/><dir name="Message"><file name="Collection.php" hash="40081589afffca0b6045508b3d41dbc1"/></dir><dir name="Session"><file name="Collection.php" hash="2f25d488fde87349bfa0e39faa7b6a11"/></dir></dir><dir name="Message"><file name="Collection.php" hash="bb9831d35976036acecaf600ba077aed"/></dir><dir name="Operator"><file name="Collection.php" hash="1f85ba68d6c707589b7650fc3fbf1929"/></dir><dir name="Session"><file name="Collection.php" hash="4409f4ba36832a8c0ff8e186b4945de8"/></dir></dir><dir name="Session"><file name="List.php" hash="c97c0507a2ead10e3df948a985f94aae"/></dir><dir name="Source"><file name="Images.php" hash="a78214110d992b5f1267360fac8ffb10"/><file name="Online.php" hash="16a3933b4c4801ce20c714635ea52a47"/><file name="SessionCreation.php" hash="bf20fc0949be23a892b5744e9a68ed4b"/></dir></dir><dir name="sql"><dir name="livechat_setup"><file name="mysql4-install-1.0.0.php" hash="5a967b18d8bc56b345cd3870d1c9ebb7"/><file name="mysql4-upgrade-1.0.0-1.2.4.php" hash="852891c2299a597fe671ca3e06101f82"/><file name="mysql4-upgrade-1.2.4-1.2.9.php" hash="573b71d02e8690e8c4903cf0447a928e"/><file name="mysql4-upgrade-1.2.9-1.3.0.php" hash="d487ca45bb75f68b8f813d4bd3c04ca7"/><file name="mysql4-upgrade-1.3.0-1.3.5.php" hash="aeacf36dc4f8c9df0dcae5dc2c1620ab"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="fr_FR"><file name="Beck_LiveChat.csv" hash="a4a7a5f9f3642db18809a592eda59dcf"/></dir><dir name="nl_NL"><file name="Beck_LiveChat.csv" hash="8e7fdb53f6bd85f5a5b5a3a2bb0920e7"/></dir></target><target name="mage"><dir name="js"><dir name="livechat"><file name="js.js" hash="e2e673b8f54faa02279c669e5db595fa"/></dir></dir></target><target name="mageetc"><dir name="modules"><file name="ZBeck_LiveChat.xml" hash="8fce760347a22bda384dfb9a8f3404cd"/></dir></target></contents>
|
19 |
<compatible/>
|
20 |
<dependencies/>
|
21 |
</package>
|
skin/adminhtml/default/default/livechat/livechat.css
CHANGED
@@ -1,3 +1,5 @@
|
|
|
|
|
|
1 |
.livechat-box
|
2 |
{
|
3 |
margin-bottom: 1.3em;
|
1 |
+
.head-livechat { background-image:url(../images/livechat/chat.png); }
|
2 |
+
|
3 |
.livechat-box
|
4 |
{
|
5 |
margin-bottom: 1.3em;
|