1)$responseXP['tkp']=$toolKitParameters;// toolkit parameters // ============================ STYLES ======================================= if(strlen($WEBPAGE_STYLES)>0){ $styles=''; $styles.=$WEBPAGE_STYLES; if(SITE_TEST_MODE!=1)$styles = preg_replace("/[\n\r\t\v\f]/","",$styles); if(ZDEF_CMD=='GP')$responseXP['sf']=$styles; // don't need this for SP or PP } if(1==2 && ZDEF_IB_LOAD===true){// this is an interface block that does not replace page content, but floats over it. It does not create page history. We now set $responseXP['ib'] in the code that handles the ib submission. E.g. for contact forms it's the contact form processor ob_start();$output=''; include ZDEF_PATH_TO_LIBRARY.'iblocks/'.$cln_ib.'.inc.php'; $output=ob_get_clean(); if(SITE_TEST_MODE!==1)$output = preg_replace("/[\n\r\t\v\f]/","",$output); if(strlen($output)>0) $responseXP['ib']=array('html'=>$output); } $responseXP['html']= $HTMLOUTPUT;// created in generate.from.source $currentTimeAsString = strval(time()); // make the browser go back to the server if(defined('PASSED_LOGIN_AUTH')){ $responseXP['iii']=ZDEF_JENSIII; if(JENISYS == 1){ // we just logged in to Jenisys $responseXP['xhs.cssjenisys']='https://'.ZDEF_HUB_HANDLE.'/jenisys/jenisys.css?t='.$currentTimeAsString; $responseXP['xhs.jscjenisys']='https://'.ZDEF_HUB_HANDLE.'/jenisys/jenisys.js?t='.$currentTimeAsString; $responseXP['xhs.jscjenisyspublish']='https://'.ZDEF_HUB_HANDLE.'/jenisys/jenisys.publish.js?t='.$currentTimeAsString.'&p='.(WEBPAGE_PUBLISH_DATETIME?'1':'0'); $responseXP['xhs.jscdropzone']='https://'.ZDEF_HUB_HANDLE.'/jenisys/dropzone.js?t='.$currentTimeAsString; /* get the javascript and css for any custom Jenisys functions needed for this particular site */ if(file_exists(ZDEF_PATH_TO_HUB.'public_html/'.ORG_HANDLE.'/config/custom.jenisys.function.files.inc.php')){ require ZDEF_PATH_TO_HUB.'public_html/'.ORG_HANDLE.'/config/custom.jenisys.function.files.inc.php'; } } } $widgetsIncluded=true; //the response pn has a path in front of the pagename $responseXP['pn']=ZDEF_RESOURCE_PATH_PAGENAME; if($responseXP['pn']=='index')$responseXP['pn']='home'; $s='?'; $url='https://'.ZDEF_HUB_HANDLE.'/'.ORG_HANDLE.'/'.ZDEF_RESOURCE_PATH_PAGENAME.'/'; if(substr($url,-6)==='index/') { $url = substr($url,0,-6); } if (is_array($URL_PARMS_TO_RETURN_TO_CLIENT) && !empty($URL_PARMS_TO_RETURN_TO_CLIENT)) { $url=$url.'?'.implode('&',$URL_PARMS_TO_RETURN_TO_CLIENT); // an example is search=whatever, set by the item widget } if(ZDEF_CMD=='RP' || ZDEF_CMD=='IT' || ZDEF_CMD == 'SP' || ZDEF_CMD == 'PP'){ $responseXP['urlr']=$url; // history.replaceState (we need this in PP to trigger the next page on a batch publish) }else{ $responseXP['url']=$url; // history.pushState } // don't issue meta information until js above has had a chance to load meta js // Update the header information $responseXP['tt']=WEBPAGE_TITLE; $meta=[]; $responseXP['canonical']=WEBPAGE_CANONICAL_REFERENCE; $responseXP['pubdate']=WEBPAGE_PUBLISHED_TO_CDN_DATETIME; if(WEBPAGE_DESCRIPTION !='')$meta[]=array('description','name',WEBPAGE_DESCRIPTION); // **** we don't HSC or json_encode here because we are json_encoding the entire response, and if we send back HSC " data it shows in our input fields if(WEBPAGE_OG_TITLE!='')$meta[]=array('og:title','property',strip_tags(WEBPAGE_OG_TITLE)); if(WEBPAGE_OG_URL!='')$meta[]=array('og:url','property',$responseXP['canonical']); if(WEBPAGE_OG_DESCRIPTION!='')$meta[]=array('og:description','property',strip_tags(WEBPAGE_OG_DESCRIPTION)); if(WEBPAGE_OG_IMAGE!=''){$meta[]=array('og:image','property','https://www.'.ORG_HANDLE.'/'.WEBPAGE_OG_IMAGE);} $meta[]=array('og:type','property','website'); $responseXP['meta']=$meta?$meta:'';// always send a meta response even if the new page doesn't have any meta so we get the old page meta tags cleared ob_start(); require ZDEF_PATH_TO_LIBRARY.'widgets/widget.js.php';//get some functions we need to load the page, determined by $classesLoading $output=ob_get_clean(); //if(defined('INITIALIZE_CALENDAR_DATA'))$output.=INITIALIZE_CALENDAR_DATA; if(strlen($output)>1){ if(SITE_TEST_MODE==0)$output = preg_replace("/[\n\r\t\v\f]/","",$output); $responseXP['js']=$output; } /* if(ZDEF_IB_LOAD===false){if(WEBPAGE_HAS_TOOLKIT==1)$responseXP['tkt']=WEBPAGE_TOOLKIT_TOOLS;// toolkit tools: this determines which tools are shown for the page} */ //webpageInitRoutine is defined in the webpage.inc.php or one of the widgets it calls $xjs=[]; if(isset($webpageInitRoutine))$xjs[]=array($webpageInitRoutine,array()); $parm=array(); if(JENISYS == 1){ $parm=array( 'wid'=>WEBPAGE_ID==0?'0':WEBPAGE_ID, 'ptyp'=>WEBPAGE_ITEM_TYPE, 'idid'=>WEBPAGE_ITEMDEF_ID, 'item-index'=>WEBPAGE_IS_ITEM_INDEX, 'bcn'=>' jenisys_ page_ dbu_ zpageV'.(WEBPAGE_IS_ITEM_INDEX?' item_index':'').(WEBPAGE_ITEM_TYPE!='webpage' && ! WEBPAGE_IS_ITEM_INDEX?' item':''), 'data-ptyp'=>HSC(WEBPAGE_ITEM_TYPE), 'data-id'=>WEBPAGE_ID.'', 'data-idid'=>WEBPAGE_ITEMDEF_ID, 'data-saved'=>WEBPAGE_SAVED_VERSION, 'data-hist'=>WEBPAGE_HISTORY_COUNT, 'data-lib'=>LOADER_VERSION_NUMBER, ); if(defined('TEMPLATE_ID')){ $parm['tid']=TEMPLATE_ID; $parm['jenisys_open_page_settings']=true; } $xjs[]=array('jenisys_pl',$parm); } $xjs[]=array('jii.imgs'); $responseXP['share']=WEBPAGE_SERVE_FROM_SHARED_DOMAIN?SITE_SHARING_URL:''; if(JENISYS==1){ //$responseXP['rbk']=$rollback; $responseXP['saved']=WEBPAGE_SAVED_VERSION==1?'1':'0'; // in here put all the page data $responseXP['data']=array( 'webpage_id'=>WEBPAGE_ID, 'webpage_name'=>$responseXP['pn'],// this sets the pagename in the meta data panel 'webpage_type'=>(WEBPAGE_SAVED_VERSION==1?'Saved ':'Published ').(WEBPAGE_IS_ITEM_INDEX?'Webpage':ucwords(ITEMDEF_SINGULAR_TITLE)), 'webpage_publish_datetime'=>WEBPAGE_PUBLISH_DATETIME, 'webpage_expiry_datetime'=>WEBPAGE_EXPIRY_DATETIME, 'webpage_is_sticky'=>WEBPAGE_IS_STICKY, 'webpage_title'=>WEBPAGE_TITLE, 'webpage_description'=>WEBPAGE_DESCRIPTION, 'webpage_og_title'=>WEBPAGE_OG_TITLE, 'webpage_og_description'=>WEBPAGE_OG_DESCRIPTION, 'webpage_og_image'=>WEBPAGE_OG_IMAGE?WEBPAGE_OG_IMAGE.'?fx=1.91_1':'', 'wss_og_image'=>WEBPAGE_OG_IMAGE?WEBPAGE_OG_IMAGE.'?w=f150&q=70':'', 'webpage_og_url'=>WEBPAGE_OG_URL, 'webpage_change_datetime'=>WEBPAGE_CHANGE_DATETIME, 'webpage_change_user_id'=>WEBPAGE_CHANGE_USER_ID, ); $responseXP['hist']=strval(WEBPAGE_HISTORY_COUNT); if(USER_IS_SYSTECH==1){ $responseXP['data']['webpage_og_url']=WEBPAGE_OG_URL; } if(1==2 && WEBPAGE_ITEMDEF_ID){ // GET ALL POSSIBLE CATEGORIES FOR THIS PAGE TYPE, indicating which are selected // we need to reinitialize the categories completely because for all we know we could be switching itemtype on page swap $sql='SELECT itemcategory.itemcategory_id,itemcategory_name,webpage$itemcategory_id FROM itemcategory' .' LEFT JOIN webpage$itemcategory ON webpage$itemcategory.itemcategory_id = itemcategory.itemcategory_id AND webpage$itemcategory.webpage_id = '.WEBPAGE_ID // this will return null items from webpage$itemcategory when none exist, while allowing rows that satisfy the WHERE clause .' WHERE itemcategory$itemdef_id = '.WEBPAGE_ITEMDEF_ID.' AND itemcategory$org_id = '.ORG_ID.' AND itemcategory.itemcategory$org_id = '.ORG_ID.' AND itemcategory_active = 1 ORDER BY itemcategory_name LIMIT 30'; $r=dbQry($db,$sql,'cG74mz'); $a=[]; while($row=dbRN($r)){ $a[]=array($row['itemcategory_id'],$row['itemcategory_name'],($row['webpage$itemcategory_id']?1:0)); } $responseXP['data']['catg_']=$a; } } if(count($xjs)>0)$responseXP['xjs']=$xjs; $response['XP']=$responseXP; ?>