GithubHelp home page GithubHelp logo

xe-public / xe-module-loginlog Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 5.0 873 KB

로그인 시 접속한 IP와 시간, 접속 환경을 기록하는 모듈입니다.

Home Page: https://www.xpressengine.com/index.php?mid=download&package_id=18905882

License: GNU General Public License v2.0

PHP 97.31% CSS 1.11% HTML 1.42% JavaScript 0.16%

xe-module-loginlog's Introduction

XpressEngine(XE) Loginlog Module

Latest release License

개요

이 소프트웨어는 로그인 시 접속한 IP와 시간, 접속 환경을 기록하는 모듈입니다.

이 소프트웨어는 GPL 을 채택한 오픈 소스 소프트웨어(OSS)로써 자유롭게 사용할 수 있는 자유 소프트웨어입니다. 이 라이선스의 조건을 준수하는 조건하에 누구나 자유롭게 사용할 수 있으며 개작 할 수 있습니다.

Maintainers

@smaker (SimpleCode)

Contributors

@smaker (SimpleCode) @bjrambo (BJRambo) @ned3y2k @misol (Misol) @soonjae (카르마)

Copyright (ko)

Copyright 2013 XE Public.

이 프로그램은 자유 소프트웨어입니다. 소프트웨어의 피양도자는 자유 소프트웨어 재단이 공표한 GNU 일반 공중 사용 허가서 2판 또는 그 이후 판을 임의로 선택해서, 그 규정에 따라 프로그램을 개작하거나 재배포할 수 있습니다.

이 프로그램은 유용하게 사용될 수 있으리라는 희망에서 배포되고 있지만, 특정한 목적에 맞는 적합성 여부나 판매용으로 사용할 수 있으리라는 묵시적인 보증을 포함한 어떠한 형태의 보증도 제공하지 않습니다. 보다 자세한 사항에 대해서는 GNU 일반 공중 사용 허가서를 참고하시기 바랍니다.

Copyright (en)

Copyright 2013 XE Public.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

xe-module-loginlog's People

Contributors

smaker avatar bjrambo avatar misol avatar ned3y2k avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar  avatar

xe-module-loginlog's Issues

로그인 기록 탭 숨기기 관련

관리 페이지의 "디자인"에서 로그인 기록 탭 숨기기 hideLoginlogTab의 값이 다음과 같이 되어 있는데

  • A: 모든 사용자에게 보이기
  • Y: 모든 사용자에게 숨기기
  • N: 관리자에게만 보이기

loginlog.controller.php의 triggerBeforeModuleInit()에는 다음과 같이 되어 있어서

if($config->design->hideLoginlogTab === 'Y' || ($config->design->hideLoginlogTab === 'N') && $logged_info->is_admin === 'Y')
{
	getController('member')->addMemberMenu('dispLoginlogHistories', 'cmd_view_loginlog');
}

실제로는 Y(모든 사용자에게 숨기기)일 때 로그인 기록 탭이 보이고 A(모든 사용자에게 보이기)일 때는 안 보입니다.

tpl/design.html에서 <option>의 텍스트를 서로 바꾸거나 트리거의 조건을 고치거나 해야겠습니다.

라이믹스 1.9 버전대와 호환 되지 않습니다.

라이믹스 1.8버전까지는 괜찮은데

member.doLogin before 시점에 작동하는 트리거 중 에러메시지 없이 그냥 에러를 반환 합니다.

번거로우시겠지만 패치 부탁드립니다.

감사합니다.

큐브리드 환경에서 기록이 되지 않는 문제

현재 환경이
Ubuntu 16.04
PHP 7.0.32-0ubuntu0.16.04.1
Cubrid 10.1 (10.1.0.7663-1ca0ab8) 64bit
XE Core 1.11.1
와 같이 구성되어 있습니다.

기존 php 5.7 + mysql 환경에서는 올바르게 기록이 되었고, 예전에도 큐브리드 환경에서(9.3?) 잘 기록이 되었던 기억이 있는데, 무슨 문제인지 지금은 기록이 되지 않는 것 같습니다.

5.7+mysql에서 이전한 경우와 새로 설치한 경우 두 가지 모두 기록이 되지 않는 것 같은데, DB가 달라 발생한 문제일까요?

php나 웹서버쪽에서도 별 다른 에러 로그는 보이지 않습니다.

아니면 제가 놓치고 있는 부분이 있나 싶어 여쭈어봅니다.

참고로 DB에서 조회한 스키마는 아래와 같습니다

CREATE TABLE *******_member_loginlog(
log_srl integer DEFAULT 0 NOT NULL,
member_srl integer NOT NULL,
user_id integer NOT NULL,
email_address integer NOT NULL,
ipaddress character varying(384) NOT NULL,
is_succeed character(3) DEFAULT 'Y  ' NOT NULL,
platform character varying(150) DEFAULT 'Unknown' NOT NULL,
browser character varying(150) DEFAULT 'Unknown' NOT NULL,
regdate character varying(14) NOT NULL,
CONSTRAINT pkey_*******_member_loginlog PRIMARY KEY(log_srl)
) COLLATE utf8_bin ;
CREATE INDEX idx_browser ON *******_member_loginlog(browser);
CREATE INDEX idx_email_address ON *******_member_loginlog(email_address);
CREATE INDEX idx_ipaddress ON *******_member_loginlog(ipaddress);
CREATE INDEX idx_is_succeed ON *******_member_loginlog(is_succeed);
CREATE INDEX idx_platform ON *******_member_loginlog(platform);
CREATE INDEX idx_regdate ON *******_member_loginlog(regdate);
CREATE INDEX idx_user_id ON *******_member_loginlog(user_id);
CREATE INDEX member_srl ON *******_member_loginlog(member_srl);

그리고 DB 로그 조회하니 다음과 같은 에러가 있네요.

18-10-31 00:31:12.956 (280561) prepare 8 INSERT  INTO "*******_member_loginlog"   ("log_srl", "member_srl", "ipaddress", "is_succeed", "platform", "browser", "regdate", "user_id", "email_address")   VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
18-10-31 00:31:12.957 (280561) prepare srv_h_id 13
18-10-31 00:31:12.957 (280561) set query timeout to 0 (no limit)
18-10-31 00:31:12.957 (280561) execute srv_h_id 13 INSERT  INTO "*******_member_loginlog"   ("log_srl", "member_srl", "ipaddress", "is_succeed", "platform", "browser", "regdate", "user_id", "email_address")   VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
18-10-31 00:31:12.957 (280561) bind 1 : NUMERIC *****
18-10-31 00:31:12.957 (280561) bind 2 : NUMERIC ***
18-10-31 00:31:12.957 (280561) bind 3 : VARCHAR (13)***.*.***.**
18-10-31 00:31:12.957 (280561) bind 4 : VARCHAR (2)Y
18-10-31 00:31:12.957 (280561) bind 5 : VARCHAR (8)Android
18-10-31 00:31:12.957 (280561) bind 6 : VARCHAR (20)Chrome 70.0.3538.64
18-10-31 00:31:12.957 (280561) bind 7 : VARCHAR (15)20181031003112
18-10-31 00:31:12.957 (280561) bind 8 : NUMERIC ********
18-10-31 00:31:12.957 (280561) bind 9 : NUMERIC ********@gmail.com
18-10-31 00:31:12.957 (280561) execute error:-204 tuple 0 time 0.000, EID = 5800
18-10-31 00:31:12.957 (0) auto_rollback
18-10-31 00:31:12.957 (0) auto_rollback 0
18-10-31 00:31:12.957 (0) *** elapsed time 0.002

bind 8, 9가 NUMERIC인데 string 타입이 오는게 의심이 되는 부분이기는 합니다.
그런데 또 모듈 스키마 파일에도 type="number" size="11"이 있어서 계속 헷갈리네요.

어느 부분에서 문제가 발생한 것일까요?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.