protected function validateCSVRows($object, $attribute, $file)
    {
        //decrement the countryColumnNumber by 1 as we are starting with 0
        $this->countryColumnNumber--;

        //put the country synonyms in an array (for each synonym one entry)
        $countrySynonyms = Yii::app()->params['countrySynonyms'];
        $allowedCountrySynonyms = array();
        foreach($countrySynonyms as $countrySynonymsRow) {
            foreach(explode(',',$countrySynonymsRow) as $synonym) {
                $allowedCountrySynonyms[] = $synonym;
            }
        }

        //ACTUAL VALIDATION STARTS HERE

        $file = fopen($file->getTempName(), "r");
        $rowNumber = 1;

        while (!feof($file)) {
            $line = fgets($file);
            if($rowNumber == 1) {
                 //jump through the first line (the header)
                $rowNumber++;
                continue;
            } else {
                //right number of columns defined?
                $separatorCount = substr_count($line,$this->separator);
                if($separatorCount != $this->columnCount) {
                    $this->addError($object, $attribute, 'Wrong separator count in row '.$rowNumber.'. '.$separatorCount.' "'.$this->separator.'" found. Expected: '.$this->columnCount.'!');
                    return false; //jump out of here as the rest would not work anyway
                }
                //check wheter the country column is a valid value (one of the synonyms used by the system)
                $line = $this->explodeToColumns($line);
                $countryValue = trim(strtolower($line[$this->countryColumnNumber]));
                if($countryValue != '' && !in_array($countryValue,$allowedCountrySynonyms)) {
                    $this->addError($object, $attribute, 'Unknown country value "'.$countryValue.'" in row '.$rowNumber.'!');
                }
            }
            $rowNumber++;
        }
        fclose($file);
    }