home *** CD-ROM | disk | FTP | other *** search
/ The Devil's Doorknob BBS Capture (1996-2003) / devilsdoorknobbbscapture1996-2003.iso / Dloads / WWIVMODS / PRE412.ZIP / ELRIC2.MOD < prev    next >
Text File  |  1990-04-21  |  6KB  |  192 lines

  1. Hello again. This is my whopping second attempt at a mod, with the third one
  2. coming up soon....
  3. I got really tired of people leaving their first name as their real name. I
  4. want the whole thing, so I decided to do a little friendly persuasion.....
  5. What it does is....
  6.    1. Ask them firmly but politely for their entire real name.
  7.    2. Give you a way to delete their real name, so .......
  8.    3. At logon, if they you have nuked thier name, they are forced to re-enter
  9.        their name, much like forcing them to re-enter their date of birth.
  10.  
  11. ============================================================================
  12.  
  13. /** this step is indeed a form step, much like a form letter **/
  14. 1. From DOS, in your dir where you keep your source....
  15.  
  16. PKZIP SOURCE *.c *.h
  17.  
  18. If you already have a source zip file, then
  19.  
  20. PKZIP -f source *.c *.h
  21.  
  22. This way you have a copy of everything before you screw it up with a bad mod.
  23. If you decide to take the mod out, it's as easy as
  24. PKUNZIP -x source
  25.  
  26. and hit Y to overwrite any files you changed.
  27.  
  28. /** we now resume our regularly scheduled mod with step 2.... **/
  29.  
  30.  
  31.  
  32.  
  33. Key
  34. == existing line
  35. ++ add this line
  36. -- subtract line
  37. ** change line
  38. =============================================================================
  39.  
  40. Next, in NEWUSER.C
  41.  
  42.  
  43. ==    void input_realname()
  44. ==    {
  45. ==      do {
  46. ==        nl();
  47. --        if (syscfg.sysconfig& sysconfig_no_alias)
  48. --          pl("Enter the city and state you live in.");
  49. --        else
  50. --        {
  51. **      pl("Enter your ENTIRE REAL name.");
  52. ++      pl("Not just your first name, but the whole thing");
  53. ++      pl("(or at least as much as you can fit into 20 chars..)");
  54. --          }
  55. ==        outstr(":");
  56. ==        inputl(thisuser.realname,20);
  57. ==    
  58. ==        if (thisuser.realname[0]==0) {
  59. ==          nl();
  60. --          if (syscfg.sysconfig & sysconfig_no_alias)
  61. --              pl("Sorry, you must enter your city and state.");
  62. --          else
  63. ++        pl("Sorry, you must enter your entire real name.");
  64. ==        }
  65. ==      } while ((thisuser.realname[0]==0) && (!hangup));
  66. ==    }
  67.  
  68.  
  69.  
  70. ==============================================================================
  71. Next, load up SYSOPF.C
  72.  
  73. First, up in the var declarations, add ch2 to the list of chars.....
  74.  
  75.  
  76. ==    void uedit(int usern, int other)
  77. ==    {
  78. **      char s[81],s1[81],s2[81],ch,ch1,ch2;
  79. ==      int i,i1,i2,i3,un,done,nu,done1,full,temp_full,tempu;
  80. ==      userrec u;
  81.  
  82.  
  83.  
  84. Now, I changed things so I could Zap out their real name, and make them 
  85. re-enter it, since I probably don't know what it is. Then, every once in a 
  86. while, I can go through the list and nuke the real names of people who didn't 
  87. bother with their last name the first time......
  88. There is a good reason why I chose to do it this way, because I also will be 
  89. sending out the new and improved FROM mod, and it adds zapping their city and
  90. street and zip code......You could easily add on things like their computer 
  91. type or something by setting it to some unkown/invalid value (I think, 
  92. I haven't bothered to really look into it. The things you don't want to Zap 
  93. like this would be things like name/alias, password, and phone number...makes
  94. it hard for them to get back on to change them........)
  95.  
  96. ==            case '~':
  97. ==              u.ass_pts=0;
  98. ==              write_user(un,&u);
  99. ==              break;
  100. ==         case ':':
  101. /* (get rid of whatever was here, and make it match this) */
  102. ++           do {
  103. ++           nl();
  104. ++           pl("Zap info....");
  105. ++           pl("1. Realname");
  106. ++           pl("2. Birthday");
  107. ++           pl("Q. quit");
  108. ++           ch2=onek("Q12");
  109. ++           switch(ch2) {
  110. ++               case '1':u.realname[0]=0;
  111. ++                write_user(un,&u);
  112. ++                break;
  113. ++               case '2':u.year=0;
  114. ++                write_user(un,&u);
  115. ++                break;
  116. ++            }
  117. ++           }while ((!hangup) && (ch2!='Q'));
  118. ==          }
  119. ==        } while ((!done1) && (!hangup));
  120. ==      } while ((!done) && (!hangup));
  121. ==      close_user();
  122.  
  123.  
  124. =============================================================================
  125. Ok, now go to BBSUTL.C, and look down near the bottom of void logon
  126.  
  127.  
  128. ==      pl("Please enter the following information:");
  129. ==      do {
  130. ==        nl();
  131. ==        input_age(&thisuser);
  132. ==        sprintf(s,"%02d/%02d/%02d",(int) thisuser.month,
  133. ==                                (int) thisuser.day,
  134. ==                                (int) thisuser.year);
  135. ==        nl();
  136. ==        prompt("Birthdate: ",s,".  Correct? ","");
  137. ==        if (!yn())
  138. ==          thisuser.year=0;
  139. ==      } while ((!hangup) && (thisuser.year==0));
  140. ==      topscreen();
  141. ==      nl();
  142. ==    }
  143. ==
  144. ++    if (thisuser.realname[0]==0){
  145. ++     do {
  146. ++     nl();
  147. ++     pl("I seem to have lost part of your file.....");
  148. ++     input_realname();
  149. ++     nl();
  150. ++     pl("Did you get that entered correctly? (Y/N)");
  151. ++     if (!yn())
  152. ++    thisuser.realname[0]=0;
  153. ++     } while ((!hangup) && (thisuser.realname[0]==0));
  154. ++     pl("Thank you for getting that to me");
  155. ++     }
  156. ==
  157. ==
  158. ==
  159. ==    rsm(usernum,&thisuser);
  160. ==    if (thisuser.waiting) {
  161. ==      prt(5,"Read your mail now? ");
  162. ==      if (yn())
  163. ==        readmail();
  164. ==    }
  165.  
  166. Ok, now just compile it, and away you go.
  167.  
  168.  
  169. /** hey, it's the form info file **/
  170. As usual, I take no responsibility for hard drive crashes, death in the
  171. family, or end of the world as we know it resulting from this mod.
  172.  
  173. It's your fault if you didn't back up the files before you made the mod.
  174.  
  175. It's your fault if you don't back up your ENTIRE hard drive AT LEAST once
  176. a month.
  177.  
  178. It works on my system with Turbo C 2.0, WWIV 4.1, V20/8088, 640K/640EMS.
  179.  
  180. If you use this, the only payment I ask is that you send me a note through
  181. WWIVLink to 1@18251 saying you are using it...not too much to ask is it?
  182.  
  183. The Kingdom of Melnibone(LINK/NET)
  184. 812-877-3488  24 Hrs a day
  185. 3/12/2400/4800/9600/12,000/14,400 baud HST MNP5
  186. Auto-validation of WWIV sysops on first call
  187. Xmodem, Ymodem, DSZ Zmodem with retry, Ymodem-G
  188.  
  189. WWIV Link  1@18251
  190.  
  191. WWIV Net   1@8251
  192.