/** * move the map feature into an active layer using * a icon set map to choose the layer id. * * @param int $id unique id for a map feature */ function unarchive_map_feature($id) { $prefix = 'components/com_geolive/users_files/user_files_983/Uploads/'; // $icons = array('[ImAgE]_JYp_[G]_rP7_SHq.png', 'ivy_[ImAgE]_lwU_[G]_VVF.png', 'tEk_[G]_[ImAgE]_L7_xIy.png', '[G]_aAJ_hLP_RDn_[ImAgE].png'); $layers = array(1, 2, 3, 4); $archive = array('[G]_[ImAgE]_gZf_JiS_E65.png', '[G]_LGt_eGZ_kDt_[ImAgE].png', 'AQc_zn7_[G]_[ImAgE]_sTC.png', '0o6_Je3_[ImAgE]_[G]_PMR.png'); $iconToLayerMap = array_combine($icons, $layers); $archiveToLayerMap = array_combine($archive, $layers); $archiveToIconMap = array_combine($archive, $icons); Core::Get('Maps'); $marker = MapController::LoadMapItem($id); $iconUrl = $marker->getIcon(); $icon = substr($iconUrl, strrpos($iconUrl, '/') + 1); $layer = 6; $newIcon = $icon; if (key_exists($icon, $iconToLayerMap)) { $layer = $iconToLayerMap[$icon]; } if (key_exists($icon, $archiveToLayerMap)) { $layer = $archiveToLayerMap[$icon]; $newIcon = $archiveToIconMap[$icon]; } $marker->setLayerId($layer); $marker->setIcon($prefix . $newIcon); MapController::StoreMapFeature($marker); file_put_contents(__DIR__ . DS . '.custom.log', 'unarchive (' . $id . ')' . $icon . " -> " . $newIcon . ', layer -> ' . $layer . "\n\n", FILE_APPEND); }