diff --git a/estate_defs.php b/estate_defs.php index 6bb57f9..71c60ac 100644 --- a/estate_defs.php +++ b/estate_defs.php @@ -19,9 +19,10 @@ define("EST_HOAFREQ", $EST_HOAFREQ); define("EST_CURSYMB", $EST_CURSYMB); -define("EST_CONTKEYS",array(EST_GEN_MOBILE,EST_GEN_EMAIL,EST_GEN_OFFICE,EST_GEN_FAX,EST_GEN_WEBSITE,EST_GEN_LINKIN,EST_GEN_TWITER,EST_GEN_FACEBOOK)); -define("EST_LEVMAP",array(0=>array('estate_subdiv','subd_idx'),1=>array('estate_properties','prop_idx'),2=>array('estate_spaces','space_idx'),3=>array('estate_city','city_idx'),4=>array('estate_subdiv_spaces','subspace_idx'))); define("EST_MSGTYPES",array('',EST_MSG_SHOWINGREQUESTS,EST_MSG_OFFERS,EST_MSG_QUOTEREQ,EST_MSG_OTHERQUESTIONS)); +define("EST_CONTKEYS",array(EST_GEN_MOBILE,EST_GEN_EMAIL,EST_GEN_OFFICE,EST_GEN_FAX,EST_GEN_WEBSITE,EST_GEN_LINKIN,EST_GEN_TWITER,EST_GEN_FACEBOOK)); + +define("EST_LEVMAP",array(0=>array('estate_subdiv','subd_idx'),1=>array('estate_properties','prop_idx'),2=>array('estate_spaces','space_idx'),3=>array('estate_subdiv_spaces','space_idx'),4=>array('estate_subdiv_spaces','space_idx'))); $EST_LEASEDUR = array(EST_GEN_NOLEASE); for($i = 1; $i <= 6; $i++){array_push($EST_LEASEDUR,$i." ".EST_GEN_MONTH);} @@ -58,24 +59,122 @@ ); define("EST_IMGTYPES",array(".jpg",".jpeg",".gif",".png")); + define("EST_PTH_ADMIN", e_PLUGIN."estate/admin_config.php"); define("EST_PTH_LISTINGS", e_PLUGIN."estate/listings.php"); define("EST_PTH_AVATAR", e_MEDIA."avatars/upload/"); +define("EST_PTH_MEDIA", e_PLUGIN."estate/media/"); + define("EST_PTHABS_AVATAR", SITEURLBASE.e_MEDIA_ABS."avatars/upload/"); + define("EST_PATHABS", SITEURLBASE.e_PLUGIN_ABS."estate/"); define("EST_PATHABS_LISTINGS", EST_PATHABS."listings.php"); -define("EST_PATHABS_MEDIA", EST_PATHABS."media/"); define("EST_PATHABS_IMAGES", EST_PATHABS."images/"); + +define("EST_PATHABS_MEDIA", EST_PATHABS."media/"); define("EST_PTHABS_AGENCY", EST_PATHABS_MEDIA."agency/"); define("EST_PTHABS_AGENT", EST_PATHABS_MEDIA."agent/"); + +define("EST_PTHABS_CITYTHM", EST_PATHABS_MEDIA."city/thm/"); +define("EST_PTHABS_CITYFULL", EST_PATHABS_MEDIA."city/full/"); +define("EST_PTHABS_CITYVID", EST_PATHABS_MEDIA."city/vid/"); + define("EST_PTHABS_PROPTHM", EST_PATHABS_MEDIA."prop/thm/"); define("EST_PTHABS_PROPFULL", EST_PATHABS_MEDIA."prop/full/"); define("EST_PTHABS_PROPVID", EST_PATHABS_MEDIA."prop/vid/"); + define("EST_PTHABS_SUBDTHM", EST_PATHABS_MEDIA."subdiv/thm/"); define("EST_PTHABS_SUBDFULL", EST_PATHABS_MEDIA."subdiv/full/"); define("EST_PTHABS_SUBDVID", EST_PATHABS_MEDIA."subdiv/vid/"); + + + + +if(EST_USERPERM == 4){ + $sdir = array('/full','/thm','/vid'); + $dirs = array('agency'=>0,'agent'=>0,'city'=>$sdir,'prop'=>$sdir,'subdiv'=>$sdir); + foreach($dirs as $k=>$v){ + $ok = estDirChk($k,'',EST_PTH_MEDIA,EST_PATHABS_MEDIA); + if($ok[0] < 2){$tst .= '
'.$ok[1].'
';} + else{ + if(is_array($v)){ + foreach($v as $sk=>$sv){ + $ok = estDirChk($k,$sv,EST_PTH_MEDIA,EST_PATHABS_MEDIA); + if($ok[0] < 2){$tst .= '
'.$ok[1].'
';} + } + } + } + } + if(isset($tst)){ + e107::getMessage()->addWarning('
There are errors with the Media Directories:
'.$tst); + } + unset($dirs,$sdir,$k,$v,$sk,$sv,$ok,$tst); + } + + + +function estGetListPrice($DTA,$NOADV=0){ + $EST_PREF = e107::pref('estate'); + //$nf = new NumberFormatter('en_US', \NumberFormatter::CURRENCY); + //$nf->setTextAttribute(NumberFormatter::CURRENCY_CODE, 'USD'); + //$nf->setAttribute(\NumberFormatter::MAX_FRACTION_DIGITS, 0); + + $ListPrice = EST_CURSYMB[$DTA['prop_currency']].' '.$DTA['prop_listprice']; + $ListPrice .= ($DTA['prop_listype'] == 0 ? '/'.$GLOBALS['EST_LEASEFREQ'][$DTA['prop_leasefreq']] : ''); + $ListPrice .= estPriceDrop($DTA); + + if(ADMIN && (intval($DTA['prop_status']) < 2 || intval($DTA['prop_status']) > 4)){ + $ADMVIEW = ''.$ListPrice.''; + } + if(intval($DTA['prop_status']) == 5){ + if($ADMVIEW){$ret = $ADMVIEW;} + } + elseif(intval($DTA['prop_status']) == 4 || intval($DTA['prop_status']) == 3){ + $ret = $ListPrice; + } + elseif(intval($DTA['prop_status']) == 2){ + if(intval($DTA['prop_datelive']) > 0 && intval($DTA['prop_datelive']) <= $GLOBALS['STRTIMENOW']){ + $ret = $ListPrice; + } + elseif(USERID > 0 && (intval($DTA['prop_dateprevw']) > 0 && intval($DTA['prop_dateprevw']) <= $GLOBALS['STRTIMENOW'])){ + $ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ListPrice; + } + elseif($ADMVIEW){$ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ADMVIEW;} + } + elseif(intval($DTA['prop_status']) == 1){ + if($ADMVIEW){$ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ADMVIEW;} + } + unset($ListPrice,$ADMVIEW); + + return $ret; + } + + +function estPriceDrop($DTA,$MODE=0){ + if(intval($DTA['prop_listprice']) !== intval($DTA['prop_origprice'])){ + $OPLP = round((1 -(intval($DTA['prop_listprice']) / intval($DTA['prop_origprice']))) * 100, 1); + if($MODE > 0){ + if($MODE == 1){return $OPLP;} + } + else{ + if($OPLP > 0){return '↓'.$OPLP.'%';} // style="color:#009900" + else{return'↑'.$OPLP.'%';} // style="color:#990000" + } + } + } + + +function estGetCurencySym($ID=-1){ + $EST_PREF = e107::pref('estate'); + $ID = ($ID > -1 ? $ID : Intval($EST_PREF['currency'])); + + return EST_CURSYMB[$ID]; + } + + + function spgrpsort($a, $b){ return strnatcmp($a['ord'], $b['ord']); } @@ -330,8 +429,10 @@ function estMediaArr($row){ 'i'=>$row['media_idx'], 'l'=>$row['media_levidx'], 'o'=>$row['media_levord'], + 'p'=>$row['media_propidx'], 'n'=>$row['media_name'], 't'=>$row['media_thm'], + 'v'=>$row['media_lev'], 'y'=>$row['media_type'] ); } @@ -370,7 +471,7 @@ function estGetSpaces($DTA,$PSTAT=0){ ON feature_idx = featurelist_key LEFT JOIN #estate_grouplist ON grouplist_groupidx = space_grpid - WHERE space_propidx=".$PROPID." + WHERE space_lev=1 AND space_levidx=".$PROPID." ORDER BY grouplist_ord ASC, space_ord ASC"; if($data3 = $sql->retrieve($query3,true)){ @@ -389,7 +490,7 @@ function estGetSpaces($DTA,$PSTAT=0){ } } - if($SUBDIVID > 0){ + if($CITYID > 0 || $SUBDIVID > 0){ $SUBDIVDTA = estGetSubDivDta($SUBDIVID,$CITYID); if(isset($SUBDIVDTA)){$RET[2] = $SUBDIVDTA;} } @@ -418,10 +519,10 @@ function estGetCitySpaces($city_idx){ $sql = e107::getDb(); $tp = e107::getParser(); $RET = array(); - if($dbRow1 = $sql->retrieve('estate_subdiv_spaces', '*', 'subspace_city="'.$city_idx.'" AND subspace_subidx="0"',true)){ + if($dbRow1 = $sql->retrieve('estate_subdiv_spaces', '*', 'space_lev="3" AND space_levidx="'.$city_idx.'"',true)){ foreach($dbRow1 as $k=>$v){ - $v['media'] = estGetMediaRows($v['subspace_idx'],3); - $RET[$v['subspace_idx']] = $v; + $v['media'] = estGetMediaRows($v['space_idx'],3); + $RET[$v['space_idx']] = $v; } } @@ -480,15 +581,19 @@ function estGetSubDivDta($subd_idx,$subd_city=0){ } $RET['spaces'] = array('city'=>array(),'subd'=>array()); - if($dbRow3 = $sql->retrieve('estate_subdiv_spaces', '*', 'subspace_subidx="'.$subd_idx.'"'.(intval($subd_city) > 0 ? ' OR subspace_city="'.$subd_city.'"' : ''),true)){ + + + if($dbRow2 = $sql->retrieve('estate_subdiv_spaces', '*', 'space_lev="4" AND space_levidx="'.$subd_idx.'"',true)){ + foreach($dbRow2 as $k=>$v){ + $media = estGetMediaRows($v['space_idx'],4); + $RET['spaces']['subd'][$k] = array_merge($v,$media); + } + } + + if($dbRow3 = $sql->retrieve('estate_subdiv_spaces', '*', 'space_lev="3" AND space_levidx="'.$subd_city.'"',true)){ foreach($dbRow3 as $k=>$v){ - $v['media'] = estGetMediaRows($v['subspace_idx'],4); - if(intval($v['subspace_subidx']) > 0){ - $RET['spaces']['subd'][$v['subspace_idx']] = $v; - } - else{ - $RET['spaces']['city'][$v['subspace_city']] = $v; - } + $media = estGetMediaRows($v['space_idx'],3); + $RET['spaces']['city'][$k] = array_merge($v,$media); } } @@ -498,119 +603,81 @@ function estGetSubDivDta($subd_idx,$subd_city=0){ } -function estSubDivisionView($subd_idx,$mode=0){ - //estGetSpaces - $sql = e107::getDb(); - $tp = e107::getParser(); - - if($mode == 1){ - if($subd_idx == 0){ - return '
'.EST_GEN_SUBDIVISIONNONE.'
'; - } - - $dta = estGetSubDivDta($subd_idx); - extract($dta); - if(isset($media) && count($media) > 0){ - $CSSTOP = estViewImgCSS('#estSubDivSlideShow',$media,2); - if(isset($CSSTOP[0])){ - $SLIDESHOW = '
'; - } - } - } - else{ - if(is_array($subd_idx)){ - $dta = $subd_idx; - extract($dta); - if(isset($media) && count($media) > 0){ - $SLIDESHOW = '
'; - } - } - - } - - if(trim($subd_url) !== ""){ - $SUBDWEB = '

'.$tp->makeClickable($subd_url,'url',array('ext'=>1)).'

'; - } - - if(trim($subd_hoaweb) !== ""){ - $HOAWEB = '

'.$tp->makeClickable($subd_hoaweb,'url',array('ext'=>1)).'

'; + +function estDirChk($dir,$sdir,$relpth,$abspth){ + $reldir = $relpth.$dir.$sdir; + $ok = 2; + if($sdir !== ''){ + $tst = estDirChk($dir,'',$relpth,$abspth); + if($tst[0] > 1){} + else{return array(0,'Failed to make root folder "'.$dir.'" for sub folder "'.$sdir.'"');} } - if($mode == 1){ - $txt = ' -
- '.$SLIDESHOW.' -
-

'.$tp->toHTML($subd_name,true).'

-

'.EST_GEN_SUBDIVTYPE[$subd_type].'

- '.$SUBDWEB.' - '.(trim($subd_description) !== '' ? '
'.$tp->toHTML($subd_description,true).'
' : '').' -
'; - } - - else{ - $txt = ' -
-

'.$tp->toHTML($subd_name,true).'

- '.$SLIDESHOW.' -
-

'.EST_GEN_SUBDIVTYPE[$subd_type].'

- '.$SUBDWEB.' - '.(trim($subd_description) !== '' ? '
'.$tp->toHTML($subd_description,true).'
' : '').' -
'; + if(!is_dir($reldir)){ + if(mkdir($reldir, 0755, true)){$ok++;} + else{return array(1,'Failed to make "'.$reldir.'" ');} } + clearstatcache(); - - if($subd_hoaappr == 1 || $subd_hoareq == 1 || intval($subd_hoafee) > 0){ - $txt .= ' -
-

'.$tp->toHTML((trim($subd_hoaname) !== '' ? $subd_hoaname : $subd_name),true).' '.EST_GEN_HOMEOWNASS.'

- '.($HOAWEB ? $HOAWEB : ($SUBDWEB ? $SUBDWEB : '')).' -

'.EST_GEN_HOADEF1.'

-
    -
  • '.($subd_hoareq == 1 ? EST_GEN_HOAREQ1 : EST_GEN_HOAREQ2).'
  • - '.($subd_hoafee > 0 ? '
  • '.EST_PROP_HOAFEES.': '.$subd_hoafee.' '.($subd_hoafrq > 0 ? EST_HOAFREQ[$subd_hoafrq] : '').'²
  • ' : '').' - '.($subd_hoaappr == 1 ? '
  • '.EST_GEN_HOAAPPR2.'³
  • ' : '').' -
-
'; + if($ok > 1){ + if(!is_writable($reldir)){ + @chmod($reldir, 0755); + $ok++; } + clearstatcache(); - - $txt .= ' -
-
'; - - $txt .= ' -
'; - - //$EST_HOAREQD[$subd_hoareq] - //EST_HOAFREQ - unset($SLIDESHOW,$SUBDWEB,$HOAWEB,$CSSTOP); - return $txt; + if(!file_exists($reldir.'/index.html')){ + $file = fopen($reldir."/index.html","w"); + fwrite($file,"Hello World."); + fclose($file); + $ok++; + } + clearstatcache(); + } + return array($ok,''); + } + +function estSubDivisionView($subd_idx,$mode=0){ + return (ADMIN ? '
Not Used
' : ''); + } + + +function estImgPaths($dta){ + switch(intval($dta['v'])){ + case 3 : + return [EST_PTHABS_CITYTHM.$dta['t'],EST_PTHABS_CITYFULL.$dta['f']]; + break; + case 2 : + case 1 : + return [EST_PTHABS_PROPTHM.$dta['t'],EST_PTHABS_PROPFULL.$dta['f']]; + break; + default : + return [EST_PTHABS_SUBDTHM.$dta['t'],EST_PTHABS_SUBDFULL.$dta['f']]; + break; + } } function estViewImgCSS($cssName,$gal,$loc=1){ $EST_PREF = e107::pref('estate'); - $actv = $EST_PREF['slideshow_act']; - $stime = intval($EST_PREF['slideshow_time']) * $loc; - $sdelay = $EST_PREF['slideshow_delay']; - $CSS = array(); $galCt = (is_array($gal) ? count($gal) : 0); + + $CSS = array(); if($galCt == 0){ $CSS[0] = ' '.$cssName.'{background-image: url("'.EST_PATHABS_IMAGES.'imgnotavail.png");}'; $CSS[1] .= ' '; } else{ - $sdelay = intval($sdelay); - $iStep = round(99 / $galCt, 2); - $imgpth = ($loc == 2 ? EST_PTHABS_SUBDTHM : EST_PTHABS_PROPTHM); - $imgpthfull = ($loc == 2 ? EST_PTHABS_SUBDFULL : EST_PTHABS_PROPFULL); $g1 = (!isset($gal[1]) && isset($gal[0]) ? 0 : 1); - $CSS[0] = ''; - $URLIST = 'url(\''.$imgpth.$gal[$g1]['t'].'\')'; + $stime = intval($EST_PREF['slideshow_time']); + $actv = $EST_PREF['slideshow_act']; + $sdelay = intval($EST_PREF['slideshow_delay']); + $iStep = round(99 / $galCt, 2); + $pths = estImgPaths($gal[$g1]); + $CSS[0] = ''; + $URLIST = 'url(\''.$pths[0].'\')'; if(intval($actv) == 1 && $galCt > 1){ $aniName = str_replace('.','',str_replace('#','',$cssName)); @@ -618,11 +685,16 @@ function estViewImgCSS($cssName,$gal,$loc=1){ $fi = 0; foreach($gal as $ik=>$idta){ $fi++; - if($fi > $g1){$URLIST .= ',url(\''.$imgpth.$idta['t'].'\')';} - $CSS[1] .= ' - '; + $pths = estImgPaths($idta); + + if($fi > $g1){$URLIST .= ',url(\''.$pths[0].'\')';} + if($idta['v'] == 1 || $idta['v'] == 2){ + $CSS[1] .= ' + '; + } + $CSS[2][$ik] = $idta['t']; - $galCSS .= $iPct.'%'.($fi == 1 ? ', 100%' : '').' {background-image: url("'.$imgpth.$idta['t'].'");} + $galCSS .= $iPct.'%'.($fi == 1 ? ', 100%' : '').' {background-image: url("'.$pths[0].'");} '; $iPct = ($iStep + $iPct); } @@ -644,8 +716,10 @@ function estViewImgCSS($cssName,$gal,$loc=1){ '.$galCSS.'}'; } elseif($galCt == 1){ - $CSS[1] .= ' - '; + if($gal[$g1]['v'] == 1 || $gal[$g1]['v'] == 2){ + $CSS[1] .= ' + '; + } } $CSS[0] .= ' '.$cssName.'{ diff --git a/estate_shortcodes.php b/estate_shortcodes.php index 7d97b7f..8f4a3b3 100644 --- a/estate_shortcodes.php +++ b/estate_shortcodes.php @@ -142,7 +142,13 @@ function sc_prop_map_agydta($parm){ else{return '';} } - + //PROP_THMSTY + function sc_prop_subdivname($parm){ + if(trim($this->var['subd_name']) !== ""){ + return e107::getParser()->toHTML(''.$this->var['subd_name'].''); + } + } + function sc_prop_modelname($parm){ if(trim($this->var['prop_modelname']) !== ""){return '"'.e107::getParser()->toHTML($this->var['prop_modelname']).'"';} } @@ -233,12 +239,7 @@ function sc_prop_citystate($parm){ return $tp->toHTML($this->var['city_name']).(trim($this->var['state_init']) ? ', '.$this->var['state_init'] : ''); } - function sc_prop_subdivname($parm){ - if(intval($this->var['prop_subdiv']) > 0){ - $ret = ''.e107::getParser()->toHTML($GLOBALS['EST_SUBDIV'][$this->var['prop_subdiv']]['subd_name']).''; - } - return $ret; - } + function sc_prop_thmsty($parm){ if(trim($this->var['img'][1]['t']) !== ''){ @@ -532,49 +533,288 @@ function sc_view_spaces($parm){ + function sc_prop_hoadisclaimers($parm){ + $tp = e107::getParser(); + $subapr = intval($this->var['subdiv']['subd_hoaappr']); + $subreq = intval($this->var['subdiv']['subd_hoareq']); + $subfee = intval($this->var['subdiv']['subd_hoafee']); + $subfrq = intval($this->var['subdiv']['subd_hoafrq']); + $sublnd = intval($this->var['subdiv']['subd_hoaland']); + + $hoaapr = intval($this->var['prop_hoaappr']); + $hoareq = intval($this->var['prop_hoareq']); + $hoafee = intval($this->var['prop_hoafee']); + $hoafrq = intval($this->var['prop_hoafrq']); + $hoalnd = intval($this->var['prop_hoaland']); + + $liarr = array(); + if($hoaapr == 1 || $hoareq > 0|| $hoafee > 0 || $hoalnd > 0){array_push($liarr,'¹'.EST_PROP_HOADISCLAIMER);} + if($subfee > 0 || $hoafee > 0){array_push($liarr,'²'.EST_PROP_HOADISCLAIMER1.' '.EST_PROP_HOADISCLAIMER0.' '.EST_PROP_HOADISCLAIMER2);} + if($subapr == 1 || $hoaapr == 1){array_push($liarr,'³'.EST_PROP_HOADISCLAIMER3.' '.EST_PROP_HOADISCLAIMER0);} + + if(intval($this->var['prop_landfee']) > 0){ + array_push($liarr,'⁴'.EST_PROP_HOADISCLAIMER4); + } + + if(count($liarr) > 0){ + $txt = '
'; + foreach($liarr as $k=>$v){$txt .= '

'.$tp->toHTML($v).'

';} + $txt .= '
'; + + return $txt; + } + + if($this->var['prop_hoareq'] == 1 || $this->var['subd_hoaappr'] == 1 || $this->var['subd_hoareq'] == 1){ + + } + unset($subapr,$subreq,$subfee,$subfrq,$sublnd,$hoaapr,$hoareq,$hoafee,$hoafrq,$hoalnd); + } + + + + + + + function sc_prop_hoa($parm){ $tp = e107::getParser(); - if($this->var['prop_hoaappr'] == 1 || $this->var['prop_hoareq'] == 1 || intval($this->var['prop_hoafee']) > 0){ + $subapr = intval($this->var['subdiv']['subd_hoaappr']); + $subreq = intval($this->var['subdiv']['subd_hoareq']); + $subfee = intval($this->var['subdiv']['subd_hoafee']); + $subfrq = intval($this->var['subdiv']['subd_hoafrq']); + $sublnd = intval($this->var['subdiv']['subd_hoaland']); + + $hoaapr = intval($this->var['prop_hoaappr']); + $hoareq = intval($this->var['prop_hoareq']); + $hoafee = intval($this->var['prop_hoafee']); + $hoafrq = intval($this->var['prop_hoafrq']); + $hoalnd = intval($this->var['prop_hoaland']); + + $liarr = array(); + + if($subapr !== 1 && $hoaapr == 1){ + $liarr[0] = ''.EST_GEN_HOAAPPR2.'³'; + } + + + if($hoareq !== $subreq){ + if($hoareq == 1){$liarr[1] = EST_GEN_HOAREQ1;} + else{$liarr[1] = EST_GEN_HOAREQ2;} + } + + + if($hoafee !== $subfee){ + if($hoafee > 0){ + $liarr[2] = ''.EST_PROP_HOAFEES.': '.$hoafee.($hoafrq > 0 ? ' '.EST_HOAFREQ[$hoafrq] : '').($hoalnd == 1 ? ' '.$GLOBALS['EST_HOALAND'][1][$hoalnd] : '').'²'; + } + } + + $landfee = intval($this->var['prop_landfee']); + $landfrq = intval($this->var['prop_landfreq']); + if($landfee > 0){ + $liarr[3] = ''.EST_PROP_LANDLEASE.': '.$landfee.' '.($landfrq > 0 ? ' '.$GLOBALS['EST_HOAFREQ'][$landfrq] : '').'⁴'; + } + + + if(count($liarr) > 0){ $txt = ' -

'.EST_GEN_HOADEF2.'¹

- '; +

'.EST_GEN_HOADEF2.'¹

+ '; } + + unset($subapr,$subreq,$subfee,$subfrq,$sublnd,$hoaapr,$hoareq,$hoafee,$hoafrq,$hoalnd); return $txt; } - function sc_prop_hoadisclaimers($parm){ - $tp = e107::getParser(); - if($this->var['prop_hoaappr'] == 1 || $this->var['prop_hoareq'] == 1 || intval($this->var['prop_hoafee']) > 0 || $this->var['subd_hoaappr'] == 1 || $this->var['subd_hoareq'] == 1 || intval($this->var['subd_hoafee']) > 0){ - return ' -
-

¹'.EST_PROP_HOADISCLAIMER.'

- '.($this->var['prop_hoafee'] > 0 || intval($this->var['subd_hoafee']) > 0 ? '

²'.EST_PROP_HOADISCLAIMER1.' '.EST_PROP_HOADISCLAIMER0.' '.EST_PROP_HOADISCLAIMER2.'

' : '').' - '.($this->var['prop_hoaappr'] == 1 || $this->var['subd_hoaappr'] == 1 ? '

³'.EST_PROP_HOADISCLAIMER3.' '.EST_PROP_HOADISCLAIMER0.'

' : '').' -
'; + + + + + + + + + + + function sc_community_slideshow($parm){ + if(isset($this->var['subdiv']['media']) && count($this->var['subdiv']['media']) > 0){ + return '
'; + } + } + + function sc_comminuty_name($parm){ + return e107::getParser()->toHTML($this->var['subdiv']['subd_name'],true); + } + + function sc_community_url($parm){ + if(trim($this->var['subdiv']['subd_url']) !== "" && $this->var['subdiv']['subd_url'] !== $this->var['subdiv']['subd_hoaweb']){ + return e107::getParser()->makeClickable($this->var['subdiv']['subd_url'],'url',array('ext'=>1)); + } + } + + function sc_community_type($parm){ + return e107::getParser()->toHTML(EST_GEN_SUBDIVTYPE[$this->var['subdiv']['subd_type']]); + } + + + function sc_community_desc($parm){ + if(trim($this->var['subdiv']['subd_description']) !== ''){ + return e107::getParser()->toHTML($this->var['subdiv']['subd_description'],true); + } + } + + + + function sc_community_hoa($parm){ + $tp = e107::getParser(); + + $subapr = intval($this->var['subdiv']['subd_hoaappr']); + $subreq = intval($this->var['subdiv']['subd_hoareq']); + $subfee = intval($this->var['subdiv']['subd_hoafee']); + $subfrq = intval($this->var['subdiv']['subd_hoafrq']); + $sublnd = intval($this->var['subdiv']['subd_hoaland']); + + + $liarr = array(); + if(trim($this->var['subdiv']['subd_hoaweb']) !== "" && $this->var['subdiv']['subd_hoaweb'] == $this->var['subdiv']['subd_url']){ + $liarr['txt'][0] = '

'.$tp->makeClickable($this->var['subdiv']['subd_hoaweb'],'url',array('ext'=>1)).'

'; } + + if(trim($this->var['subdiv']['subd_hoaname']) !== '' && $this->var['subdiv']['subd_hoaname'] !== $this->var['subdiv']['subd_name']){ + $liarr['txt'][1] = '

'.$tp->toHTML($this->var['subdiv']['subd_hoaname'],true).' '.EST_GEN_HOMEOWNASS.'

'; + } + + if(trim($this->var['subdiv']['subd_url']) !== "" && $this->var['subdiv']['subd_url'] !== $this->var['subdiv']['subd_hoaweb']){ + $liarr['txt'][2] = '

'.$tp->makeClickable($this->var['subdiv']['subd_hoaweb'],'url',array('ext'=>1)).'

'; + } + + if($subapr == 1 || $subreq == 1 || $subfee > 0){ + $liarr['ul'][0] = ($subreq == 1 ? EST_GEN_HOAREQ1 : EST_GEN_HOAREQ2); + if($subfee > 0){ + $liarr['ul'][1] = ''.EST_PROP_HOAFEES.': '.$subfee.($subfrq > 0 ? ' '.EST_HOAFREQ[$subfrq] : '').'²'; + } + if($subapr == 1){ + $liarr['ul'][2] = ''.EST_GEN_HOAAPPR2.'³'; + } + } + + if(count($liarr) > 0){ + $txt = '';//'

'.EST_GEN_HOADEF1.'

'; + if(isset($liarr['txt']) && count($liarr['txt']) > 0){ + foreach($liarr['txt'] as $k=>$v){$txt .= $v;} + } + + if(isset($liarr['ul']) && count($liarr['ul']) > 0){ + $txt .= ''; + } + $txt .= ''; + } + return $txt; + unset($subapr,$subreq,$subfee,$subfrq,$sublnd,$txt); } function sc_prop_community($parm){ if(!isset($this->var['subdiv'])){return '';} - $tp = e107::getParser(); + if(!is_array($this->var['subdiv'])){return '';} + + $tp = e107::getParser(); - if($parm['get'] == 'capt'){return $tp->toHTML(EST_GEN_COMMUNITY.': '.$this->var['subdiv']['subd_name']);} + if($parm['get'] == 'capt'){ + if(intval($this->var['subdiv']['subd_idx']) == 0){return'';} + return $tp->toHTML(EST_GEN_COMMUNITY.': '.$this->var['subdiv']['subd_name']); + } - return estSubDivisionView($this->var['subdiv'],0); + + //$EST_HOAREQD[$subd_hoareq] + //EST_HOAFREQ + unset($CSSTOP); + return $txt; } - function sc_prop_community_sect($parm){ - if(!isset($this->var['subdiv'])){return '';} - $txt = $this->sc_prop_community($parm); - return '
'.e107::getRender()->tablerender(EST_GEN_COMMUNITY, $txt, 'community-section',true).'
'; - unset($capt, $txt); + function minithumb($v){ + if(isset($v['media']) && count($v['media']) > 0){ + $g1 = (!isset($v['media'][1]) && isset($v['media'][0]) ? 0 : 1); + $EST_PREF = e107::pref('estate'); + $galCt = count($v['media']); + if(intval($EST_PREF['slideshow_act']) == 1 && $galCt > 1){ + $cssName = 'estMiniThumb-'.intval($v['media'][$g1]['p']).'-'.intval($v['media'][$g1]['v']).'-'.intval($v['media'][$g1]['l']).'-img'; + $stime = intval($EST_PREF['slideshow_time']); + $sdelay = intval($EST_PREF['slideshow_delay']); + if($sdelay == 0){$sdelay = ($galCt > 7 ? ceil($galCt / 2) : 4);} + + $iStep = round(99 / $galCt, 2); + $iPct = 0; + foreach($v['media'] as $mk=>$mv){ + $pth = estImgPaths($mv); + if($mk == 0){ + $urlist = 'url(\''.$pth[0].'\')'; + $keyframes = '@keyframes '.$cssName.'{ + 0%, 100% {background-image: url("'.$pth[0].'");} + '; + } + else{ + $urlist .= ',url(\''.$pth[0].'\')'; + $keyframes .= $iPct.'% {background-image: url("'.$pth[0].'");} + '; + } + + $iPct = ($iStep + $iPct); + unset($mk,$mv); + } + return ' + +
'.$galCt.'
'; + unset($pth,$cssName,$urlist,$keyframes,$galCt,$sdelay,$stime); + } + else{ + $pth = estImgPaths($v['media'][0]); + return ' +
'; + unset($pth,$galCt); + } + } + else{ + return ' +
'; + } + } + + + function sc_community_spaces($parm){ + $tp = e107::getParser(); + if(isset($this->var['subdiv']['spaces']['subd'])){ + if(count($this->var['subdiv']['spaces']['subd']) > 0){ + foreach($this->var['subdiv']['spaces']['subd'] as $k=>$v){ + $txt .= ' +
+
'.$tp->toHTML($v['space_name'],true).'
'; + $txt .= $this->minithumb($v); + $txt .= ' +

'.$tp->toHTML($v['space_description'],true).'

+
'; + } + return $txt; + unset($txt,$k,$v); + } + } } @@ -622,9 +862,10 @@ function sc_spaces_menu($parm){ function sc_prop_newicon(){ - $tp = e107::getParser(); + //$tp = e107::getParser(); if(EST_USERPERM > 0){ - return '

'.EST_GEN_FULLADDLIST.' '.EST_GEN_QUICKADDLIST.'

'; + // '.EST_GEN_FULLADDLIST.'

'.EST_GEN_QUICKADDLIST.'

+ return ''; } if(intval($GLOBALS['EST_PREF']['public_act']) !== 0 && USERID > 0 && check_class($GLOBALS['EST_PREF']['public_act'])){ return ''; @@ -757,12 +998,10 @@ function estGetSeller(){ function sc_prop_agentcard($parm){ - //if(defined("ESTAGENTRENDERED")){return '
';} $tp = e107::getParser(); $EST_PREF = e107::pref('estate'); $AGENT = $this->estGetSeller(); - if($AGENT['error']){ if(ADMIN){e107::getMessage()->addWarning($AGENT['error']);} return; @@ -926,7 +1165,7 @@ function sc_prop_saved_list($parm){ function estPropStat($DTA){ - if(intval($DTA['prop_status']) == 5){$ret = (intval($DTA['prop_listype']) == 0 ? EST_GEN_OFFMARKET : EST_GEN_SOLD);} + if(intval($DTA['prop_status']) == 5){$ret = (intval($DTA['prop_listype']) == 0 ? EST_GEN_OFFMARKET : EST_GEN_SOLD);}//''; elseif(intval($DTA['prop_status']) == 4){$ret = EST_GEN_PENDING; $parm = '';} elseif(intval($DTA['prop_status']) == 3){$ret = $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']]; $parm = '';} elseif(intval($DTA['prop_status']) == 2){ @@ -949,55 +1188,6 @@ function estPropStat($DTA){ } - function estPriceDrop($DTA,$MODE){ - if(intval($DTA['prop_listprice']) !== intval($DTA['prop_origprice'])){ - $OPLP = round((1 -(intval($DTA['prop_listprice']) / intval($DTA['prop_origprice']))) * 100, 1); - if($MODE > 0){ - if($MODE == 1){return $OPLP;} - } - else{ - if($OPLP > 0){return '↓'.$OPLP.'%';} // style="color:#009900" - else{return'↑'.$OPLP.'%';} // style="color:#990000" - } - } - } - - - function estPropPrice($DTA,$NOADV=0){ - $tp = e107::getParser(); - $nf = new NumberFormatter('en_US', \NumberFormatter::CURRENCY); - $nf->setTextAttribute(NumberFormatter::CURRENCY_CODE, 'USD'); - $nf->setAttribute(\NumberFormatter::MAX_FRACTION_DIGITS, 0); - //EST_CURSYMB - - $ListPrice = $nf->format($DTA['prop_listprice']).($DTA['prop_listype'] == 0 ? '/'.$GLOBALS['EST_LEASEFREQ'][$DTA['prop_leasefreq']] : ''); - $ListPrice .= $this->estPriceDrop($this->var,0); - - if(ADMIN && (intval($DTA['prop_status']) < 2 || intval($DTA['prop_status']) > 4)){ - $ADMVIEW = ''.$ListPrice.''; - } - - if(intval($DTA['prop_status']) == 5){ - if($ADMVIEW){$ret = $ADMVIEW;} - } - elseif(intval($DTA['prop_status']) == 4 || intval($DTA['prop_status']) == 3){ - $ret = $ListPrice; - } - elseif(intval($DTA['prop_status']) == 2){ - if(intval($DTA['prop_datelive']) > 0 && intval($DTA['prop_datelive']) <= $GLOBALS['STRTIMENOW']){ - $ret = $ListPrice; - } - elseif(USERID > 0 && (intval($DTA['prop_dateprevw']) > 0 && intval($DTA['prop_dateprevw']) <= $GLOBALS['STRTIMENOW'])){ - $ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ListPrice; - } - elseif($ADMVIEW){$ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ADMVIEW;} - } - elseif(intval($DTA['prop_status']) == 1){ - if($ADMVIEW){$ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ADMVIEW;} - } - unset($nf,$ListPrice,$ADMVIEW); - return $ret; - } @@ -1007,7 +1197,7 @@ function sc_prop_status($parm = ''){ function sc_prop_price($parm = ''){ - return $this->estPropPrice($this->var); + return estGetListPrice($this->var);//$this->estPropPrice($this->var); } diff --git a/estate_sidebar_menu.php b/estate_sidebar_menu.php index 1f34444..f06c844 100644 --- a/estate_sidebar_menu.php +++ b/estate_sidebar_menu.php @@ -10,8 +10,7 @@ if (!defined('e107_INIT')) { exit; } if (!e107::isInstalled('estate')) { return; } -if(defined("EST_MENU_RENDERED")){return;} - +if(defined("EST_RENDERED_SIDEBARMENU")){return;} $EST_PREF = e107::pref('estate'); $tp = e107::getParser(); @@ -31,7 +30,7 @@ if(EST_USERPERM == 4){echo '
';} -echo '
'; +echo '
'; @@ -92,6 +91,6 @@ echo "
"; if(EST_USERPERM == 4){echo '';} -define("EST_MENU_RENDERED",true); +define("EST_RENDERED_SIDEBARMENU",1); unset($PREFTMP,$TEMPLATE,$tkey,$ns,$tp); ?> \ No newline at end of file diff --git a/estate_sql.php b/estate_sql.php index e4b69bf..2e3f599 100644 --- a/estate_sql.php +++ b/estate_sql.php @@ -49,6 +49,7 @@ `city_zip` text NOT NULL, `city_timezone` varchar(100) NOT NULL, `city_url` varchar(100) NOT NULL, + `city_description` text NOT NULL, PRIMARY KEY (`city_idx`) ) ENGINE=InnoDB; @@ -144,7 +145,6 @@ ) ENGINE=InnoDB; - CREATE TABLE `estate_likes` ( `like_idx` int(11) unsigned NOT NULL AUTO_INCREMENT, `like_pid` int(11) unsigned NOT NULL default '0', @@ -281,7 +281,6 @@ CREATE TABLE `estate_spaces` ( `space_idx` int(11) unsigned NOT NULL AUTO_INCREMENT, - `space_propidx` int(11) unsigned NOT NULL, `space_lev` tinyint(1) unsigned NOT NULL default '1', `space_levidx` int(11) unsigned NOT NULL, `space_grpid` int(11) unsigned NOT NULL, @@ -327,24 +326,18 @@ CREATE TABLE `estate_subdiv_spaces` ( - `subspace_idx` int(11) unsigned NOT NULL AUTO_INCREMENT, - `subspace_city` int(10) unsigned NOT NULL, - `subspace_subidx` int(10) unsigned NOT NULL, - `subspace_catid` int(11) unsigned NOT NULL, - `subspace_ord` tinyint(1) unsigned NOT NULL, - `subspace_name` varchar(55) NOT NULL, - `subspace_description` text NOT NULL, - PRIMARY KEY (`subspace_idx`) + `space_idx` int(11) unsigned NOT NULL AUTO_INCREMENT, + `space_lev` tinyint(1) unsigned NOT NULL default '4', + `space_levidx` int(11) unsigned NOT NULL, + `space_grpid` int(11) unsigned NOT NULL, + `space_catid` int(11) unsigned NOT NULL, + `space_ord` tinyint(1) unsigned NOT NULL, + `space_name` varchar(55) NOT NULL, + `space_description` text NOT NULL, + PRIMARY KEY (`space_idx`) ) ENGINE=InnoDB; -CREATE TABLE `estate_subdivcats` ( - `subdivcat_idx` int(11) unsigned NOT NULL AUTO_INCREMENT, - `subdivcat_zone` int(10) unsigned NOT NULL, - `subdivcat_name` varchar(50) NOT NULL, - PRIMARY KEY (`subdivcat_idx`) -) ENGINE=InnoDB; - CREATE TABLE `estate_user` ( `user_idx` int(10) unsigned NOT NULL AUTO_INCREMENT, diff --git a/listings.php b/listings.php index ec9c141..f62c97d 100644 --- a/listings.php +++ b/listings.php @@ -56,6 +56,7 @@ } +e107::meta('mobile-web-app-capable','yes'); // example e107::js('estate','js/Leaflet.markercluster/dist/leaflet.markercluster.js'); @@ -114,9 +115,9 @@ } -$MQRY = "SELECT #estate_properties.*, city_name, city_url, city_timezone, state_name, state_init, state_url, cnty_name, cnty_url, user_id,user_name,user_loginname,user_email,user_admin,user_perms,user_class,user_signature,user_image, #estate_agents.*, #estate_agencies.* FROM #estate_properties LEFT JOIN #estate_city ON city_idx = prop_city LEFT JOIN #estate_county ON cnty_idx = prop_county LEFT JOIN #estate_states ON state_idx = prop_state LEFT JOIN #estate_agents ON agent_idx = prop_agent LEFT JOIN #user ON (prop_agent = 0 AND user_id = prop_uidcreate) OR (agent_uid > 0 AND user_id = agent_uid) LEFT JOIN #estate_agencies ON (agent_agcy > 0 AND agency_idx = agent_agcy) OR (agent_agcy = 0 AND agency_idx = prop_agency)"; - +$MQRY = "SELECT #estate_properties.*, #estate_subdiv.subd_name, city_name, city_url, city_timezone, state_name, state_init, state_url, cnty_name, cnty_url, user_id,user_name,user_loginname,user_email,user_admin,user_perms,user_class,user_signature,user_image, #estate_agents.*, #estate_agencies.* FROM #estate_properties LEFT JOIN #estate_subdiv ON subd_idx = prop_subdiv LEFT JOIN #estate_city ON city_idx = prop_city LEFT JOIN #estate_county ON cnty_idx = prop_county LEFT JOIN #estate_states ON state_idx = prop_state LEFT JOIN #estate_agents ON agent_idx = prop_agent LEFT JOIN #user ON (prop_agent = 0 AND user_id = prop_uidcreate) OR (agent_uid > 0 AND user_id = agent_uid) LEFT JOIN #estate_agencies ON (agent_agcy > 0 AND agency_idx = agent_agcy) OR (agent_agcy = 0 AND agency_idx = prop_agency)"; + if($qs[0] == 'agent'){ @@ -267,7 +268,7 @@ estGetMeta($PROPDTA,$ESTDTA,1); - e107::meta('apple-mobile-web-app-capable','yes'); // example + //e107::meta('mobile-web-app-capable','yes'); // example $sc = e107::getScBatch('estate',true); $sc->setVars($PROPDTA[0]); @@ -558,20 +559,21 @@ function est_map_pins(){ $tp = e107::getParser(); $ARR1 = array('agcy'=>array(),'prop'=>array()); - if($pref['estate']['map_include_agency'] == 1){ + if(intval($GLOBALS['EST_PREF']['map_include_agency']) == 1){ + if($AGY = $sql->retrieve("SELECT #estate_agencies.* FROM #estate_agencies WHERE NOT agency_lat='' AND NOT agency_lon='' ",true)){ $i = 0; foreach($AGY as $k=>$v){ if(intval($v['agency_pub']) > 0){ $ARR1['agcy'][$i] = array( 'idx'=>$v['agency_idx'], - 'name1'=>$v['agency_name'], + 'name1'=>$tp->toHTML($v['agency_name']), 'name2'=>'', 'addr'=>$v['agency_addr'], 'lat'=>$v['agency_lat'], 'lon'=>$v['agency_lon'], 'thm'=>(intval($v['agency_imgsrc']) == 1 && trim($v['agency_image']) !== '' ? EST_PTHABS_AGENCY.$tp->toHTML($v['agency_image']) : $tp->thumbUrl($pref['sitelogo'],false,false,true)), - 'zoom'=>$pref['estate']['map_zoom_def'] + 'zoom'=>$GLOBALS['EST_PREF']['map_zoom_def'] ); $i++; } @@ -595,25 +597,29 @@ function est_map_pins(){ } else{ $i = 0; + $incs = (5 - intval($GLOBALS['EST_PREF']['map_include_sold'])); foreach($GLOBALS['EST_PROP'] as $k=>$v){ - //if(intval($v['prop_status']) > 1 && intval($v['prop_status']) < 5 && trim($v['prop_lat']) !== '' && trim($v['prop_lon']) !== ''){ - $ARR1['prop'][$i] = array( - 'drop'=>est_PinsPriceDrop($v,1), - 'feat'=>explode(',',$v['prop_features']), - 'idx'=>$v['prop_idx'], - 'lat'=>$v['prop_lat'], - 'lon'=>$v['prop_lon'], - 'lnk'=>EST_PTH_LISTINGS.'?view.'.intval($v['prop_idx']).'.0', - 'name1'=>$tp->toHTML($v['prop_name']), - 'prc'=>estPinsPrice($v,1), - 'sta'=>$tp->toHTML(estPinsPropStat($v)), - 'stat'=>intval($v['prop_status']), - 'thm'=>$v['img'][1]['t'], - 'type'=>$v['prop_listype'], - 'zoom'=>$v['prop_zoom'] - ); - $i++; - //} + if(intval($v['prop_status']) > 0){ + if(intval($v['prop_status']) <= $incs){ + $ARR1['prop'][$i] = array( + 'drop'=>estPriceDrop($v,1), + 'hue'=>estPinColor($v), + 'feat'=>explode(',',$v['prop_features']), + 'idx'=>$v['prop_idx'], + 'lat'=>$v['prop_lat'], + 'lon'=>$v['prop_lon'], + 'lnk'=>EST_PTH_LISTINGS.'?view.'.intval($v['prop_idx']).'.0', + 'name1'=>$tp->toHTML($v['prop_name']), + 'prc'=>estGetListPrice($v,1), + 'sta'=>$tp->toHTML(estPinsPropStat($v)), + 'stat'=>intval($v['prop_status']), + 'thm'=>$v['img'][1]['t'], + 'type'=>$v['prop_listype'], + 'zoom'=>$v['prop_zoom'] + ); + $i++; + } + } } } } @@ -622,56 +628,32 @@ function est_map_pins(){ } - - -function estPinsPrice($DTA,$NOADV=0){ - $tp = e107::getParser(); - $nf = new NumberFormatter('en_US', \NumberFormatter::CURRENCY); - $nf->setTextAttribute(NumberFormatter::CURRENCY_CODE, 'USD'); - $nf->setAttribute(\NumberFormatter::MAX_FRACTION_DIGITS, 0); - - $ListPrice = $nf->format($DTA['prop_listprice']).($DTA['prop_listype'] == 0 ? '/'.$GLOBALS['EST_LEASEFREQ'][$DTA['prop_leasefreq']] : ''); - $ListPrice .= est_PinsPriceDrop($DTA,0); - - if(ADMIN && (intval($DTA['prop_status']) < 2 || intval($DTA['prop_status']) > 4)){ - $ADMVIEW = ''.$ListPrice.''; - } - - if(intval($DTA['prop_status']) == 5){ - if($ADMVIEW){$ret = $ADMVIEW;} - } - elseif(intval($DTA['prop_status']) == 4 || intval($DTA['prop_status']) == 3){ - $ret = $ListPrice; - } - elseif(intval($DTA['prop_status']) == 2){ - if(intval($DTA['prop_datelive']) > 0 && intval($DTA['prop_datelive']) <= $GLOBALS['STRTIMENOW']){ - $ret = $ListPrice; - } - elseif(USERID > 0 && (intval($DTA['prop_dateprevw']) > 0 && intval($DTA['prop_dateprevw']) <= $GLOBALS['STRTIMENOW'])){ - $ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ListPrice; - } - elseif($ADMVIEW){$ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ADMVIEW;} - } - elseif(intval($DTA['prop_status']) == 1){ - if($ADMVIEW){$ret = ($NOADV == 0 ? $GLOBALS['EST_LISTTYPE1'][$DTA['prop_listype']] : '').' '.$ADMVIEW;} +function estPinColor($DTA){ + switch(intval($DTA['prop_status'])){ + case 5 : + return 'estMarkGray'; + break; + case 4 : + return 'estMarkYellow'; + break; + case 3 : + return null; + break; + case 2 : + return 'estMarkGreen'; + break; + case 1 : + return 'estMark'; + break; + case 0 : + return null; + break; } - unset($nf,$ListPrice,$ADMVIEW); - return $ret; } -function est_PinsPriceDrop($DTA,$MODE){ - if(intval($DTA['prop_listprice']) !== intval($DTA['prop_origprice'])){ - $OPLP = round((1 -(intval($DTA['prop_listprice']) / intval($DTA['prop_origprice']))) * 100, 1); - if($MODE > 0){ - if($MODE == 1){return $OPLP;} - } - else{ - if($OPLP > 0){return '↓'.$OPLP.'%';} // style="color:#009900" - else{return'↑'.$OPLP.'%';} // style="color:#990000" - } - } - } + + function estPinsPropStat($DTA){ if(intval($DTA['prop_status']) == 5){$ret = (intval($DTA['prop_listype']) == 0 ? EST_GEN_OFFMARKET : EST_GEN_SOLD);} diff --git a/plugin.xml b/plugin.xml index 382c730..933c387 100644 --- a/plugin.xml +++ b/plugin.xml @@ -31,12 +31,15 @@ us 0 1 + 0 + 0 1 2 0 New York, NY 320 1 + 1 1 sha256-o9N1jGDZrf5tS+Ft4gbIK7mYMipq9lqpVJ91xHSyKhg= https://unpkg.com/leaflet@1.9.2/dist/leaflet.js