get_results("SELECT * FROM ".$canvas->duplicates." WHERE module_id = '$modulelId'"); return $results; } /** * Create a duplicate. * * @param integer $customWriteModuleId * @param string $duplicate_name the name of the duplicate, if false, * the name "[MODULE NAME] copy [x] will be given to the duplicate. */ function Create($customWriteModuleId, $duplicate_name=false) { global $wpdb, $canvas; // Get module name $customModule = RCCWP_CustomWriteModule::Get($customWriteModuleId); if (!$duplicate_name){ // go ahead and rename, then duplicate $duplicate_name = $customModule->name; if($other_blocks = $wpdb->get_results("SELECT duplicate_name FROM ".$canvas->duplicates." WHERE duplicate_name LIKE '".preg_replace('/\scopy\s[0-9]*/', '', $duplicate_name)." %' ORDER BY duplicate_id DESC")) { $duplicate_name = $other_blocks[0]->duplicate_name; $testcase = substr($duplicate_name, -1, 1); $duplicate_name[strlen($duplicate_name) - 1] = intval($testcase) + 1; } else $duplicate_name .= ' copy 2'; } $wpdb->query("INSERT INTO ".$canvas->duplicates." (module_id, duplicate_name) VALUES ($customWriteModuleId, '$duplicate_name')"); return $wpdb->insert_id; } /** * Delete duplicate * * @param integer $duplicateId */ function Delete($duplicateId) { global $wpdb, $canvas; $sql = sprintf( "DELETE FROM " . $canvas->duplicates . " WHERE duplicate_id = %d", $duplicateId ); $wpdb->query($sql); } /** * Get duplicate * * @param integer $duplicateId * @return an object containing the duplicate properties */ function Get($duplicateId){ global $wpdb, $canvas; $results = $wpdb->get_row("SELECT * FROM ".$canvas->duplicates." WHERE duplicate_id = $duplicateId"); return $results; } /** * Update duplicate * * @param integer $duplicateId * @param string $name new duplicate name */ function Update($duplicateId, $name){ global $wpdb, $canvas; $sql = sprintf( "UPDATE " . $canvas->duplicates . " SET duplicate_name = '%s'". " where duplicate_id = %d", $name, $duplicateId); $wpdb->query($sql); } } ?>