Example #1
0
		/**
		 * installs a core or root level BlockType (from /blocks or /concrete/blocks, not a package)
		 * should likely be a static method
		 * @param string $btHandle
		 * @param int $btID btID if it's an existing block type
		 */
		public function installBlockType($btHandle, $btID = 0) {
		
			if ($btID == 0) {
				// then we don't allow one to already exist
				$db = Loader::db();
				$cnt = $db->GetOne("select btID from BlockTypes where btHandle = ?", array($btHandle));
				if ($cnt > 0) {
					return false;
				}
			}
			
			if (file_exists(DIR_FILES_BLOCK_TYPES . '/' . $btHandle . '/' . FILENAME_BLOCK_CONTROLLER)) {
				$dir = DIR_FILES_BLOCK_TYPES;
			} else {
				$dir = DIR_FILES_BLOCK_TYPES_CORE;
			}
			if (file_exists(DIR_FILES_BLOCK_TYPES . '/' . $btHandle . '/' . FILENAME_BLOCK_DB)) {
				$dirDbXml = DIR_FILES_BLOCK_TYPES;
			} else {
				$dirDbXml = DIR_FILES_BLOCK_TYPES_CORE;
			}
			
			$bt = new BlockType;
			$bt->btHandle = $btHandle;
			$bt->pkgHandle = null;
			$bt->pkgID = 0;
			return BlockType::doInstallBlockType($btHandle, $bt, $dir, $btID, $dirDbXml);
		}
Example #2
0
 function installBlockType($btHandle, $btID = 0)
 {
     if ($btID == 0) {
         // then we don't allow one to already exist
         $db = Loader::db();
         $cnt = $db->GetOne("select btID from BlockTypes where btHandle = ?", array($btHandle));
         if ($cnt > 0) {
             return false;
         }
     }
     if (is_dir(DIR_FILES_BLOCK_TYPES_CORE . '/' . $btHandle)) {
         $dir = DIR_FILES_BLOCK_TYPES_CORE;
     } else {
         $dir = DIR_FILES_BLOCK_TYPES;
     }
     $bt = new BlockType();
     $bt->btHandle = $btHandle;
     $bt->pkgHandle = null;
     $bt->pkgID = 0;
     return BlockType::doInstallBlockType($btHandle, $bt, $dir, $btID);
 }