/src/php/subsets/create.php
PHP | 84 lines | 72 code | 3 blank | 9 comment | 1 complexity | 9e3579fa98be6eae7d2686a986455d1d MD5 | raw file
Possible License(s): Apache-2.0, LGPL-3.0, BSD-3-Clause
- <?php
- /* Copyright 2012 Aditi Muralidharan. See the file "LICENSE" for the full license governing this code. */
-
- /*************************************************************************
- create.php
- Create a new subset
- *************************************************************************/
- function create($username, $name, $parent, $type){
- $sql = "INSERT INTO working_set
- (username, name, parent, date, type)
- VALUES ('".$username."',
- '".$name."',
- ".$parent.",
- NOW(),
- '".$type."');";
- $result = mysql_query($sql) or die("<b>A fatal MySQL error occured</b>.
- <br/> Query: " . $sql . "
- <br/> Error: (" . mysql_errno() . ") " . mysql_error());
- $id = mysql_insert_id();
- $sql = "SELECT * from working_set WHERE id = $id;";
- $result = mysql_query($sql);
- $row = mysql_fetch_assoc($result);
- $date = $row['date'];
- $property_name = $type+"_set";
- // update the main metadata count for this set
- updateMainMetadataCounts($id, $type."_set");
- return array("status"=>"ok", "id"=>$id, "date"=>$date);
- }
- function delete($id){
- $parents = getAllParentIDs($id);
- $children = getAllChildIDs($id);
- $type = getCollectionType($id);
- $sql = "DELETE FROM working_set WHERE id = ".$id.";";
- $result = mysql_query($sql) or die("<b>A fatal MySQL error occured</b>.
- create.php l. 30 <br/> Query: " . $sql . "
- <br/> Error: (" . mysql_errno() . ") " . mysql_error());
- $sql = "DELETE FROM working_set_contents WHERE working_set_id = ".$id.";";
- $result = mysql_query($sql) or die("<b>A fatal MySQL error occured</b>.
- create.php l. 34 <br/> Query: " . $sql . "
- <br/> Error: (" . mysql_errno() . ") " . mysql_error());
- //recursively delete children
- foreach($children as $child){
- delete($child);
- }
- include_once "../document/get-metadata.php";
- resetSentenceFilters();
- $sql = "INSERT IGNORE into filtered_sent_ids (id) select unit_id
- FROM metadata
- WHERE value = '$id'
- AND (property_name = 'sentence_set'
- OR property_name = 'word_set'
- OR property_name = 'document_set');";
- $result = mysql_query($sql) or die("<b>A fatal MySQL error occured
- create.php l. 50</b>.
- <br/> Query: " . $sql . "
- <br/> Error: (" . mysql_errno() . ") " . mysql_error());
- $to_remove = $parents;
- array_push($to_remove, $id);
- foreach ($to_remove as $set_id) {
- $sql = "SELECT * from filtered_sent_ids";
- $result = mysql_query($sql);
- while ($row = mysql_fetch_assoc($result)) {
- $unit_id = $row['id'];
- $sql = "DELETE FROM metadata
- WHERE value = '$set_id'
- AND unit_id = $unit_id
- AND (property_name = 'sentence_set'
- OR property_name = 'word_set'
- OR property_name = 'document_set');";
- mysql_query($sql) or die("<b>A fatal MySQL error occured
- create.php l. 50</b>.
- <br/> Query: " . $sql . "
- <br/> Error: (" . mysql_errno() . ") " . mysql_error());
- }
- }
- $property_name = $type."_set";
- // update the main metadata count for this set
- updateMainMetadataCounts($id, $property_name);
- return array("status"=>"ok");
- }
- ?>