|  | <?php | 
|  |  | 
|  | require_once $_SERVER['DOCUMENT_ROOT'] . '/rap/_projectCommon.php'; | 
|  | require_once $_SERVER['DOCUMENT_ROOT'] . '/rap/developers-guide/DevGuideUtils.php'; | 
|  | require_once $_SERVER['DOCUMENT_ROOT'] . '/rap/developers-guide/NavigationView.php'; | 
|  | require_once $_SERVER['DOCUMENT_ROOT'] . '/rap/developers-guide/ContentView.php'; | 
|  |  | 
|  | $PAGE_TITLE = "RAP - Developer's Guide"; | 
|  | $PAGE_NAV_POSITION = array( "documentation", "developers-guide" ); | 
|  | $PAGE_ADD_CSS = '/rap/_theme/devguide.css'; | 
|  |  | 
|  | $forwardingUrl = '/rap/developers-guide/'; | 
|  | $version = DevGuideUtils::CURRENT_VERSION; | 
|  |  | 
|  | if( isset( $_GET[ 'version' ] ) ) { | 
|  | $version = $_GET[ 'version' ]; | 
|  | } | 
|  |  | 
|  | if( !isset( $_GET[ 'topic' ] ) || !array_key_exists( $version, DevGuideUtils::$versions ) ) { | 
|  | header( 'Location: ' . $forwardingUrl ); | 
|  | exit; | 
|  | } | 
|  |  | 
|  | $topic = $_GET[ 'topic' ]; | 
|  |  | 
|  | if( empty( $topic ) | 
|  | || containsString( $topic, './' ) | 
|  | || containsString( $topic, '../' ) | 
|  | || !containsString( $topic, '.html' ) ) | 
|  | { | 
|  | send404(); | 
|  | } else { | 
|  | try { | 
|  | $devguideContent = ContentView::create( $topic, $version ); | 
|  | } catch( RuntimeException $exception ) { | 
|  | send404(); | 
|  | } | 
|  | } | 
|  |  | 
|  | function send404() { | 
|  | header( "HTTP/1.1 404 Not Found" ); | 
|  | } | 
|  |  | 
|  | printHeader(); | 
|  |  | 
|  | ?> | 
|  |  | 
|  | <div id="midcolumn" class="dev-guide-content"> | 
|  |  | 
|  | <? if( $devguideContent ) { ?> | 
|  |  | 
|  | <?= $devguideContent ?> | 
|  |  | 
|  | <? } else { ?> | 
|  |  | 
|  | <h1>Not found</h1> | 
|  |  | 
|  | <p> | 
|  | This help topic does not exist in the RAP Developer's Guide | 
|  | </p> | 
|  | <p> | 
|  | See <a href="/rap/developers-guide/">table of contents</a> for all available topics. | 
|  | </p> | 
|  |  | 
|  | <? } ?> | 
|  |  | 
|  | </div> | 
|  |  | 
|  | <div id="rightcolumn"> | 
|  | <a style = "color:inherit;text-decoration:none;" | 
|  | href="<?=$forwardingUrl . '?version=' . $version; ?>"> | 
|  | <h2 style="padding-bottom:12px;">Contents / RAP <?=$version?></h2></a> | 
|  |  | 
|  | <?= NavigationView::create( $version ); ?> | 
|  | </div> | 
|  |  | 
|  | <script type="text/javascript"> | 
|  | $( 'ul#dev-guide-nav li.category-group ul' ).each( function() { | 
|  | if( !$( this ).find( '.active' ).attr( 'class' ) ) { | 
|  | $( this ).hide(); | 
|  | $( this ).addClass( 'hidden' ); | 
|  | } else { | 
|  | $( this ).siblings( 'span' ).children( 'span' ).addClass( 'opened' ); | 
|  | } | 
|  | } ); | 
|  | $( 'ul#dev-guide-nav li.category-group span' ).click( function() { | 
|  | var navList = $( this ).siblings( 'ul' ); | 
|  | var arrow = $( this ).children( 'span' ); | 
|  | if( navList.hasClass( 'hidden' ) ) { | 
|  | navList.slideDown(); | 
|  | navList.removeClass( 'hidden' ); | 
|  | arrow.addClass( 'opened' ); | 
|  | } else { | 
|  | navList.slideUp(); | 
|  | navList.addClass( 'hidden' ); | 
|  | arrow.removeClass( 'opened' ); | 
|  | } | 
|  | } ); | 
|  | </script> | 
|  |  | 
|  | <? | 
|  |  | 
|  | printFooter(); | 
|  |  | 
|  | ?> |