function associateClusters($req) { global $CONFIG; set_time_limit(0); //this avoids timeouts require_once $CONFIG->path . "mod/profile_manager/views/default/profile_manager/members/config.php"; require_once $CONFIG->path . "mod/profile_manager/views/default/profile_manager/members/classes.php"; $outputfile = $CONFIG->path . "mod/profile_manager/views/default/profile_manager/members/output.log"; file_put_contents($outputfile, "Starting association clusters (this might require some time)...\n", FILE_APPEND); $clusters_metadata = unserialize(file_get_contents($IOdir . "clusters_metadata")); $clusters_uses = unserialize(file_get_contents($IOdir . "clusters_uses")); $clusters_tags = unserialize(file_get_contents($IOdir . "clusters_tags")); $clusters_replinks = unserialize(file_get_contents($IOdir . "clusters_replinks")); reset_association($clusters_metadata); reset_association($clusters_uses); reset_association($clusters_tags); reset_association($clusters_replinks); //associate metadata clusters to others associate($clusters_metadata, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_metadata, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_metadata, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_metadata, $clusters_replinks, "replinks", $minimum_association_threshold); associate($clusters_uses, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_uses, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_uses, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_uses, $clusters_replinks, "replinks", $minimum_association_threshold); associate($clusters_tags, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_tags, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_tags, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_tags, $clusters_replinks, "replinks", $minimum_association_threshold); associate($clusters_replinks, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_replinks, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_replinks, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_replinks, $clusters_replinks, "replinks", $minimum_association_threshold); file_put_contents($IOdir . 'clusters_metadata', serialize($clusters_metadata)); if (PHP_OS == "Linux" && posix_getuid() == fileowner($IOdir . 'clusters_metadata')) { chmod($IOdir . 'clusters_metadata', 0666); } //set rw permissions for everybody for this file file_put_contents($IOdir . 'clusters_uses', serialize($clusters_uses)); if (PHP_OS == "Linux" && posix_getuid() == fileowner($IOdir . 'clusters_uses')) { chmod($IOdir . 'clusters_uses', 0666); } //set rw permissions for everybody for this file file_put_contents($IOdir . 'clusters_tags', serialize($clusters_tags)); if (PHP_OS == "Linux" && posix_getuid() == fileowner($IOdir . 'clusters_tags')) { chmod($IOdir . 'clusters_tags', 0666); } //set rw permissions for everybody for this file file_put_contents($IOdir . 'clusters_replinks', serialize($clusters_replinks)); if (PHP_OS == "Linux" && posix_getuid() == fileowner($IOdir . 'clusters_replinks')) { chmod($IOdir . 'clusters_replinks', 0666); } //set rw permissions for everybody for this file file_put_contents($outputfile, "\nClusters associated\n", FILE_APPEND); file_put_contents($outputfile, "\nClassification finished\n\n", FILE_APPEND); return "OK"; }
function associate_clusters($array_clusters) { global $minimum_association_threshold; $clusters_metadata = $array_clusters["metadata"]; $clusters_uses = $array_clusters["uses"]; $clusters_tags = $array_clusters["tags"]; $clusters_replinks = $array_clusters["replinks"]; reset_association($clusters_metadata); reset_association($clusters_uses); reset_association($clusters_tags); reset_association($clusters_replinks); //associate metadata clusters to others associate($clusters_metadata, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_metadata, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_metadata, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_metadata, $clusters_replinks, "replinks", $minimum_association_threshold); associate($clusters_uses, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_uses, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_uses, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_uses, $clusters_replinks, "replinks", $minimum_association_threshold); associate($clusters_tags, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_tags, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_tags, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_tags, $clusters_replinks, "replinks", $minimum_association_threshold); associate($clusters_replinks, $clusters_metadata, "metadata", $minimum_association_threshold); associate($clusters_replinks, $clusters_uses, "uses", $minimum_association_threshold); associate($clusters_replinks, $clusters_tags, "tags", $minimum_association_threshold); associate($clusters_replinks, $clusters_replinks, "replinks", $minimum_association_threshold); $array_clusters["metadata"] = $clusters_metadata; unset($clusters_metadata); $array_clusters["uses"] = $clusters_uses; unset($clusters_uses); $array_clusters["tags"] = $clusters_tags; unset($clusters_tags); $array_clusters["replinks"] = $clusters_replinks; unset($clusters_replinks); return $array_clusters; }