Esempio n. 1
0
void WSVFlexTable::SetNullTipInfo(string strInfo)
{
	if(pNullTipTable)
	{	
		pNullTipTable->elementAt(0 , 0)->setContentAlignment(AlignTop | AlignCenter);
		WText * textInfo = new WText(strInfo, (WContainerWidget *)pNullTipTable->elementAt(0, 0));
		textInfo->decorationStyle().setForegroundColor(Wt::red); 
	}
}
Esempio n. 2
0
void IndexView::render() {
	clear();
	WTable *queryTable = new WTable(this);

	WLabel *label;
	int row = 0;

	// Title
	queryTable->elementAt(row, 0)->setColumnSpan(3);
	queryTable->elementAt(row, 0)->setContentAlignment(AlignTop | AlignCenter);
	queryTable->elementAt(row, 0)->setPadding(10);
	WText *title = new WText(("Leaked Password Query Kit"), queryTable->elementAt(row, 0));
	title->decorationStyle().font().setSize(WFont::XLarge);

	// error messages
	++row;
	queryTable->elementAt(row, 0)->setColumnSpan(3);
	feedbackMessages_ = queryTable->elementAt(row, 0);
	feedbackMessages_->setPadding(5);

	WCssDecorationStyle& errorStyle = feedbackMessages_->decorationStyle();
	errorStyle.setForegroundColor(Wt::red);
	errorStyle.font().setSize(WFont::Smaller);
	errorStyle.font().setWeight(WFont::Bold);
	errorStyle.font().setStyle(WFont::Italic);

	// User
	++row;
	keywordEdit_ = new WLineEdit(queryTable->elementAt(row, 2));
	label = new WLabel("Keyword:", queryTable->elementAt(row, 0));
	label->setBuddy(keywordEdit_);
	keywordEdit_->setValidator(new WValidator(true));
	keywordEdit_->enterPressed().connect(this, &IndexView::query);

	// Search Area
	++row;
	areaOption_ = new WSelectionBox(queryTable->elementAt(row, 2));
	areaOption_->addItem("Username");
	areaOption_->addItem("Password");
	areaOption_->setCurrentIndex(0);
	label = new WLabel("Keyword Type:", queryTable->elementAt(row,0));
	label->setBuddy(areaOption_);

	// DB to Search
	++row;
	dbOption_ = new WSelectionBox(queryTable->elementAt(row, 2));
	dbOption_->addItem("CSDN (6M)");
	dbOption_->addItem("RenRen (5M)");
	dbOption_->addItem("178 (10M)");
	dbOption_->addItem("7k7k (20M)");
	dbOption_->addItem("duduniu (10M)");
	dbOption_->addItem("duowan (10M)");
	dbOption_->addItem("MOP (10M)");
	dbOption_->addItem("Tianya (40M)");
	dbOption_->setCurrentIndex(0);
	label = new WLabel("Database:", queryTable->elementAt(row,0));
	label->setBuddy(dbOption_);

	// Search Method
	++row;
	methodOption_ = new WSelectionBox(queryTable->elementAt(row, 2));
	methodOption_->addItem("Header Match");
	methodOption_->addItem("Full-Text (1 Quota Per Minute Per IP)");
	methodOption_->setCurrentIndex(0);
	label = new WLabel("Search Method:", queryTable->elementAt(row,0));
	label->setBuddy(methodOption_);

	// Query
	++row;
	WPushButton *query = new WPushButton("Query",
		queryTable->elementAt(row, 0));
	query->clicked().connect(this, &IndexView::query);
	query->setMargin(15, Top);
	queryTable->elementAt(row, 0)->setColumnSpan(3);
	queryTable->elementAt(row, 0)->setContentAlignment(AlignTop | AlignCenter);

	// Set column widths for label and validation icon
	queryTable->elementAt(2, 0)->resize(WLength(30, WLength::FontEx), WLength::Auto);
	queryTable->elementAt(2, 1)->resize(20, WLength::Auto);

	// Result
	result_ = new WTable(this);
	result_->clear();
}
Esempio n. 3
0
CShowLog::CShowLog(WContainerWidget *parent):
WContainerWidget(parent)
{
	refreshCount=0;

	string strTemp1,strTemp2;
	OBJECT objRes=LoadResource("default", "localhost");  
	if( objRes !=INVALID_VALUE )
	{	
		MAPNODE ResNode=GetResourceNode(objRes);
		if( ResNode != INVALID_VALUE )
		{
			FindNodeValue(ResNode,"IDS_LogShow",strMainTitle);
			FindNodeValue(ResNode,"IDS_ReadLogError",strTemp1);
			FindNodeValue(ResNode,"IDS_MonitorLogContext",strTemp2);
		}
		CloseResource(objRes);
	}
	
	
	char buf_tmp[4096]={0};
    int nSize =4095;


	GetEnvironmentVariable( "QUERY_STRING", buf_tmp,nSize);
	//char * tmpquery;
	//tmpquery = getenv( "QUERY_STRING");
	//if(tmpquery)
	//	strcpy(buf_tmp,tmpquery);
	if(buf_tmp != NULL)
	{
		std::string buf1 = buf_tmp;
		int pos = buf1.find("=", 0);
		querystr = buf1.substr(pos+1, buf1.size() - pos - 1);
	}
	
	strPath = "";
	strPath += GetSiteViewRootPath();
	strPath += "\\data\\Temp\\";
	strPath += querystr;
	strPath += ".txt";

	string   strTemp; 
	string   strOutput;

	try
	{
		ifstream  Input(strPath.c_str(), ios::out); 
			//获取日志行数
			nTotleLine = 0;
			nCurLine = 0;
			nPageLine = 100;

		if(Input.is_open())
		{
		
			while(!Input.eof())   
			{   
				nTotleLine++;
				getline(Input, strTemp , '\n');
				//puts(strTemp.c_str());
			}

			Input.close(); 
		}
		
		//获取日志最新100行数数据
		nStartLine = nTotleLine - nPageLine;

		//Input.open(strPath.c_str(), ios::out, 0);

		ifstream  Input1(strPath.c_str(), ios::out); 
		if(Input1.is_open())
		{
			while(!Input1.eof())   
			{   
				if(nTotleLine <= nPageLine)
				{
					getline(Input1, strTemp , '\n');
					strOutput += strTemp;
					strOutput += "\n";
				}
				else
				{
					if(nCurLine >=  nStartLine)
					{
						getline(Input1, strTemp , '\n');
						strOutput += strTemp;
						strOutput += "\n";
					}
					else
						getline(Input1, strTemp , '\n');
					
					nCurLine++;
				}
			}

			Input1.close(); 
		}

	}
	catch(...)
	{
		strOutput = strTemp1;
	}

	WTable * pContainTable = new WTable(this);
	
	//日志标题
	string strLogTitle = GetDeviceTitle(querystr);
	strLogTitle += ":";
	strLogTitle += GetMonitorPropValue(querystr, "sv_name");
	strLogTitle += strTemp2;


	pContainTable ->setStyleClass("t5");
	//pContainTable->setStyleClass("StatsTable");
	WText * pReportTitle = new WText(strLogTitle, (WContainerWidget*)pContainTable->elementAt(0, 0));
	pContainTable->elementAt(0, 0)->setContentAlignment(AlignTop | AlignCenter);
	WFont font1;
	font1.setSize(WFont::Large, WLength(60, WLength::Pixel));
	pReportTitle ->decorationStyle().setFont(font1);


	//日志内容
	WTextArea * pStateTextArea = new WTextArea(strOutput, (WContainerWidget*)pContainTable->elementAt(1, 0));
	//pContainTable->elementAt(1, 0)->setStyleClass("t5");
	pContainTable->elementAt(1, 0)->resize(WLength(100,WLength::Percentage), WLength(100,WLength::Percentage));
	pStateTextArea->setRows(nPageLine);
	pStateTextArea->setColumns(60);
	pStateTextArea ->setStyleClass("testingresult2");
	//pStateTextArea->resize(WLength(100,WLength::Percentage), WLength(100,WLength::Percentage));
	pStateTextArea->resize(WLength(100,WLength::Percentage), WLength(100,WLength::Percentage));

	strcpy(pStateTextArea->contextmenu_ , "readonly=\"readonly\"");

	//strPageTitle = "";
	//new WText("日志内容:", pMainTable->elementAt(4, 0));
	//new WText(strOutput, pMainTable->elementAt(2,0));

	//版权信息
	WText * bottomTitle = new WText("Copyright SiteView", pContainTable->elementAt(2, 0));
	bottomTitle ->decorationStyle().setFont(font1);
	pContainTable->elementAt(2, 0)->setContentAlignment(AlignTop | AlignCenter);
	bottomTitle->decorationStyle().setForegroundColor(Wt::blue);
}