diff --git a/cck/ib/Helpmenu.cpp b/cck/ib/Helpmenu.cpp index 5debc034a30b..f9dcc8e4ce57 100644 --- a/cck/ib/Helpmenu.cpp +++ b/cck/ib/Helpmenu.cpp @@ -71,3 +71,201 @@ void CreateHelpMenu (void) Hlp.close(); } + +// This function creates the file "mailaccount.rdf" to customize the Mail account +void CreateIspMenu(void) +{ + CString root = GetGlobal("Root"); + CString config = GetGlobal("CustomizationList"); + CString IspPath = root + "\\Configs\\" + config + "\\Temp\\";//ISpPath=CCKTool\Configs\configname\Temp + + _mkdir (IspPath); + CString ispDomainName = GetGlobal("DomainName"); + CString ispPrettyName = GetGlobal("PrettyName"); + CString ispLongName = GetGlobal("LongName"); + CString ispInServer = GetGlobal("IncomingServer"); + CString ispOutServer = GetGlobal("OutgoingServer"); + CString ispPortNumber = GetGlobal("PortNumber"); + CString serverType = GetGlobal("Serverlist"); + if (serverType == "POP") + serverType = "pop3"; + if (serverType == "IMAP") + serverType = "imap"; + CString popMessage = GetGlobal("PopMessages"); + if (popMessage == "0") // check if "leave messages on server" option is set + popMessage = "false"; + else if (popMessage == "1") + popMessage = "true"; + + // mailaccount.rdf file is created only if values are entered for all the fields in the CCK mail UI + if (!( (ispDomainName.IsEmpty()) || (ispPrettyName.IsEmpty()) || (ispLongName.IsEmpty()) || (ispInServer.IsEmpty()) || (ispOutServer.IsEmpty()) || (ispPortNumber.IsEmpty()) )) + { + CString IspFile = IspPath +"mailaccount.rdf"; + ofstream Isp(IspFile); + + char *shortname; + char tempdomain[25]; + strcpy(tempdomain,ispDomainName); + shortname = strtok(tempdomain,"."); + + if (!Isp) + { + cout << "The file cannot be opened \n"; + } + else + { + + Isp <<"<\?xml version=\"1.0\"\?>\n"; + Isp <<"\n\n"; + Isp <<"\n"; + Isp <<" \n"; + Isp <<" \n\n"; + + Isp <<" \n"; + Isp <<" \n"; + Isp <<" \n"; + Isp <<" " << ispPrettyName << "\n"; + Isp <<" " << ispInServer << "\n"; + Isp <<" " << serverType << "\n"; + Isp <<" " << ispPortNumber << "\n"; + Isp <<" false\n"; + if (serverType == "pop3") + { + Isp <<" \n"; + Isp <<" \n"; + Isp <<" " << popMessage << "\n"; + Isp <<" false\n"; + Isp <<" \n"; + Isp <<" \n"; + } + Isp <<" \n"; + Isp <<" \n\n"; + + Isp <<" \n"; + Isp <<" \n"; + Isp <<" \n"; + Isp <<" false\n"; + Isp <<" false\n"; + Isp <<" \n"; + Isp <<" \n\n"; + + Isp <<" \n"; + Isp <<" \n"; + Isp <<" " << ispOutServer << "\n"; + Isp <<" \n"; + Isp <<" \n\n"; + + Isp <<" true\n"; + Isp <<" ture\n"; + Isp <<" true\n\n"; + + Isp <<" true\n"; + Isp <<" " << shortname << "\n"; + Isp <<" " << ispLongName << "\n"; + Isp <<" true\n"; + Isp <<" true\n"; + Isp <<" " << ispDomainName << "\n"; + Isp <<" username@" << ispDomainName << "\n"; + Isp <<" username\n"; + Isp <<" user name\n"; + Isp <<" User name:\n"; + Isp <<" false\n"; + Isp <<" \n"; + Isp <<" \n"; + Isp <<"\n\n"; + Isp <<"\n"; + } + Isp.close(); + } +} + +// This function creates the file "newsaccount.rdf" to customize the News account +void CreateNewsMenu(void) +{ + CString root = GetGlobal("Root"); + CString config = GetGlobal("CustomizationList"); + CString NewsPath = root + "\\Configs\\" + config + "\\Temp\\";//NewsPath=CCKTool\Configs\configname\Temp + + _mkdir (NewsPath); + CString newsDomainName = GetGlobal("nDomainName"); + CString newsPrettyName = GetGlobal("nPrettyName"); + CString newsLongName = GetGlobal("nLongName"); + CString newsInServer = GetGlobal("nIncomingServer"); + CString newsOutServer = GetGlobal("nOutgoingServer"); + CString newsPortNumber = GetGlobal("nPortNumber"); + + // newsaccount.rdf file is created only if values are entered for all the fields in the CCK News UI + if (!( (newsDomainName.IsEmpty()) || (newsPrettyName.IsEmpty()) || (newsLongName.IsEmpty()) || (newsInServer.IsEmpty()) || (newsOutServer.IsEmpty()) || (newsPortNumber.IsEmpty()) )) + { + CString NewsFile = NewsPath +"newsaccount.rdf"; + ofstream News(NewsFile); + + char *shortname; + char tempdomain[25]; + strcpy(tempdomain,newsDomainName); + shortname = strtok(tempdomain,"."); + + if (!News) + { + cout << "The file cannot be opened \n"; + } + else + { + News <<"<\?xml version=\"1.0\"\?>\n"; + News <<"\n\n"; + News <<"\n"; + News <<" \n"; + News <<" \n\n"; + + News <<" \n"; + News <<" \n"; + News <<" \n"; + News <<" " << newsPrettyName << "\n"; + News <<" " << newsInServer << "\n"; + News <<" nntp\n"; + News <<" " << newsPortNumber << "\n"; + News <<" false\n"; + News <<" \n"; + News <<" \n\n"; + + News <<" \n"; + News <<" \n"; + News <<" \n"; + News <<" false\n"; + News <<" false\n"; + News <<" \n"; + News <<" \n\n"; + + News <<" \n"; + News <<" \n"; + News <<" " << newsOutServer << "\n"; + News <<" \n"; + News <<" \n\n"; + + News <<" true\n"; + News <<" ture\n"; + News <<" true\n\n"; + + News <<" true\n"; + News <<" " << shortname << "\n"; + News <<" " << newsLongName << "\n"; + News <<" true\n"; + News <<" true\n"; + News <<" " << newsDomainName << "\n"; + News <<" username@" << newsDomainName << "\n"; + News <<" username\n"; + News <<" user name\n"; + News <<" User name:\n"; + News <<" false\n"; + News <<" \n"; + News <<" \n"; + News <<"\n\n"; + News <<"\n"; + } + News.close(); + } +}