redgoose-dev / goose Goto Github PK
View Code? Open in Web Editor NEWPersonal contents management system.
Home Page: http://redgoosedev.github.io/goose/
License: MIT License
Personal contents management system.
Home Page: http://redgoosedev.github.io/goose/
License: MIT License
호출하면 화면이 먹통이 되는거같은데 확인해야할 필요가 있음
file 모듈 테이블이 file
, file_tmp
두가지가 존재하는데 두가지로 가니깐 srl값이 서로 다르니깐 다른 활용에서 문제가 생긴다.
그래서 하나의 테이블로 가는게 좋을거 같은데 두개로 나눈 이유가 분명히 있었지만 file
테이블 하나로 가서 운영하는게 가능해보인다.
ready 필드를 만들어서 업로드 확정되기전 임시 첨부파일이면 true
값으로 넣고 포스팅하면 false로 바꾸어서 임시파일만 골라낼 수 있을것이다.
포스팅 화면에서 file
테이블을 돌려야하기 때문에 ready
필드는 인덱스에 넣는게 좋아보임
블레이드로 변환해야할 작업목록
필드가 너무 늘어날거같아 걱정인데 설정필드들은 전부 하나로 압축했으면 좋겠음....
설정 json 데이터 형태로 된 필드로..
권한이 없다고 오류�뜸
php 버전 안되면 오류메세지 출력하고 멈추도록 수정이 필요함
해결법1.
루트가 아닌건지 파악하고 루트가 아니면 루트로 페이지 이동하여 인스톨진행
해결법2.
인스톨 페이지에 루트경로를 직접 입력하게 하기(기본 입력은 자동으로 접속 페이지 주소로 출력)
#136 글을 참고하여 기본세팅을 하고 사용법에 대해서 알아두기
모든 모듈에 사용할 준비하기
깃에서 다운받은거로 설치해서 구스_데모 돌려보고 있는데요..
그림파일 읽어오지 못해서 보니 ext 폴더 아래의 Parsedown 폴더에서 클래스파일을 읽어오게
되어 있어서 vendor로 수정하니 나오네요.. 아직 섬네일은 안나오고 있는데...
아직 구조파악이 안되서... 찾아보고 있네요..
라라벨의 블레이드 템플릿을 도입하고싶은 욕심이 많이 있었는데 라라벨에서 구동되기 때문에 군침만 흘렸었다.
그런데 라라벨을 사용하지 않고도 가능한 방법이 있는듯하다.
https://github.com/EFTEC/BladeOne
대공사이긴 하지만 좀더 살펴보고 결정해야지... view 영역에 php코드를 그대로 집어넣는게 좀 찜찜해왔던지라..
수정하고 글 작성하기 전에 곧바로 프리뷰할 수 있는 기능 추가할 필요가 있음.
안녕하세요. 웹 완전 초보인데, 우연히 개인용 cms로 구글링하다가
데모해보고 완전 마음에 들어서
1.0 beta 설치를 해보게 되었습니다.
환경은
윈도우7 64bit XAMPP 최신버전 php 5.6.8 버전입니다.
설치까지는 된거같습니다. db에도 보니까 데이터는 들어와있네요.
근데 설치 끝내고 시작페이지로 가보니 이렇게 나오더군요.
소스 페이지 들어가보니 구체적으로는 이렇게 나왔습니다.
<!DOCTYPE html>
<html>
<head lang="ko">
<meta charset="utf-8">
<title>Goose admin</title>
<meta name="author" content="Goose Admin">
<meta name="generator" content="redgoose">
<meta name="description" content="admin service for goose">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" user-scalable="no">
<link rel="stylesheet" href="/goose/ext/iconFonts/style.css" />
<link rel="stylesheet" href="/goose/module/layout/skin/default/css/layout.css" media="screen" />
<script src="/goose/ext/jQuery/jquery-2.1.3.min.js"></script>
<script>function log(o){console.log(o);}</script>
</head>
<body>
<main role="main">
<!-- Header -->
<header id="header">
<h1><a href="/goose/">Goose</a></h1>
<nav id="gnb">
<ul>
<li><a href='/goose/auth/login/'>Login</a></li> </ul>
</nav>
</header>
<!-- // Header -->
<!-- Container -->
<div id="container">
<?
if ($this->pwd_container)
{
require_once($this->pwd_container);
}
?>
</div>
<!-- // Container -->
<!-- Footer -->
<footer id="footer">
<address>Copyright 2015 Goose Engine. All right reserved.</address>
</footer>
<!-- // Footer -->
</main>
</body>
</html>
모듈을 불러오는 방법이 $obj = Module::load('Nest');
형태로 불러오는데 사실 클래스 객체를 생성하는 역할을 하는것인데 Module::load()
메서드에만 의지해야하는게 결점이고 자연스럽지 못한 모습인거 같다.
autoload가 가능하니 $obj = new mod\Nest\Nest();
형식으로 객체를 생성하면 setting.json
데이터 바인딩과 기본 모듈 파라메터를 바인딩 하는방식으로 변경하는게 더 좋아보인다.
그래서 모듈 클래스의 __construct()
메서드에서 core\Module::initModule($this, $params);
를 실행하여 goose의 모듈같이 만들도록 할 수 있게 변경할 예정이다.
그런다고 $obj = Module::load('Nest');
형식으로 쓰지 못하는건 아니고 모듈 객체를 생성해서 반환하도록 구조를 바꿀까한다.
사실 Module::load()
메서드로 모듈을 불러오는게 더 편하다. -_-; core\
키워드가 더 추가된다는게 좀 불만이지만 ;;;
로컬서버에서 테스트 필요함
권한 문제일까요?
article 수정할때 확장변수값이 안들어가있음.
nest 수정에서 app을 변경했을때 article에 있는 app_srl값이 변하기 않는 오류발견.
app_srl값이 바뀌었을때 article에 있는 데이터를 갱신해줘야할 필요가 있음.
Hola! @RedgooseDev has created a ZenHub account for the RedgooseDev organization. ZenHub is the leading team collaboration and project management solution built for GitHub.
To get set up with ZenHub, all you have to do is download the browser extension and log in with your GitHub account. Once you do, you’ll get access to ZenHub’s complete feature-set immediately.
ZenHub adds a series of enhancements directly inside the GitHub UI:
Still curious? See more ZenHub features or read user reviews. This issue was written by your friendly ZenHub bot, posted by request from @RedgooseDev.
http://src.redgoose.me/article/2162/
업로더 변형작업을 해야하는데 업로더에서 큐 순서변경 기능을 만들면 작업을 할 수 있을거 같음.
플러그인을 개발하거나 기능개선을 해야할듯...
해야할것들이 많아서 다음번으로 미룸
1.0.4 버전에서도 글 수정 페이지에서 백슬래시가 사라지는 문제는 여전하네요. ㅠㅠ
/data/config/user.php
파일에 있는 값의 설명이 필요함.
관리 사용자들이 값을 수정해야할일이 있음.
일반 textarea같은 폼은 html을 사용하지 않기 때문에 줄넘김같은게 작동안된다.
그래서 html사용유무를 바꿀 수 있게 해야한다.
개인적으로 쓰고있는 위지윅 에디터는 http://imperavi.com/redactor/ 를 사용하고 있고, 파일업로드 컴포넌트는 http://www.uploadify.com html5 버전입니다.
둘다 유로이며, 비용은 $99 + $5 인데요. 위지윅 에디터가 오픈소스용으로 올리려면 $499나하는 라이센스를 얻어야하더라구요. 업로드 컴포넌트는 답없고...;;;
그래서 공개할 수 있는 에디터랑 파일 컴포넌트를 어떤걸로 할지에 대한 고민이....
파일 컴포넌트는
http://hayageek.com/docs/jquery-upload-file.php
이걸 후보로 두고있고, 위지윅 에디터는 딱히 마음에 드는게 없다는게 골치아픈 문제...;
개인적으로 가장 원하는건 소스와 모양이 심플하면서 아주 기초적인 기능이 들어있는 에디터를 원함 ㅋ
글 보시는분이 있다면 의견 좀...;
애플 앨 캐피탄, 아파치, PHP, mySQL 환경 하에서 설치를 진행하였습니다.
인스톨은 아무런 문제 없이 되었고 로그인 화면도 제대로 보여지는데 로그인을 하면
"The requested URL /goose/auth/login/ was not found on this server."
이런 메시지가 나오네요.
무엇을 잘못한 것일까요?
설치 경로를 살펴보았더니 goose 디렉토리 아래에 auth라는 디렉토리는 존재하지 않고
소스를 좀 살펴보니 /goose/auth/login, /goose/auth/logout 이라는 디렉토리들도 보이던데...
설치의 문제인가요? 아니면 다른 설정상의 문제일까요?
코어와 모듈을 분리하여 프로그램 확장이 가능하도록 하고싶어진다.
대략적인 구상은 해뒀지만 작업양이 굉장히 많아지고, 구조도 많이 변하게 될거 같아서 보류해두고 있는데...
지금 이 형태가 베스트인지 많이 뜯어고쳐야할지 좀 고민인 부분이 있음.
plugin에서 editor의 비중이 너무 커지고 있다.
editor은 말 그대로 editor만 들어있어야하지만 기능이 너무 많이 들어있는것이다. 플러그인 설계의 잘못이 그대로 드러나고 있는듯하다.
그래서 둥지에서 editor플러그인을 고를 수 있게 되어있지만 둥지 테이블에서 editor필드는 삭제되고 json필드에서 article의 종류를 고르게할것이다.
다시말해서 article 전체를 플러그인으로 옮길 계획이다. article플러그인에서 새롭게 추가되는 기능을 부담없이 추가해서 집어넣는것이 목적이다. 프로그램 파편화가 상당히 엄려되는 일이지만 계속 추가되는 기능에 대한 대처가 필요할것이다.
특히 글쓰기에서 기능이 추가되면 글추가 처리나 submit에 같이 사용되는 일이 많고 복합적이기 때문에 아주 좋은 아이디어를 떠올려야 하는 시기가 왔다.
Thank you so much for your good software as free.
I like to make my own website by your s/w.
I tried it, everything is O.K. except user screen.
Do I have to make goose folder ?
It is compulsory.
Thanks you so much for your answer in advance.
Have a nice day.
https://github.com/RedgooseDev/goose/blob/master/ext/UploadInterface/FileUpload.class.js#L64
"404 - File not fount"
메세지 글자 틀렸음.
특히 플러그인에서 외부 라리브러리를 중복으로 사용될때 버전관리가 골치아프게 된다.
그래서 /goose/libs 경로에 ext(External)라는 디렉토리를 만들어 관리하는것이 좋아보인다.
주말쯤이나 내일쯤에 외부 라이브러리 파일들을 좀 정리해야겠다. -_-;
thumnail_srl, thumnail_url, thumnail_coords 이 세개의 필드를 json필드에 삽입하기
thumnail쪽은 필수요소가 아니기 때문
Nest에서 default(Nest Skin)와 markdown(Article Skin)을 사용하고 있습니다.
글을 쓸 때 역슬래시() 문자를 넣어서 작성하면 잘 보이기까지는 하는데, 글을 수정하려 하면 역슬래시가 없어지는 문제가 있습니다. 현재로선 이 문제의 대응책으로 글을 수정할 때 마다 역슬래시가 들어간 부분에 해당 문자를 다시 입력하고 있는데요, 조금 불편하긴 하네요. 확인 부탁드리겠습니다. ^^
서로 다른 둥지의 특성을 가지고 있는것을 인식하게 되어어서 스킨화가 필요할거 같다.
구조를 상당히 많이 변화시켜야 할 필요가 있다.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
이걸로 한번 확인해보기
안녕하세요. Goose Engine 정말 잘 사용하고 있습니다 :)
제가 글 목록을 보여주는 페이지 하단에 Pagination을 넣으려고 하는데 Documentation에 명시된 Paginate 클래스 코드를 넣고 이리저리 수정을 해봤는데 잘 안되더라구요. Documentation에 있는 예제 코드에 들어가는 변수, 파라미터에 대한 설명을 조금만 부탁드립니다! ^^
https://github.com/RedgooseDev/goose/blob/master/libs/Util.class.php#L216
if (array_key_exists($v, $target) && !$target[$v])
부분을
if (!array_key_exists($v, $target) && !$target[$v])
키와 값이 있는걸 리턴하는것보다 없는것을 리턴하는것이 나아보임.
보통 오류체크를 위하여 사용하기 때문
위와같이 인스톨을 할때 디렉토리를 만드는 과정에서 실패를 할때가 있는데 디렉토리를 만들지 못했을때 오류를 일으키고 진행 중단을 일으켜야할거 같아보임.
file open fail
메시지가 뜰때 어떤 경로에서 열지 못했는지 메지지 개선이 필요함.
ex) file open fail. error location : ./module/install/setting.json
api의 주요기능이 db검색 (where문)이 핵심이지만 검색에서 빠진것들이 많이 보인다.
nest 테이블 검색은 전부 가능하지만 다른 테이블은 검색 못하는것들도 많이 보임..
쿼리 만드는 프로그램 개선이 확실히 필요함.
dragsort
플러그인과 오류가 보임/.htaccess
RewriteCond $1 !(\.)
이렇게하면 해결되는듯함.
안녕하세요, 평소에 Goose 정말 잘 사용하고 있습니다. 감사합니다! ^^
다름이 아니라 제가 퍼니오 호스팅(http://www.fun25.co.kr)에서 새롭게 Goose를 설치하려고 합니다.
여긴 MySQL 기본 포트(3306)를 사용하지 않고 다른 포트를 사용합니다. 이런 경우 어떻게 설치를 해야 하는 지 궁금합니다. 따로 설정을 할 수 있나요?
https://github.com/RedgooseDev/goose/blob/master/module/layout/skin/default/view_layout.html
레이아웃에 메타태그가 좀 안맞는거 같다.
generator는 필요없어보이고... 저작도구를 기입하는거 같아보임.
author 항목은 엉뚱하게 적었음... 아니면 변수값으로 빼버려야하나 싶기도 하고..
<script>function log(o){console.log(o);}</script>
부분은 삭제해야겠음.
역시 보관함같은 성격을 띄는데 모듈이라는 이름은 의미가 맞지않다.
고칠 이름은 nest(둥지)
클래스를 autoload를 이용하여 접근할 수 있도록 리팩토링
전체적으로 고칠 필요가 있음.
61줄
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.