home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!cis.ohio-state.edu!ucbvax!VAXA.ANGLIA-POLYTECHNIC.AC.UK!SYSTIMK
- From: SYSTIMK@VAXA.ANGLIA-POLYTECHNIC.AC.UK ("Ian Kitching, System Manager")
- Newsgroups: comp.os.vms
- Subject: Re: VAX Notes: Change moderator name/node?
- Message-ID: <9207270946.AA05457@ucbvax.Berkeley.EDU>
- Date: 27 Jul 92 09:39:00 GMT
- Sender: usenet@ucbvax.BERKELEY.EDU
- Organization: The Internet
- Lines: 80
-
- >From: munnari.oz.au!metro!seagoon.newcastle.edu.au!cc.newcastle.edu.au!
- > outafrl%net.uu.uunet
-
- >How can the moderator's name/node be modified?
-
- A crude procedure to do this follows.
-
- >If a large number of topics are deleted from a conference, can the disk
- >usage be consolidated and the file compressed? Would CONVERT do this job?
-
- Yes, CONVERT/RECLAIM, just as MAIL does. The DELETE_NOTES utility (available
- on the net but I've forgotten where) does this.
-
- Ian Kitching systimk@uk.ac.anglia-polytechnic.vaxa
- +++++
- $ ! P1 = conference (file name)
- $ ! P2 = new moderator username
- $ p1 = f$parse(p1,"notes$library:.note")
- $ p2 = f$edit(p2,"trim,upcase")
- $ if p2 .eqs. "" then p2 := 'f$getjpi(0,"username")
- $
- $ new_mod_node = "BRIDGE::" ! Default local node
- $ test = f$trnlnm("sys$cluster_node","lnm$system")
- $ if test .nes. "" then new_mod_node = test
- $
- $ new_mod = p2
- $ if f$locate("::",p2) .eqs. f$length(p2) then goto no_node
- $ new_mod_node = f$element(0,":",p2)
- $ new_mod = f$element(2,":",p2)
- $no_node:
- $
- $ on control_y then goto done
- $ open/read/write/share=write cf 'p1
- $
- $ key_0 = "1234"
- $ key_0[0,32] = %x10
- $ read/key=&key_0 cf line
- $
- $ title_pos = %x4e*8
- $ title_size = f$cvui(title_pos,8,line)
- $ title = f$extract((title_pos/8)+1,title_size,line)
- $
- $ mod_pos = title_pos + (title_size*8) + (3*8) ! Skip %x36df
- $ mod_size = f$cvui(mod_pos,8,line)
- $ moderator = f$extract((mod_pos/8)+1,mod_size,line)
- $
- $ new_value = new_mod_node + new_mod
- $ size = f$length(new_value)
- $ line[mod_pos,8] = size
- $ pos = (mod_pos/8) + 1
- $ line[pos,size] := 'new_value'
- $ write/update/sym cf line
- $
- $ ws f$fao("Conference: !AS",title)
- $ ws f$fao("Moderator changed from !AS to !AS",moderator,new_value)
- $ goto done
- $
- $ key_0 = %x101
- $ read/err=done/index=0/key=&key cf line
- $ mod_pos = %x4e*8
- $ mod_size = f$cvui(mod_pos,8,line)
- $ moderator = f$extract((mod_pos/8)+1,mod_size,line)
- $
- $ line[mod_pos,8] = f$length(new_mod)
- $ pos = (mod_pos/8) + 1
- $ line[pos,12] := 'new_mod'
- $
- $ node_pos = %x5d*8
- $ node_size = f$cvui(node_pos,8,line)
- $ node = f$extract((node_pos/8)+1,node_size,line)
- $
- $ size = f$length(new_mod_node)
- $ line[node_pos,8] = size
- $ pos = (node_pos/8) + 1
- $ line[pos,size] := 'new_mod_node'
- $ write/update/sym cf line
- $
- $done:
- $ close/nolog cf
-
-