Beispiel #1
0
	/**
* Launch a Content-Item
* @param integer CID to launch
* @param integer ID of the level to launch to.
* @param integer ID of the variation to launch.
* @returns integer Translated ID after launch
*/
	function launchContent($in, $level, $variation) {
		global $db, $auth;
		if (!checkACL($in)) {						
			$out = translateState($in, $level);
			$sql = "SELECT * FROM content WHERE CID = $in";
			$query = new query($db, $sql);
			$query->getrow();
			$module = $query->field("MODULE_ID");
			$category = $query->field("CATEGORY_ID");
			$mtid = $query->field("MT_ID");
			$name = addslashes($query->field("NAME"));
			$keywords = addslashes($query->field("KEYWORDS"));
			$description = addslashes($query->field("DESCRIPTION"));
			$delme = $query->field("DELETED");
			$accesskey = $query->field("ACCESSKEY");

			// do some launches
			$mtTrans = launchMetaTemplate($mtid, $level);

			$sql = "DELETE FROM content WHERE CID = $out";
			$query = new query($db, $sql);
			$sql = "INSERT INTO content (CID, MODULE_ID, CATEGORY_ID, MT_ID, NAME, DESCRIPTION, KEYWORDS, CREATED, LAST_MODIFIER, VERSION, DELETED, ACCESSKEY) VALUES ";
			$sql .= "($out, $module, $category, $mtTrans, '$name', '$description', '$keywords', NOW(), '$auth->user', $level, $delme, '$accesskey')";
			
			$query = new query($db, $sql);
			// launch the content.
			$dbc = createDBCArray("content_variations", "VARIATION_ID", "DELETED=0 AND CID=".$in);
			for ($i=0; $i<count($dbc);$i++) {
			  launchContentVariation($in, $module, $level, $dbc[$i]);
      }		
			// launch metas
			$sql = "SELECT MID FROM meta WHERE CID = $in AND DELETED=0";
			$query = new query($db, $sql);

			while ($query->getrow()) {
				launchMeta($query->field("MID"), $level);
			}

			$query->free();			
			return $out;
		} else
			return translateState($in, $level);
	}
/**
 * Launch a Cluster. Does not automatically launch the cluster-template
 * @param integer CLNID to launch
 * @param integer ID of the level to launch to.
 * @param integer ID of the variation to launch. 
 * @returns integer Translated ID after launch
 */
function launchCluster2($in, $level, $variation)
{
    global $db;
    if (!checkACL($in)) {
        $out = translateState($in, $level);
        $sql = "SELECT * FROM cluster_node WHERE CLNID = {$in}";
        $query = new query($db, $sql);
        $query->getrow();
        $clt = $query->field("CLT_ID");
        $name = addslashes($query->field("NAME"));
        $cltTrans = translateState($in, $level, false);
        $sql = "DELETE FROM cluster_node WHERE CLNID = {$out}";
        $query = new query($db, $sql);
        $sql = "INSERT INTO cluster_node (CLNID, CLT_ID, NAME, DELETED, VERSION) VALUES ";
        $sql .= "({$out}, {$cltTrans}, '{$name}', 0, {$level})";
        $query = new query($db, $sql);
        launchClusterVariation($in, $level, $variation);
        // launch meta
        $sql = "SELECT MID FROM meta WHERE CID = {$in} AND DELETED=0";
        $query = new query($db, $sql);
        while ($query->getrow()) {
            launchMeta($query->field("MID"), $level);
        }
        $query->free();
        return $out;
    } else {
        return translateState($in, $level);
    }
}