Umfrage

Für jeden Benutzer neue Zahl regenerieren

CartID
0 (0%)
Zahl mit Datum berechnen
1 (100%)

Stimmen insgesamt: 1

Autor Thema: CartID für jeden Benutzer in ein Notes-Feld  (Gelesen 1879 mal)

Offline sylli1908

  • Frischling
  • *
  • Beiträge: 41
  • Geschlecht: Weiblich
CartID für jeden Benutzer in ein Notes-Feld
« am: 06.03.06 - 15:38:24 »
Ich habe hier ein JavaScript das mir für jeden Besucher der Internetseite eine Zahl anlegt die 10stellig wird und nicht fortlaufend von Besucher zu Besucher ist. (für einen Warenkorb notwendig)Das ganze sieht so aus:

function setZero(zahl) {
   return(("0" + zahl).substr((zahl>9) ,2));
}

function getCookie() {

   var datum = new Date();
   var Monat = Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
   var Wochentag = Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");

   if (datum.getMonth() < 11) {
      datum.setMonth(datum.getMonth() + 1);
   } else {
      datum.setMonth(0);
      datum.setFullYear(datum.getFullYear() + 1);
   }

   var exp = "cartid="+randomnum()+"; expires=" + Wochentag[datum.getDay()] + ", " + datum.getDate() + "-" + Monat[datum.getMonth()]+"-"+datum.getFullYear() + " " + setZero(datum.getHours())+":"+setZero(datum.getMinutes())+":"+setZero(datum.getSeconds());

   return(exp + cartID);
}

var cartID;

function initializepage() {
// alert ('Ich initialisiere....');
   //Look for CartID in cookie first
   var cookies=document.cookie;
   cartID = getcartid("cartid", cookies, ";");
   //If cookies aren't enabled, first determine if customer is coming from an external site.  If so, a new
   //CartID must be generated for them.  If they are changing pages within Liberty Fund, simply get the
   //CartID from the URL
   if (cartID==null) {
//      alert("referrer: "+document.referrer.toLowerCase().substring(0,52));
      // external call when cartid is missing (definition)

      if (document.location.href.toLowerCase().indexOf("cartid=") < 0)
   {
         cartID=randomnum();
        }
      else {
      var URLcartid = new String(document.URL);
      cartID=getcartid("cartid", URLcartid, "&");
        }
    }
    //Append CartID to all links on the current page, regardless of whether cookies are enabled or not   
    setlinks(cartID);
 }

function randomnum() {
      var TodaysDate=new Date();
      var rn = Math.floor(16000*Math.random()+1)+"-"+TodaysDate.getHours()+TodaysDate.getMinutes()+TodaysDate.getSeconds();
      return rn;
 }

// attach missing cartid (is necessary)
function setlinks(v) {
       for (var i = 0; i < document.links.length; i++) {
              //Use the search property of the link object to append the CartID
              var link = new String(document.links).toLowerCase();
              if( (link.toLowerCase().indexOf("mailto")<0) && (link.toLowerCase().indexOf("cartid=") < 0) && (link.toLowerCase().indexOf("javascript") < 0))
              {
                     document.links.search=document.links.search + "&CartID=" +v;
              }
       }
 } 

function getcartid(name, inputstring, trunc) {
        //Simply parses out CartID from either the cookie or URL passed to function
        inputstring = inputstring + trunc;
        inputstring = inputstring.toLowerCase();
        var start=inputstring.indexOf(name + "=");
        if (start>-1) {
             start=inputstring.indexOf("=", start)+1
           }
        var end = inputstring.indexOf(trunc, start);
        if (start==-1 || end==-1) {
              value=null
           }
        else {
              var value=unescape(inputstring.substring(start,end))
           }
        return value;
 }

genieal!!!!!!

Ich brauche nun ein Datenbankfeld für eine Notesanwendung, in der ebenfalls eine solche ID (ca 7-9 stellig) angelegt wird. Hat ein Genie unter Euch so etwas schon mal gemacht???? Ich bin dazu nicht in der Lage.  Hiiiiiiiiiiiilfe  .

klaussal

  • Gast
Re: CartID für jeden Benutzer in ein Notes-Feld
« Antwort #1 am: 06.03.06 - 15:49:14 »
Code
_number:=@ReplaceSubstring(@Text(@Time(@Now));":";"")
+"-"+ @ReplaceSubstring(@Text(@Date(@Today));".";"");
_supporter:=@Name([CN];@UserName);
_RequestNumber:=
@UpperCase(@Left(@Word(_supporter; " "; 1); 2) +
@Left(@Word(_supporter; " "; 2); 1)) +
_number;
FIELD OrderNumber := OrderNumber;
@If(@IsNewDoc;
@SetField("OrderNumber";_RequestNumber);"")

Ergibt etwas ähnliches....

Offline sylli1908

  • Frischling
  • *
  • Beiträge: 41
  • Geschlecht: Weiblich
Re: CartID für jeden Benutzer in ein Notes-Feld
« Antwort #2 am: 06.03.06 - 15:51:16 »
probier ich gleich mal .  dankeeeee

Offline sylli1908

  • Frischling
  • *
  • Beiträge: 41
  • Geschlecht: Weiblich
Re: CartID für jeden Benutzer in ein Notes-Feld
« Antwort #3 am: 06.03.06 - 15:57:08 »
funktioniert.   

danke nochmal

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz