Code Duplication    Length = 19-19 lines in 3 locations

app/models/GeoFixer.php 3 locations

@@ 49-67 (lines=19) @@
46
     *
47
     * @return bool|mixed
48
     */
49
    public function findFiasRegion($region)
50
    {
51
        $this->code_name = AbstractDatabaseQuery::KLADR_CODE;
52
53
        $regions = new RegionsDatabaseQuery();
54
        $regions = $regions->getRegions();
55
56
        if (is_integer($this->first_letters)) {
57
            $regions = $regions->firstLetters(substr($region, 0, $this->first_letters));
58
        }
59
60
        $regions = $regions->findAll();
61
62
        array_map(array($this, 'geoDataHandler'), $regions);
63
64
        $result = $this->findSimilarWord($region, $this->geo_titles);
65
66
        return $result ? $this->geo_with_ids[$result] : false;
67
    }
68
69
    /**
70
     * @param $word
@@ 101-119 (lines=19) @@
98
     *
99
     * @return bool|mixed
100
     */
101
    public function findFiasSettlements($city, $region_code)
102
    {
103
        $this->code_name = AbstractDatabaseQuery::FIAS_CODE;
104
105
        $settlements = new SettlementsDatabaseQuery();
106
        $settlements = $settlements->getSettlements()->regionCode($region_code)->addressLevel();
107
108
        if (is_integer($this->first_letters)) {
109
            $settlements = $settlements->firstLetters(substr($city, 0, $this->first_letters));
110
        }
111
112
        $settlements = $settlements->findAll();
113
114
        array_map(array($this, 'geoDataHandler'), $settlements);
115
116
        $result = $this->findSimilarWord($city, $this->geo_titles);
117
118
        return $result ? $this->geo_with_ids[$result] : false;
119
    }
120
121
    /**
122
     * @param $city
@@ 160-178 (lines=19) @@
157
     *
158
     * @return bool|mixed
159
     */
160
    public function findFiasStreets($street, $city_id)
161
    {
162
        $this->code_name = AbstractDatabaseQuery::FIAS_CODE;
163
164
        $streets = new StreetsDatabaseQuery();
165
        $streets = $streets->getStreets()->parentId($city_id)->addressLevel();
166
167
        if (is_integer($this->first_letters)) {
168
            $streets = $streets->firstLetters(substr($street, 0, $this->first_letters));
169
        }
170
171
        $streets = $streets->findAll();
172
173
        array_map(array($this, 'geoDataHandler'), $streets);
174
175
        $result = $this->findSimilarWord($street, $this->geo_titles);
176
177
        return $result ? $this->geo_with_ids[$result] : false;
178
    }
179
180
    /**
181
     * @param $street