/**
  * @param $remoteID
  * @internal param int $nodeID
  * @return bool
  */
 protected function isAlreadyInUserSelection( $remoteID )
 {
     $clusterIdentifier = ClusterTool::clusterIdentifier();
     return MMSelections::isAlreadyInUserSelection( $remoteID, $clusterIdentifier );
 }
    protected function refreshAndGetFeedback()
    {
        $remoteId          = ( isset( $_POST['remoteID'] ) && filter_var($_POST['remoteID'], FILTER_VALIDATE_REGEXP, SecurityTool::$REMOTEID_REGEXP) ) ? $_POST['remoteID'] : null;
        $clusterIdentifier = ( isset( $_POST['cluster_identifier'] ) && filter_var($_POST['cluster_identifier'], FILTER_VALIDATE_REGEXP, SecurityTool::$CLUSTER_IDENTIFIER_REGEXP) ) ? $_POST['cluster_identifier'] : null;

        if( !$clusterIdentifier || !$remoteId || !self::user() )
        {
            return 'Unknown Error !';
        }

        $user = self::user();

        if ( ($user instanceof MMUsers ) )
        {
            $remoteList = $user->getPreference('ratings');
            if (!is_array($remoteList))
            {
                $remoteList = array();
            }

            $results['userRatings']       = $this->getUserRating( $remoteId, self::user(), $clusterIdentifier);
            $results['in_user_selection'] = MMSelections::isAlreadyInUserSelection( $remoteId, $clusterIdentifier );
        }
        else
        {
            // This case is supposed not to happen ! We log a trace for further investigations
            $remoteList = array();
            $results['userRatings'] = NULL;
            $results['in_user_selection'] = false;

            eZLog::write( var_export($_ENV, true), 'get_preference.log');
            eZLog::write( var_export(apache_request_headers(), true), 'get_preference.log');
        }

        if (!in_array($remoteId, $remoteList))
        {
            $this->addView($remoteId, $remoteList, $clusterIdentifier);
        }

        $results['nbViews'] = SolrSafeOperatorHelper::getViewCounter( $remoteId, $clusterIdentifier );
        $results['ratings'] = SolrSafeOperatorHelper::getRatings($remoteId, $clusterIdentifier);

        return $results;
    }