/**
     * @param array $articleConditions
     * @param array $fieldArray
     * @throws XMLImportDBException
     */
    private static function buildTranslationsRequest( $articleConditions, $fieldArray )
    {
        $translationsRequests = self::filterFields( 'article', 'translations_request', $fieldArray );
        $publisherFolderID = $fieldArray['publisher']->calculatedValue;
        $publisherFolderPath = self::$fileHandler->getPublisherFolderNameFromId($publisherFolderID);
        $sql = "SELECT `master_language`, `languages` FROM `folder` WHERE `name` = '%s'";
        $folderLanguages = XMLImportDB::arrayQuery( sprintf($sql, $publisherFolderPath) );
        $allowedLanguages = array();
        foreach (json_decode($folderLanguages[0]['languages'], true) as $language)
        {
            if (!$language['automatic_request'])
            {
                $allowedLanguages[] = $language['country'];
            }
        }

        $date = new \DateTime();
        $date = $date->format('Y-m-d H:m:i');
        $sql = "INSERT INTO translations_request SET `content_id` = %s, `locale` = '%s', `created_at` = '$date', `already_sent` = 0"
            .  " ON DUPLICATE KEY UPDATE content_id = content_id, already_sent = 3";
        foreach($translationsRequests["target_language"] as $translationsRequest)
        {
            $locale = $translationsRequest->fieldNode->nodeValue;
            if (in_array($locale, $allowedLanguages) && $locale !== $folderLanguages[0]['master_language'])
            {
                $result = XMLImportDB::query( sprintf($sql, $articleConditions['content_id'], $translationsRequest->fieldNode->nodeValue) );

                if ( !$result )
                    throw new XMLImportDBException( 'Unsetable translations request' );
            }
        }
    }
 /**
  * Main method called to configure/initialize handler.
  * Here you may read your data to import
  * @return void
  */
 public function initialize()
 {
     $this->fileHandler->initialize();
 }
    /**
     * @param eZINI $importINI
     * @param string $ftpFolder
     * @param bool $modeUAT
     * @return XMLImportFileHandler
     */
    public static function instance ( $importINI, $ftpFolder, $modeUAT )
    {
        if ( !isset(self::$_instance) )
            self::$_instance = new self($importINI, $ftpFolder, $modeUAT);

        return self::$_instance;
    }