rejetto forum

Software => HFS ~ HTTP File Server => Beta => Topic started by: rejetto on December 20, 2007, 05:20:03 PM

Title: Testing build #165
Post by: rejetto on December 20, 2007, 05:20:03 PM
i will document new things as soon as i can

download @ www.dovedove.it/hfs/hfs165.exe

what's new
+ new parameters for {{get}}: is new, can access
+ new template macros: breadcrumbs dec
+ {{and}} and {{or}} now works the pythonic way
+ customize the default template by putting a [style.user] section in the diff template of the root
+ optional parameter for {{!id}}
+ %folder-item-comment% has the same value of %item-comment% in [folder-comment]
- nested macro quoting was not supported
- %folder-resource% was not always working
- {{inc}} was not working with 1 parameter
- no more /~style flooding the log
Title: Re: Testing build #165
Post by: TSG on December 21, 2007, 10:01:26 AM
The entire macro system appears broken?
Title: Re: Testing build #165
Post by: rejetto on December 21, 2007, 11:44:36 AM
you may have a problem with your template.
give it to me.
Title: Re: Testing build #165
Post by: elans on December 21, 2007, 12:38:07 PM
i put "hfs.comments.txt"(saved as ANSI encode format by default) in a FOLDER
comments contain chinese/east-asian characters
the comments under Folder name display well, but
"folder-comment" as a title in the linked page has an encoding error, see attachment
Is the encoding way changed in the two pages?

Thanks for helping~~
Title: Re: Testing build #165
Post by: rejetto on December 21, 2007, 12:54:03 PM
fixed in next beta
Title: Re: Testing build #165
Post by: Foggy on December 21, 2007, 01:22:35 PM
The entire macro system appears broken?

Working fine for me.
Title: Re: Testing build #165
Post by: tosha on December 23, 2007, 07:02:08 AM
in Firefox all of pages are distorted... ???
ideally all works only in Opera
Title: Re: Testing build #165
Post by: elans on December 23, 2007, 07:23:09 AM
in Firefox all of pages are distorted... ???
ideally all works only in Opera
try to disable some "related" extensions....
                           ~~~~you may debug youself to discover.... ;D
Title: Re: Testing build #165
Post by: elans on December 23, 2007, 07:42:42 AM
fixed in next beta
in the default tpl, section [upload-success], "hfs.comment.txt" may/should be "hfs.comments.txt" , or it will be a exposed .txt file in the uploaded folder .
and
if i translate "uploaded by %user%" into chinese, it doesn't displays well in the newly builded "hfs.comments.txt", either, like i said on Reply #3
Title: Re: Testing build #165
Post by: tosha on December 23, 2007, 08:36:28 AM
clean setting Firefox 2.0.0.11 (no extensions)  :-\
Title: Re: Testing build #165
Post by: Foggy on December 23, 2007, 09:37:27 AM
If that is the default template, Its working fine for me Firefox 2.0.0.11
Title: Re: Testing build #165
Post by: rejetto on December 23, 2007, 10:33:51 PM
it works on my firefox too.
try to use "restore default" in the template.

in the default tpl, section [upload-success], "hfs.comment.txt" may/should be "hfs.comments.txt" , or it will be a exposed .txt file in the uploaded folder .

whooooops

Quote
if i translate "uploaded by %user%" into chinese, it doesn't displays well in the newly builded "hfs.comments.txt", either, like i said on Reply #3

i will work on this
Title: Re: Testing build #165
Post by: jerome on December 27, 2007, 11:38:59 AM
hello

i have a little troubles,
on the items comments, common styling with folder and files comments

i need to margin left+500 to get the smallest visual result on files comments
Example of files comment (http://82.239.5.248/1%20-%20Audio%20softs%20(%20RAR%20&%20ISO%20)/Audio%20Softs%20RaR%20Formated/?formbutton1=RAR)

i have modified this...

[special:begin]
{{set|item start|{{\
  <tr><td>
  {{if|{{get|is new}}|<span class=flag>&nbsp;NEW&nbsp;</span>}}
  {{if not|{{get|can access}}|<img src='/~img_lock'>}}
  <a href="%item-url%"><img src="/~img_$1" /> %item-name%</a>
  {{if| {{?search}} |{{\<div class=item-folder>{{!item folder}} <a href="%item-folder%">%item-folder%</div>/}} }}
  {{if| %item-comment% | <div class=itemcomment><div align=right width=55px0 top=-25px  >%item-comment%</div> }}
/}} /set}}

+

.itemcomment { font-size:7pt; color:#888; background:#FFF; padding:0px; border:0px solid #eeeeee; margin-top:-15px; margin-left:500px; }

but i also need to change the Html folder comment style to get Left="-500px"
Example of folder comment (http://82.239.5.248/1%20-%20Audio%20softs%20(%20RAR%20&%20ISO%20)/)


is it possible to make 2 dissociated Style in the template ?
one for files comments, one for folder comments ..... + left margin adjustable?,

.comments
.itemcomment ( actually take the comments style )


v 164 was better reacting for the style mix on my scripts,
v 165 need to adjust some html elements , i have try a lot of things not working
also my files icons are no good...all is blank on my machine
( maybe a reg cure clean result, it found some hfs key to erase in regedit)



other strange thing, if i use a JAVA script insert  SHOWING ONLY IN IE
the hyper links will not work in firefox , hided by the JAVA layer, if you don't place it z-index -1

The used moving elastic java effect script ... showing HFS stats using the %symbol%
Code: [Select]
<!-- java effect -->


<!--a custom elastic stat java effect for hfs, it dont like all flash insert-->


<style type="text/css">
/*----------Text Styles----------*/
.ws3 {font-size: 10px;}
.wpmd {font-size: 10px;font-family: 'Corbel';font-style: normal;font-weight: normal;}
/*----------Para Styles----------*/
DIV,UL,OL /* Left */
{
 margin-top: 0px;
 margin-bottom: 0px;
}
</style>


<div id="java-text-anim" style="position:absolute; overflow:hidden; left:15px; top:0px; width:100%; height:100%; z-index:-1">
<div id="adot0" style="position: absolute;visibility: hidden;"><I>Catch the hyper link java game</I></div>
<div id="adot1" style="position: absolute;"><I><font class="ws3" color="#666699"><B>{{!folders}}&nbsp;%number-folders%</B></font></I></div>
<div id="adot2" style="position: absolute;"><I><font class="ws3" color="#666699"><B>{{!files}}&nbsp;%number-files%</B></font></I></div>
<div id="adot3" style="position: absolute;"><I><font class="ws3" color="#666699"><B>{{!Total}}&nbsp;%total-size%</B></font></I></div>
<div id="adot4" style="position: absolute;"><I><font class="ws3" color="#666699"><B><a href="http://www.rejetto.com/hfs/">HttpFileServer </a></B></font></I></div>
<div id="adot5" style="position: absolute;"><I><font class="ws3" color="#666699"><B>%version%</B></font></I></div>
<div id="adot6" style="position: absolute;"><I><font class="ws3" color="#666699"><B>%timestamp%</B></font></I></div>
<div id="adot7" style="position: absolute;"><I><font class="ws3" color="#666699"><B>{{!Build-time}}&nbsp;%build-time%</B></font></I></div>


<script LANGUAGE="JavaScript">
<!--
var nDots = 8;
var Xbpos = 0;
var Ybpos = 0;

// fixed time step, no relation to real time
var DELTAT = .01;
// size of one spring in pixels
var SEGLEN = 10;
// spring constant, stiffness of springs
var SPRINGK = 10;
// all the physics is bogus, just picked stuff to make it look okay
var MASS = 1;
// Positive XGRAVITY pulls right, negative pulls left
// Positive YGRAVITY pulls down, negative up
var XGRAVITY = 0;
var YGRAVITY = 50;
// RESISTANCE determines a slowing force proportional to velocity
var RESISTANCE = 10;
// stopping criterea to prevent endless jittering
// doesn't work when sitting on bottom since floor
// doesn't push back so acceleration always as big
// as gravity
var STOPVEL = 0.1;
var STOPACC = 0.1;
var DOTSIZE = 11;
// BOUNCE is percent of velocity retained when
// bouncing off a wall
var BOUNCE = 0.75;

var isNetscape = navigator.appName=="Netscape";

// always on for now, could be played with to
// let dots fall to botton, get thrown, etc.
var followmouse = true;
var dots = new Array();

init();

function init()
{
    var i = 0;
    for (i = 0; i < nDots; i++) {
        dots[i] = new dot(i);
    }

    if (!isNetscape) {
        // I only know how to read the locations of the
        // <LI> items in IE
        //skip this for now
        //setInitPositions(dots)
    }

    // set their positions
    for (i = 0; i < nDots; i++) {
        dots[i].obj.left = dots[i].X;
        dots[i].obj.top = dots[i].Y;
    }


    if (isNetscape) {
        // start right away since they are positioned
        // at 0, 0
        startanimate();
    } else {
        // let dots sit there for a few seconds
        // since they're hiding on the real bullets
        setTimeout("startanimate()", 10);
    }
}

function dot(i)
{
    this.X = Xbpos;
    this.Y = Ybpos;
    this.dx = 0;
    this.dy = 0;
    if (isNetscape) {
        this.obj = eval("document.adot" + i);
    } else {
        this.obj = eval("adot" + i + ".style");
    }
}

function startanimate() {
    setInterval("animate()", 20);
}

// This is to line up the bullets with actual LI tags on the page
// Had to add -DOTSIZE to X and 2*DOTSIZE to Y for IE 5, not sure why
// Still doesn't work great
function setInitPositions(dots)
{
    // initialize dot positions to be on top
    // of the bullets in the <ul>
    var startloc = document.all.tags("Li");
    var i = 0;
    for (i = 0; i < startloc.length && i < (nDots - 1); i++) {
        dots[i+1].X = startloc[i].offsetLeft + startloc[i].offsetParent.offsetLeft - DOTSIZE;
        dots[i+1].Y = startloc[i].offsetTop + startloc[i].offsetParent.offsetTop + 2*DOTSIZE;
    }
    // put 0th dot above 1st (it is hidden)
    dots[0].X = dots[1].X;
    dots[0].Y = dots[1].Y - SEGLEN;
}

// just save mouse position for animate() to use
function MoveHandler(e)
{
    Xbpos = e.pageX;
    Ybpos = e.pageY;
    return true;
}

// just save mouse position for animate() to use
function MoveHandlerIE() {
    Xbpos = window.event.x + document.body.scrollLeft;
    Ybpos = window.event.y + document.body.scrollTop;
}

if (isNetscape) {
    document.captureEvents(Event.MOUSEMOVE);
    document.onMouseMove = MoveHandler;
} else {
    document.onmousemove = MoveHandlerIE;
}

function vec(X, Y)
{
    this.X = X;
    this.Y = Y;
}

// adds force in X and Y to spring for dot[i] on dot[j]
function springForce(i, j, spring)
{
    var dx = (dots[i].X - dots[j].X);
    var dy = (dots[i].Y - dots[j].Y);
    var len = Math.sqrt(dx*dx + dy*dy);
    if (len > SEGLEN) {
        var springF = SPRINGK * (len - SEGLEN);
        spring.X += (dx / len) * springF;
        spring.Y += (dy / len) * springF;
    }
}


function animate() {
    // dots[0] follows the mouse,
    // though no dot is drawn there
    var start = 0;
    if (followmouse) {
        dots[0].X = Xbpos;
        dots[0].Y = Ybpos;
        start = 1;
    }

    for (i = start ; i < nDots; i++ ) {

        var spring = new vec(0, 0);
        if (i > 0) {
            springForce(i-1, i, spring);
        }
        if (i < (nDots - 1)) {
            springForce(i+1, i, spring);
        }

        // air resisitance/friction
        var resist = new vec(-dots[i].dx * RESISTANCE,
            -dots[i].dy * RESISTANCE);

        // compute new accel, including gravity
        var accel = new vec((spring.X + resist.X)/MASS + XGRAVITY,
            (spring.Y + resist.Y)/ MASS + YGRAVITY);

        // compute new velocity
        dots[i].dx += (DELTAT * accel.X);
        dots[i].dy += (DELTAT * accel.Y);

        // stop dead so it doesn't jitter when nearly still
        if (Math.abs(dots[i].dx) < STOPVEL &&
            Math.abs(dots[i].dy) < STOPVEL &&
            Math.abs(accel.X) < STOPACC &&
            Math.abs(accel.Y) < STOPACC) {
            dots[i].dx = 0;
            dots[i].dy = 0;
        }

        // move to new position
        dots[i].X += dots[i].dx;
        dots[i].Y += dots[i].dy;

        // get size of window
        var height, width;
        if (isNetscape) {
            height = window.innerHeight + window.pageYOffset;
            width = window.innerWidth + window.pageXOffset;
        } else {
            height = document.body.clientHeight + document.body.scrollTop;
            width = document.body.clientWidth + document.body.scrollLeft;
        }

        // bounce off 3 walls (leave ceiling open)
        if (dots[i].Y >=  height - DOTSIZE - 1) {
            if (dots[i].dy > 0) {
                dots[i].dy = BOUNCE * -dots[i].dy;
            }
            dots[i].Y = height - DOTSIZE - 1;
        }
        if (dots[i].X >= width - DOTSIZE) {
            if (dots[i].dx > 0) {
                dots[i].dx = BOUNCE * -dots[i].dx;
            }
            dots[i].X = width - DOTSIZE - 1;
        }
        if (dots[i].X < 0) {
            if (dots[i].dx < 0) {
                dots[i].dx = BOUNCE * -dots[i].dx;
            }
            dots[i].X = 0;
        }

        // move img to new position
        dots[i].obj.left = dots[i].X;
        dots[i].obj.top =  dots[i].Y;
    }
}

 -->
</script></div>

<!-- end of java effect -->
#files td & #foldercomment {background:#transparent} to make a mozilla compatible + IE visual result OK


i will wait the next update to manage my codes.

Thank you massimo...for the beta try.
Title: Re: Testing build #165
Post by: jerome on December 27, 2007, 12:30:41 PM
i have found a solution... all is ok now for the style

.comment { font-size:7pt; color:#888; background:#transparent; padding:0px; border:0px solid #eeeeee; position:relative; }
.itemcomment { font-size:7pt; color:#888; background:#transparent; padding:0px; border:0px solid #eeeeee; margin-top:-15px; margin-left:20px; }

+
  {{if| %item-comment% | <div class=itemcomment><div align=right width=55px0 top=-25px >%item-comment%</div> }}

margin-top was not working for comment ( it take the itemcomment value ) but <br/> in the first comment line adjust the top size,

and finally make the job.


a good tool to learn css.
Title: Re: Testing build #165
Post by: ELEVENNNN on December 28, 2007, 01:48:09 AM
Hey, I havent been home for a week because of christmas (with family finally) so I'm back (not that anyone cares).  I'm two builds behind but I like this rejetto, good work as always:
Quote
+ customize the default template by putting a [style.user] section in the diff template of the root
Title: Re: Testing build #165
Post by: Avi on December 30, 2007, 04:20:17 AM
I downloaded your beta version rejetto. There are a lot of new function added. There is something stop spider? What is that?

Thxs for your great work regetto.
Title: Re: Testing build #165
Post by: Foggy on December 30, 2007, 08:08:35 AM
I cant remember the specific's but stop spider is supposed to stop web spiders such as search engine's from indexing your hfs to keep your files private.
Title: Re: Testing build #165
Post by: tosha on January 07, 2008, 11:39:58 AM
in Firefox all of pages are distorted... ???
ideally all works only in Opera

I found what an error was in....
in hfs.ini in line mime-types= absented *.css|text/css  ::)
Title: Re: Testing build #165
Post by: rejetto on January 07, 2008, 04:50:30 PM
it's there by default since 1-2 years at least.
but your saved default is older :)