@@ -104,7 +104,7 @@ public function refreshMailbox($server_host, $server_username, $server_password,
104104 foreach ($ emailCollection as $ id => $ messageNumber ) {
105105 $ output ->writeln ("\n <comment> Converting email </comment><info> $ counter</info><comment> out of </comment><info> $ emailCount</info><comment>.</comment> " );
106106 $ message = imap_fetchbody ($ imap , $ messageNumber , "" );
107- $ this ->pushMessage ($ message , $ useSecureConnection );
107+ $ this ->pushMessage ($ message , $ useSecureConnection, $ output );
108108 if (true == $ mailbox ['deleted ' ]) {
109109 imap_delete ($ imap , $ messageNumber );
110110 }
@@ -122,7 +122,7 @@ public function refreshMailbox($server_host, $server_username, $server_password,
122122 return ;
123123 }
124124
125- public function pushMessage ($ message , bool $ secure = false )
125+ public function pushMessage ($ message , bool $ secure = false , $ output )
126126 {
127127 $ router = $ this ->container ->get ('router ' );
128128 $ router ->getContext ()->setHost ($ this ->container ->getParameter ('uvdesk.site_url ' ));
@@ -138,9 +138,21 @@ public function pushMessage($message, bool $secure = false)
138138 curl_setopt ($ curlHandler , CURLOPT_POSTFIELDS , http_build_query (['email ' => $ message ]));
139139
140140 $ curlResponse = curl_exec ($ curlHandler );
141+ if ($ curlResponse != 200 ) {
142+ $ curlResponse = $ this ->getTagValue ($ curlResponse , 'title ' );
143+ $ output ->writeln ("\n <comment> Error -> </comment><info> $ curlResponse</info><comment></comment> " );
144+ exit ();
145+ }
141146 curl_close ($ curlHandler );
142147 }
143148
149+ function getTagValue ($ string , $ tag )
150+ {
151+ $ pattern = "/< {$ tag }>(.*?)<\/ {$ tag }>/s " ;
152+ preg_match ($ pattern , $ string , $ matches );
153+ return isset ($ matches [1 ]) ? $ matches [1 ] : '' ;
154+ }
155+
144156 protected function isSecureConnectionAvailable ()
145157 {
146158 $ headers = [CURLOPT_NOBODY => true , CURLOPT_HEADER => false ];
0 commit comments