Commit 0b5f6d62 authored by platyhouse's avatar platyhouse

- encrypted

parent 51caa30b
config_db.php #created by https://www.gitignore.io/api/phpstorm
config.php ### PhpStorm ###
admin/config_db.php # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
config.php # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff:
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/dictionaries
# Sensitive or high-churn files:
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.xml
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
# Gradle:
.idea/**/gradle.xml
.idea/**/libraries
# CMake
cmake-build-debug/
# Mongo Explorer plugin:
.idea/**/mongoSettings.xml
## File-based project format:
*.iws
## Plugin-specific files:
# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
### PhpStorm Patch ###
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
# *.iml
# modules.xml
# .idea/misc.xml
# *.ipr
# Sonarlint plugin
.idea/sonarlint
# End of https://www.gitignore.io/api/phpstorm
.idea/*
x_* x_*
*.log
application/data/*
admin/data/*
data/* data/*
config_db.php
# storyshare
config_db.php
license.php
git_*
admin/config_db.php
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="pull-right hidden-xs"> <div class="pull-right hidden-xs">
<b>Version</b> 1.0.0 <b>Version</b> 1.0.0
</div> </div>
<strong>Copyright &copy; 2018.</strong> All rights <strong>Copyright &copy; 2021.</strong>AppJu All rights
reserved. reserved.
</footer> </footer>
......
...@@ -101,6 +101,7 @@ function createTree(&$list, $parent) ...@@ -101,6 +101,7 @@ function createTree(&$list, $parent)
<!-- Bootstrap 3.3.7 --> <!-- Bootstrap 3.3.7 -->
<script src="<?= $this->request->moduleUrl ?>/ptyadmin/resources/AdminLTE-2.4.5/bower_components/bootstrap/dist/js/bootstrap.min.js"></script> <script src="<?= $this->request->moduleUrl ?>/ptyadmin/resources/AdminLTE-2.4.5/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="<?=$this->request->systemUrl?>/modules/ptycommon/resources/ptyCommon.js?<?=time()?>"></script>
<?= $o = ""; $this->callAction("onAdminHeader",$o); echo $o; ?> <?= $o = ""; $this->callAction("onAdminHeader",$o); echo $o; ?>
</head> </head>
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
</ol> </ol>
</section> </section>
<section class="content"> <section class="content">
<?= $o = ""; $this->callAction("onAdminTopContent",$o); echo $o; ?>
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<div class="box"> <div class="box">
......
...@@ -27,3 +27,25 @@ ...@@ -27,3 +27,25 @@
</div> </div>
</div> </div>
</div> </div>
<div class="modal fade" id="ptyConfirmDlg">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header bg-green">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span></button>
<h4 id="ptyConfirm_title" class="modal-title">계속 하시겠습니까?</h4>
</div>
<div class="modal-body">
<p id="ptyConfirm_content"></p>
<select class="form-control" id="ptyConfirm_select"></select>
<div class="form-group" id="ptyConfirm_select2"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">취소</button>
<button id=ptyConfirm_yesButtonTitle type="button" class="btn btn-warning"></button>
</div>
</div>
<!-- /.modal-content -->
</div>
</div>
\ No newline at end of file
...@@ -9,6 +9,8 @@ $(function () { ...@@ -9,6 +9,8 @@ $(function () {
var content2 = $(this).attr("content2"); var content2 = $(this).attr("content2");
var content3 = $(this).attr("content3"); var content3 = $(this).attr("content3");
var value = $(this).attr("value"); var value = $(this).attr("value");
var value2 = $(this).attr("value2");
var value3 = $(this).attr("value3");
// var yesButtonTitle = $(this).attr("yesButtonTitle"); // var yesButtonTitle = $(this).attr("yesButtonTitle");
ptyAdminInputPopupSubmitUrl = $(this).attr("href"); ptyAdminInputPopupSubmitUrl = $(this).attr("href");
...@@ -42,8 +44,8 @@ $(function () { ...@@ -42,8 +44,8 @@ $(function () {
*/ */
$("input[name=ptyAdminInputPopupDlg_input]").val(value); $("input[name=ptyAdminInputPopupDlg_input]").val(value);
$("input[name=ptyAdminInputPopupDlg_input2]").val(''); $("input[name=ptyAdminInputPopupDlg_input2]").val(value2);
$("input[name=ptyAdminInputPopupDlg_input3]").val(''); $("input[name=ptyAdminInputPopupDlg_input3]").val(value3);
$("#ptyAdminInputPopupDlg").modal(); $("#ptyAdminInputPopupDlg").modal();
$("input[name=ptyAdminInputPopupDlg_input]").focus(); $("input[name=ptyAdminInputPopupDlg_input]").focus();
return false; return false;
...@@ -54,7 +56,7 @@ $(function () { ...@@ -54,7 +56,7 @@ $(function () {
if (ptyAdminInputPopupInput3 === true) if (ptyAdminInputPopupInput3 === true)
location.href = ptyAdminInputPopupSubmitUrl + "&value=" + $("input[name=ptyAdminInputPopupDlg_input]").val() + "&value2="+ $("input[name=ptyAdminInputPopupDlg_input2]").val() + "&value3="+ $("input[name=ptyAdminInputPopupDlg_input3]").val(); location.href = ptyAdminInputPopupSubmitUrl + "&value=" + $("input[name=ptyAdminInputPopupDlg_input]").val() + "&value2="+ $("input[name=ptyAdminInputPopupDlg_input2]").val() + "&value3="+ $("input[name=ptyAdminInputPopupDlg_input3]").val();
else if (ptyAdminInputPopupInput3 === true) else if (ptyAdminInputPopupInput2 === true)
location.href = ptyAdminInputPopupSubmitUrl + "&value=" + $("input[name=ptyAdminInputPopupDlg_input]").val() + "&value2="+ $("input[name=ptyAdminInputPopupDlg_input2]").val(); location.href = ptyAdminInputPopupSubmitUrl + "&value=" + $("input[name=ptyAdminInputPopupDlg_input]").val() + "&value2="+ $("input[name=ptyAdminInputPopupDlg_input2]").val();
else else
location.href = ptyAdminInputPopupSubmitUrl + "&value=" + $("input[name=ptyAdminInputPopupDlg_input]").val(); location.href = ptyAdminInputPopupSubmitUrl + "&value=" + $("input[name=ptyAdminInputPopupDlg_input]").val();
...@@ -63,3 +65,128 @@ $(function () { ...@@ -63,3 +65,128 @@ $(function () {
}); });
}); });
var ptyConfirm_yesUrl = "";
var ptyConfirm_selectUrl = null;
var ptyConfirm_selectArray = null;
var ptyConfirm_selectArray2 = null;
var ptyConfirm_postUrl = null;
$(function () {
/**
* ptyConfirmDialog
*
* <button type="button" class="ptyConfirmDialog" content='삭제하시겠습니까?' title='삭제' yesButtonTitle='삭제' href='<?=$this->request->classUrl?>/remove/?id=<?=$item->id?>'">삭제</button>
*/
$('.ptyShowConfirmDialog').click(function (e) {
e.preventDefault();
var title = $(this).attr("title");
var content = $(this).attr("content");
var yesButtonTitle = $(this).attr("yesButtonTitle");
var selectUrl = $(this).attr("selectUrl");
var selectArray = $(this).attr("selectArray");
var selectArray2 = $(this).attr("selectArray2");
var postUrl = $(this).attr("postUrl");
ptyConfirm_yesUrl = $(this).attr("href");
ptyConfirm_selectUrl = selectUrl;
ptyConfirm_selectArray = selectArray;
ptyConfirm_selectArray2 = selectArray2;
ptyConfirm_postUrl = postUrl;
if (typeof title !== typeof undefined && title !== false) {
$("#ptyConfirm_title").html(title);
}
if (typeof content !== typeof undefined && content !== false) {
$("#ptyConfirm_content").html(content);
}
if (typeof selectUrl !== typeof undefined && selectUrl !== false) {
var $el = $('#ptyConfirm_select');
ptyPost(selectUrl, {}, function (ret, result) {
$el.html(' ');
// console.log(result.items);
$.each(result.items, function (key, value) {
// console.log('key = ' + key + ', value = ' + value);
$el.append($("<option></option>").attr("value", value).text(key));
});
$el.addClass('animated flash');
$("#ptyConfirm_select").show();
});
}
$("#ptyConfirm_select").hide();
if (typeof selectArray !== typeof undefined && selectArray !== false) {
var $el = $('#ptyConfirm_select');
ptyConfirm_selectArray = JSON.parse(ptyConfirm_selectArray);
$el.html(' ');
$.each(ptyConfirm_selectArray, function (key, value) {
// console.log('key = ' + key + ', value = ' + value);
$el.append($("<option></option>").attr("value", value).text(key));
});
$el.addClass('animated flash');
$("#ptyConfirm_select").show();
}
if (typeof selectArray2 !== typeof undefined && selectArray2 !== false) {
var $el = $('#ptyConfirm_select2');
ptyConfirm_selectArray2 = JSON.parse(ptyConfirm_selectArray2);
$el.html(' ');
$.each(ptyConfirm_selectArray2, function (key, value) {
$el.append("<div class='checkbox'><label><input type='checkbox' name='ptyConfirm_selectArray2_value' value=" + value + ">" + key + "</label></div>");
});
$el.addClass('animated flash');
$("#ptyConfirm_select").hide();
$("#ptyConfirm_select2").show();
}
if (typeof yesButtonTitle !== typeof undefined && yesButtonTitle !== false) {
$("#ptyConfirm_yesButtonTitle").html(yesButtonTitle);
}
$("#ptyConfirmDlg").modal();
return false;
});
$('#ptyConfirm_yesButtonTitle').click(function () {
$("#ptyConfirmDlg").modal('hide');
if (typeof ptyConfirm_yesUrl !== typeof undefined && ptyConfirm_yesUrl !== false) {
ptyConfirm_yesUrl = ptyConfirm_yesUrl.replace("%40value", $("#ptyConfirm_select").val());
}
if (typeof ptyConfirm_postUrl !== typeof undefined && ptyConfirm_postUrl !== false) {
if (typeof ptyConfirm_selectUrl !== typeof undefined && ptyConfirm_selectUrl !== false) {
ptyConfirm_postUrl = ptyConfirm_postUrl.replace("%40value", $("#ptyConfirm_select").val());
}
else if (typeof ptyConfirm_selectArray2 !== typeof undefined && ptyConfirm_selectArray2 !== false) {
// 콤마로 구분하여 가져옴
var valuesArray = $('input[name="ptyConfirm_selectArray2_value"]:checked').map(function () {
return this.value;
}).get().join(",");
ptyConfirm_postUrl = ptyConfirm_postUrl.replace("%40value", valuesArray);
}
}
if (typeof ptyConfirm_postUrl !== typeof undefined && ptyConfirm_postUrl !== false) {
ptyPost(ptyConfirm_postUrl, {}, function (ret, result) {
if (typeof ptyConfirm_yesUrl !== typeof undefined && ptyConfirm_yesUrl !== false) {
location.href = ptyConfirm_yesUrl;
}
else
window.location.reload();
});
return false;
}
if (typeof ptyConfirm_yesUrl !== typeof undefined && ptyConfirm_yesUrl !== false) {
location.href = ptyConfirm_yesUrl;
}
else
window.location.reload();
return false;
});
});
\ No newline at end of file
...@@ -33,7 +33,37 @@ namespace platyFramework; ...@@ -33,7 +33,37 @@ namespace platyFramework;
<input type="hidden" name="id" value="<?= $item->id ?>"> <input type="hidden" name="id" value="<?= $item->id ?>">
<?= $form->getInput("에드몹 배너 광고ID", "admobBannerId", "placeholder='ca- 형식'"); ?> <?= $form->getInput("에드몹 배너 광고ID", "admobBannerId", "placeholder='ca- 형식'"); ?>
<?= $form->getInput("에드몹 전면 광고ID", "admobFullId", "placeholder='ca- 형식'"); ?> <?= $form->getInput("에드몹 전면 광고ID", "admobFullId", "placeholder='ca- 형식'"); ?>
<div class="form-group">
<label class='col-sm-2 control-label'>
app-ads.txt 설정
</label>
<div class='col-sm-10'>
<?= $form->getTextEditRaw("app-ads.txt 설정", "appadstxt"); ?>
<b>특별한 사유가 없다면 위 영역은 빈 여백으로 놔두세요! 시스템이 자동으로 생성합니다. <a href="http://<?=$_SERVER['HTTP_HOST']?>/app-ads.txt" target="_blank">확인하러 가기</a></b><br>
(pub-xxxx 는 '에드몹 전면 광고ID' 의 광고ID 값을 자동으로 참조하게 됩니다)<br>
<br>* 구글 플레이 콘솔에 '웹사이트 항목' 을 반드시 http://<?=$_SERVER['HTTP_HOST']?> 로 설정하세요<br>
<br>
* 특별한 편집이 필요한 경우 위 내용을 입력하여 변경할 수 있으며,<br>
시스템 기본값을 원하시면 빈 여백으로 남겨두세요<br>
<br>
<?
$ptyadvertiseConfig = $this->config->getConfig("ptyadvertise");
$pubs = $ptyadvertiseConfig->admobFullId;
$pubs = explode("/", $pubs);
$pub = str_replace("ca-app-", "", $pubs[0]);
?>
<font color="green">[ 시스템 기본값 ]</font><br>
google.com, <?=$pub?>, DIRECT, f08c47fec0942fa0<br>
subdomain=<?=$_SERVER['HTTP_HOST']?><br>
</div>
</div>
</div> </div>
<div class="box-footer"> <div class="box-footer">
<button type="button" class="btn btn-default ptyGoBack pull-right">취소</button> <button type="button" class="btn btn-default ptyGoBack pull-right">취소</button>
<button type="submit" class="btn btn-info pull-left">저장</button> <button type="submit" class="btn btn-info pull-left">저장</button>
......
...@@ -78,6 +78,22 @@ namespace platyFramework; ...@@ -78,6 +78,22 @@ namespace platyFramework;
<? } ?> <? } ?>
</div> </div>
</div> </div>
<div class="box box-info">
<div class="box-header with-border">
<h3 class="box-title">이미지 배경화면 설정 기능</h3>
</div>
<div class="box-body">
<div class='col-md-12'>
<?= $form->getInput("문구", "wallpaperTitle", "", "'배경으로 지정' 등의 문구를 입력하세요"); ?>
<?= $form->getFile("배경 이미지", "wallpaperImageUrl", "0", "", ""); ?>
</div>
</div>
<div class="box-footer">
<button type="submit" class="btn btn-primary">저장</button>
<button type="button" class="btn btn-default ptyGoBack pull-right">취소</button>
</div>
</div>
<div class="box box-info"> <div class="box box-info">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">잠금화면 내용</h3> <h3 class="box-title">잠금화면 내용</h3>
...@@ -88,6 +104,7 @@ namespace platyFramework; ...@@ -88,6 +104,7 @@ namespace platyFramework;
<?= $form->getFile("배경 이미지", "backgroundImageUrl", "0", "", "제목 영역에 배경으로 DIM 처리 됩니다"); ?> <?= $form->getFile("배경 이미지", "backgroundImageUrl", "0", "", "제목 영역에 배경으로 DIM 처리 됩니다"); ?>
</div> </div>
</div> </div>
</div>
</form> </form>
</div> </div>
......
...@@ -31,6 +31,38 @@ namespace platyFramework; ...@@ -31,6 +31,38 @@ namespace platyFramework;
</div> </div>
<div class="box-body pad"> <div class="box-body pad">
<input type="hidden" name="id" value="<?= $item->id ?>"> <input type="hidden" name="id" value="<?= $item->id ?>">
<div class='col-md-12'>
<?= $form->getInput("Generic Access Token (V4)", "genericAccessToken", "", ""); ?>
</div>
<div class='col-md-12'>
<div class='col-md-2'>
</div>
<div class='col-md-10'>
<p>기존의 짧은글 생성기로 사용중인 Bitly API 는 Bitly 에 의해 <b>2020년 3월 1일</b>부터 사용이 금지됩니다. <br>
반드시 아래의 내용을 참고하여 Generic Access Token (V4) 항목을 입력하셔야 합니다</p>
<h1 class="animated fadeIn infinite">Generic Access Token 입력 방법</h1>
<p>1. <a target=_blank
href="https://app.bitly.com/Bk2e0oPIVP3/bitlinks/?actions=profile&actions=accessToken">https://app.bitly.com/Bk2e0oPIVP3/bitlinks/?actions=profile&actions=accessToken
접속</a> <- 클릭하세요</p>
<p>2. PASSWORD 항목에 로그인한 Bitly 의 계정 암호를 입력합니다</p>
<p>3. GENERIC ACCESS TOKEN 을 클릭합니다</p>
<p>4. COPY 클릭</p>
<p>5. 위 빈 공간에 붙여넣기 합니다</p>
<p class="animated flash infinite">6. 저장 꼭 눌러주세요!</p>
<p>* 이 기능은 유지보수를 구독하는 분에 한해 지속적으로 이용 가능하며, 미구독시 짧은글이 자동으로 생성되지 않을 수 있습니다</p>
</div>
</div>
<div class='col-md-12'>
<div class='col-md-2'>
</div>
<div class='col-md-10'>
<img align=center src="https://apps.platyhouse.com/resources/app_storyshare/bitly4.jpg"
width="60%">
</div>
</div>
<? if (false) { ?>
<div class='col-md-12'> <div class='col-md-12'>
<?= $form->getInput("Bit.ly 로그인 ID", "bitlyLoginId", "", ""); ?> <?= $form->getInput("Bit.ly 로그인 ID", "bitlyLoginId", "", ""); ?>
</div> </div>
...@@ -43,6 +75,7 @@ namespace platyFramework; ...@@ -43,6 +75,7 @@ namespace platyFramework;
<p>https://app.bitly.com/Bh8b1RLJpYs/bitlinks/?actions=accountMain&actions=settings&actions=advancedSettings&actions=apiSupport</p> <p>https://app.bitly.com/Bh8b1RLJpYs/bitlinks/?actions=accountMain&actions=settings&actions=advancedSettings&actions=apiSupport</p>
</div> </div>
</div> </div>
<? } ?>
</div> </div>
<div class="box-footer"> <div class="box-footer">
<button type="button" class="btn btn-default ptyGoBack pull-right">취소</button> <button type="button" class="btn btn-default ptyGoBack pull-right">취소</button>
......
No preview for this file type
...@@ -34,6 +34,7 @@ namespace platyFramework; ...@@ -34,6 +34,7 @@ namespace platyFramework;
<div class='col-md-12'> <div class='col-md-12'>
<?= $form->getInput("서비스명 (한글)", "appTitle", "", ""); ?> <?= $form->getInput("서비스명 (한글)", "appTitle", "", ""); ?>
<?= $form->getInput("서비스명 (영문)", "appName", "", "띄어쓰기 없이 입력하세요"); ?> <?= $form->getInput("서비스명 (영문)", "appName", "", "띄어쓰기 없이 입력하세요"); ?>
<?= $form->getInput("Apps API Access Token", "platyHouseAppsApiAccessToken", ""); ?>
</div> </div>
</div> </div>
<div class="box-footer"> <div class="box-footer">
......
No preview for this file type
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment