params= new JRegistry(); $this->params->loadString($plugin->params, 'JSON'); $this->_cacheEnabled = $this->params->get('cache_enabled'); if ($this->_cacheEnabled === null) $this->_cacheEnabled == 1; $this->_autoflush = $this->params->get('autoFlush'); if ($this->_autoflush === null) $this->_autoflush = 1; $this->_autoflush3rdParty = $this->params->get('autoFlush-ThirdParty'); if ($this->_autoflush3rdParty === null) $this->_autoflush3rdParty = 1; $this->_autoflushClientSide = $this->params->get('autoFlush-ClientSide'); if ($this->_autoflushClientSide === null) $this->_autoflushClientSide = 0; } /** * Heartbeat cache checking function. Will also monitor $_GET for the jSGCache parameter * (pressing the purge cache button in admin) * * * @access public * @return null */ public function onAfterInitialise() { if (!$this->_cacheEnabled || $this->_isBlacklisted($this->_applicationPath)) { JResponse::setHeader('X-Cache-Enabled','False',true); return; } if ($this->_cacheEnabled) { JResponse::setHeader('X-Cache-Enabled','True',true); } //Init the application url $this->_applicationPath = str_replace(array('administrator/index.php','index.php'),'',str_replace($_SERVER['DOCUMENT_ROOT'],'',$_SERVER['SCRIPT_FILENAME'])); //Check for any admin action and proceed to flushMonitor and 3rd party plugins if ( isset($_POST['task']) || isset($_GET['task']) || isset($_GET['cart_virtuemart_product_id'])) { $this->_flushMonitor(); if ($this->_autoflush3rdParty) $this->_monitorThirdPartyPlugins(); } //Check if we have a logged in user and enable cache bypass cookie 'task' => string 'user.login' $user = JFactory::getUser(); if (!$user->guest || (isset($_POST['task']) && preg_match('/login/i', $_POST['task']))) { $_POST[JSession::getFormToken()] = 1; //Force the correct token, since the login box on the page is cached with the 1st visitors' token //Enable the cache bypass for logged users by setting a cache bypass cookie setcookie('jSGCacheBypass',1,time() + 6000,'/'); } if ($user->guest || (isset($_POST['task']) && $_POST['task'] == 'user.logout')) { //Remove the bypass cookie if not a logged user if (isset($_COOKIE['jSGCacheBypass'])) setcookie('jSGCacheBypass',0, time() - 3600,'/'); } // Handle purge button press when get has jSGCache=purge, but only in admin with a logged user if(isset($_GET['jSGCache']) && $_GET['jSGCache'] == 'purge' && JFactory::getApplication()->isAdmin() && !$user->guest ) $this->_purgeCache(true); } /** * Admin panel icon display * * @access public * @param string $context * @return array */ public function onGetIcons( $context ) { return array(array( 'link'=>'?jSGCache=purge', 'image'=>'header/icon-48-purge.png', 'text'=>JText::_('Purge jSGCache'), 'id'=>'jSGCache' )); } /** * Calls the cache server to purge the cache * * @access public * @param string|bool $message Message to be displayed if purge is successful. If this param is false no output would be done * @return null */ private function _purgeCache( $message = true ) { $purgeRequest = $this->_applicationPath . '(.*)'; // Check if caching server is varnish or nginx. $sgcache_ip = '/etc/sgcache_ip'; $hostname = $_SERVER['SERVER_ADDR']; $purge_method = "PURGE"; if (file_exists($sgcache_ip)) { $hostname = trim( file_get_contents( $sgcache_ip, true ) ); $purge_method = "BAN"; } $cacheServerSocket = fsockopen($hostname, 80, $errno, $errstr, 2); if(!$cacheServerSocket) { JError::raise(E_ERROR,500,JText::_('Connection to cache server failed!')); JError::raise(E_ERROR,500,JText::_($errstr ($errno))); return; } $request = "$purge_method {$purgeRequest} HTTP/1.0\r\nHost: {$_SERVER['SERVER_NAME']}\r\nConnection: Close\r\n\r\n"; if (preg_match('/^www\./',$_SERVER['SERVER_NAME'])) { $domain_no_www = preg_replace('/^www\./', '', $_SERVER['SERVER_NAME']); $request2 = "$purge_method {$purgeRequest} HTTP/1.0\r\nHost: {$domain_no_www}\r\nConnection: Close\r\n\r\n"; } else $request2 = "$purge_method {$purgeRequest} HTTP/1.0\r\nHost: www.{$_SERVER['SERVER_NAME']}\r\nConnection: Close\r\n\r\n"; fwrite($cacheServerSocket, $request); $response = fgets($cacheServerSocket); fclose($cacheServerSocket); $cacheServerSocket = fsockopen($hostname, 80, $errno, $errstr, 2); fwrite($cacheServerSocket, $request2); fclose($cacheServerSocket); if($message !== false) { if(preg_match('/200/',$response)) { if ($message === true) JFactory::getApplication()->enqueueMessage(JText::_('SG Cache Successfully Purged!')); else JFactory::getApplication()->enqueueMessage(JText::_( $message )); } else { JError::raise(E_NOTICE,501, JText::_('SG Cache: Purge was not successful!')); JError::raise(E_NOTICE,501, jText::_('Error: ' . $response)); } } } /** * Check if url is in caching blacklist * * @param string $applicationPath * * @return bool */ private function _isBlacklisted($applicationPath) { $blacklistArray = explode("\n",$this->params->get('blacklist')); $blacklistRegexArray = array(); $indexIsBlacklisted = false; foreach($blacklistArray as $key=>$row) { $row = trim($row); if ($row != '/' && $quoted = preg_quote($row,'/')) $blacklistRegexArray[$key] = $quoted; if ($row == '/') $indexIsBlacklisted = true; } if ($indexIsBlacklisted && $_SERVER['REQUEST_URI'] == $applicationPath) return true; if (empty($blacklistRegexArray)) return false; $blacklistRegex = '/('.implode('|',$blacklistRegexArray) . ')/i'; return preg_match($blacklistRegex, $_SERVER['REQUEST_URI']); } /** * 3rd party plugin monitor * * @access private * @return null */ private function _monitorThirdPartyPlugins() { // Kunena & K2 if ($this->params->get('autoFlush-ThirdParty') == 1 && isset($_POST['option']) && ($_POST['option']=='com_k2' || $_POST['option' ]== 'com_kunena')) { $this->_purgeCache(false); } // VirtueMart if ( (isset($_POST['option']) && $_POST['option'] == 'com_virtuemart') || ( isset($_GET['option']) && $_GET['option'] == 'com_virtuemart' ) || isset($_GET['cart_virtuemart_product_id']) ) { if($this->params->get('autoFlush-ThirdParty') == 1) $this->_purgeCache(false); } } /** * Action monitor * * @access private * @return null */ private function _flushMonitor() { $user = JFactory::getUser(); if ((!JFactory::getApplication()->isAdmin() && !$this->_autoflushClientSide) || $user->guest) return; $autoflush = $this->params->get('autoFlush'); if ($autoflush === null) $autoflush = 1; if (isset($_POST['task']) && $_POST['task'] && !in_array($_POST['task'],self::$_ignoreTasks) && $autoflush == 1) $this->_purgeCache(false); } } ESET NOD32 Antivirus 5 1U/1Y + USB 8GB

ΠΡΟΓΡΑΜΜΑΤΑ ΠΡΟΣΤΑΣΙΑΣ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

ESET NOD32 Antivirus 5 1U/1Y + USB 8GB

nod32a5-2-1_1156930573
ESET NOD32 Antivirus 5 1U/1Y + USB 8GB   Τύπος προστασίας: AntivirusΧρήστες: 1Χρόνια: 1Μάρκα: ESETΣυσκευασία: Card Παραμείνετε σε Απόσταση Ασφαλείας από τις Απειλές του InternetΑπολαύστε τη ...Περισσότερα
24,90 € ανά τεμάχιο


+
  • Περιγραφή
  • Σχόλια προϊόντος
  • Βαθμολογήστε και σχολιάστε το προϊόν

ESET NOD32 Antivirus 5 1U/1Y + USB 8GB

 

Τύπος προστασίας: Antivirus
Χρήστες: 1
Χρόνια: 1
Μάρκα: ESET
Συσκευασία: Card

Παραμείνετε σε Απόσταση Ασφαλείας από τις Απειλές του Internet
Απολαύστε την δοκιμασμένη τεχνολογία NOD32, τη λύση που εξαλείφει όλων των ειδών των απειλών του Internet. Η βασισμένη στο cloud σάρωση, παρέχει υψηλό επίπεδο προστασίας, αυξάνοντας την ταχύτητα της σάρωσης διασφαλίζοντας ότι το σύστημά σας τρέχει στη μέγιστη δυνατή απόδοσή του.
Απολαύστε την Πλήρη Ισχύ του Υπολογιστή σας
Αφήνοντας περισσότερη ισχύ για τα προγράμματα που χρησιμοποιείτε καθημερινά, το ESET σας αφήνει να διασκεδάζετε και να εργάζεστε χωρίς καθυστερήσεις. Παραμείνετε περισσότερο χρόνο online χωρίς τη σύνδεση με το ρεύμα χάρη στη λειτουργία εξοικονόμησης μπαταρίας και απολαύστε το παιχνίδι χωρίς ενοχλητικές ειδοποιήσεις.
Εγκαταστήστε το και Ξεχάστε το ή Ρυθμίστε το Όπως Θέλετε
Παρέχοντας εξ’ αρχής κορυφαία προστασία, η συγκεκριμένη λύση σας επιτρέπει να αντιμετωπίζετε τα ζητήματα προστασίας απ’ ευθείας από την κεντρική οθόνη. Ανακαλύψτε γρήγορα τις ρυθμίσεις που χρειάζεστε και ρυθμίστε το προφίλ της προστασίας που θέλετε με περισσότερες από 150 διαθέσιμες επιλογές.

 
 
Η φωτογραφία είναι ενδεικτική και ενδεχομένως να διαφέρει από το τελικό προϊόν
 
Λίστα με όλα τα σχόλια:
Δεν υπάρχουν σχόλια προς το παρόν.
Βαθμολογία:

Παρακαλούμε κάντε κάποια πρόταση για το προϊόν :

Όνομα χρήστη:
E-mail: