uld be called * sockets.so on Unix platforms whereas it is called * php_sockets.dll on the Windows platform. * * The directory where the extension is loaded from depends on your * platform: * * Windows - If not explicitly set in the php.ini, the extension is * loaded from C:\php5\ by default. * * Unix - If not explicitly set in the php.ini, the default extension * directory depends on * * * * whether PHP has been built with --enable-debug * or not * * * * * whether PHP has been built with (experimental) ZTS (Zend Thread Safety) * support or not * * * * * the current internal ZEND_MODULE_API_NO (Zend * internal module API number, which is basically the date on which a * major module API change happened, e.g. 20010901) * * * * Taking into account the above, the directory then defaults to * <install-dir>/lib/php/extensions/ <debug-or-not>-<zts-or-not>-ZEND_MODULE_API_NO, * e.g. * /usr/local/php/lib/php/extensions/debug-non-zts-20010901 * or * /usr/local/php/lib/php/extensions/no-debug-zts-20010901. * @throws InfoException * */߇#@`ã¶ß‡#@ R¸ß‡#@¨p¸ß‡#@€¸ß‡#@`ã¶ß‡#@€¸ß‡#@àp¸ß‡# /** * Opens or reuses a connection to a MySQL server. * * @param string $server The MySQL server. It can also include a port number. e.g. * "hostname:port" or a path to a local socket e.g. ":/path/to/socket" for * the localhost. * * If the PHP directive * mysql.default_host is undefined (default), then the default * value is 'localhost:3306'. In SQL safe mode, this parameter is ignored * and value 'localhost:3306' is always used. * @param string $username The username. Default value is defined by mysql.default_user. In * SQL safe mode, this parameter is ignored and the name of the user that * owns the server process is used. * @param string $password The password. Default value is defined by mysql.default_password. In * SQL safe mode, this parameter is ignored and empty password is used. * @param bool $new_link If a second call is made to mysql_connect * with the same arguments, no new link will be established, but * instead, the link identifier of the already opened link will be * returned. The new_link parameter modifies this * behavior and makes mysql_connect always open * a new link, even if mysql_connect was called * before with the same parameters. * In SQL safe mode, this parameter is ignored. * @param int $client_flags The client_flags parameter can be a combination * of the following constants: * 128 (enable LOAD DATA LOCAL handling), * MYSQL_CLIENT_SSL, * MYSQL_CLIENT_COMPRESS, * MYSQL_CLIENT_IGNORE_SPACE or * MYSQL_CLIENT_INTERACTIVE. * Read the section about for further information. * In SQL safe mode, this parameter is ignored. * @return resource Returns a MySQL link identifier on success. * @throws MysqlException * */#@`ã¶ß‡#@ “¸ß‡#@(t¸ß‡ø/** * Installs a callback which decides whether a statement is cached. * * There are several ways of hinting PELC/mysqlnd_qc to cache a query. * By default, PECL/mysqlnd_qc attempts to cache a if caching of all statements * is enabled or the query string begins with a certain SQL hint. * The plugin internally calls a function named is_select() * to find out. This internal function can be replaced with a user-defined callback. * Then, the user-defined callback is responsible to decide whether the plugin * attempts to cache a statement. Because the internal function is replaced * with the callback, the callback gains full control. The callback is free * to ignore the configuration setting mysqlnd_qc.cache_by_default * and SQL hints. * * The callback is invoked for every statement inspected by the plugin. * It is given the statements string as a parameter. The callback returns * FALSE if the statement shall not be cached. It returns TRUE to * make the plugin attempt to cage */ protected function storeFiles(GatewayInterface $gateway, QueuedMessage $queuedMessage, Message $message, $language) { if (!($gateway instanceof MessageDraftFactoryInterface)) { return; } $draft = $gateway->createDraft($message, $queuedMessage->getTokens(), $language); // Return if the draft is not an e-mail draft if (!($draft instanceof EmailMessageDraft)) { return; } $attachments = $draft->getAttachments(); // Return if there are no attachments if (count($attachments) === 0) { return; } $folder = new Folder($this->getTemporaryFolderPath($queuedMessage->id)); // Copy the attachments to the temporary folder foreach ($attachments as $index => $originalPath) { $originalPath = '/' === $originalPath[0] ? $originalPath : str_replace(TL_ROOT . '/', '', $originalPath); $clonePath = TL_ROOT . '/' . $folder->path . '/' . basename($originalPath); // Update the tokens if copy was successful try { (new Filesystem())->copy($originalPath, $clonePath); $attachments[$index] = $clonePath; } catch (\Exception $exception) { // noop } } $queuedMessage->setAttachments($attachments); $queuedMessage->save(); } /** * Get the temporary folder path * * @param int $messageId * * @return string */ protected function getTemporaryFolderPath($messageId) { return 'var/notification_center/' . $messageId; } } An Error Occurred: Internal Server Error

Oops! An Error Occurred

The server returned a "500 Internal Server Error".

Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.