Giter Site home page Giter Site logo

nyamnyamlab's Issues

의견 업데이트

현재

taskTarget comment의 taskType은 edit하나.
생성하든 삭제하든 update로 퉁치고있었음

문제상황

A. B 두 개의 클라이언트가 있음. 둘다 접속당시 의견란 비어있음.

A : 'ㄹㄹㄹ'라는 의견하나 작성
현재 A는 'ㄹㄹㄹ' 하나 보임. B는 아무것도 안보임

B : 'RRR'라는 의견 하나 작성
현재 A는 'ㄹㄹㄹ'하나 보임. 현재 B는 'RRR'하나 보임

A : 'ㄹㄹㄹ'삭제
이 때, 연구소의 comment셀은 실제로 모든내용이 삭제됨. B가 작성한 'RRR'씹힘.

방안

taskTarget comment에 대하여 create, delete taskType만들어야함.
comment는 현행처럼 단일스트링이 아니라, {id:000, content:"@@@@"} 식의 객체단위로 저장해야함.

마커 가게이름 끄고켜기 기능

Header - Tools 아래에 가게이름 토글 버튼 추가.
state가 바뀌면 icon property값 재설정.

방법고민

  • property값을 마커 생성시기에 미리 저장해서 나중에 활용할지
  • 토글시기에 저장했다 지웠다 할지
  • 아니면 애초에 property안의 가게이름부분 요소를 display:none으로 바꾸어서 해결할 수 있는지?

기능 생김새 고민

  • 마우스 오버했을때는 이름을 띄워줄지? - 이걸 기본기능으로 갖고갈지, 이것도 토글시킬지
  • popover로 띄울지? 그냥 '새로운 냠'버튼마냥 곧바로 기능으로 꽂아버릴지

22 07 11

  • '입주'옵션으로 연구소를 정상적으로 생성할 수 있도록 프로그램을 수정했습니다.
    • 이제 이메일 확인 시점, 연구소 입주 완료시점에 대장의 이메일주소로 안내메일을 발송합니다.
    • 이제 필수입력값이 비어있으면 연구소 입주절차를 진행하지 않고, 내용을 보충할 것을 사용자에게 요청합니다.
    • 연구소 출입 비밀번호를 필수적으로 요구하는 버그를 수정했습니다. 연구소 관리 비밀번호와 기본권한 필드를 삭제했습니다.
  • 새로고침시 404 NOT FOUND가 출력되는 현상을 수정했습니다.
    • 새로고침하려고 하면 경고창을 표시하고, 새로고침되면 메인페이지로 이동합니다.

이모지입력기 적용

nyam 개요부분, 의견 부분에 이모지입력기를 함달아보자. 이게 구글시트에 들어가는지 확인필요. 별도처리필요한지 확인필요.

맛없는지도 구성

회사 동료분이 버거킹 모 지점에 분노하면서 주신 아이디어.
일정수준이상되는 지도는 그대로 가고, 걸러야 하는 노맛 식당을 추가로 구성하자

특히 프랜차이즈의 특정지점이 이런경우가 좀 있는듯.

익명 / 구글인증기반 서비스 이원화

초기 냠냠대장의 조직별환경구성 단계에서 익명서비스 / 구글인증기반 서비스를 선택할 수 있도록

인증기반 서비스를 구축한다면 생각해볼 것들

  • Google Oauth2.0 for react가 과연 Apps script의 트리거만으로 동작이 가능한지?
  • 기존의 Oauth2.0스펙을 비틀어서 구글시트 자체의 데이터만으로 보안을 충분히 보장할 수 있을지?
  • 냠냠랩이 데이터를 보유하지 않는다는것은 사용자 정보와 세션에도 적용되는 이야기어야 할지?
  • 암호화구문이 노출될가능성이 있을지? - 독스 뒤져볼것
  • 프로필사진을 노출해야하는지? 이름은 노출해야 하는지? 인증은 인증대로 하고 냠냠랩에서만 사용하는 정보를 따로 설정하도록 할지? 이 경우 개인정보 관리의 책임은 냠냠대장에게 모두 전가된다면 이건 좀 너무한게 아닌지?
  • 사용자가 등록한 '냠'목록과 '의견'목록을 모아보는 기능이 가치가 있는지? 가치가 있다면 본인에게만 제공할지 / 모두에게 제공할지?
  • 의견은 익명 / 실명중에 선택하게 해야하는지, 실명으로 통일시켜야 하는지? 익명으로 통일시켜야하는지?

사용자정의 org아이콘

-- 초기 시트는 이미 구성되었다고 가정 --
< 초기 업로드 및 시트 삽입>

  1. 냠냠랩 init서비스에서 이미지업로드
  2. 구글드라이브에 'nyamnyamlab'폴더 찾기(이하 폴더)
  3. 폴더에 이미지 이름 'icon.*'로 업로드
  4. 폴더에서 'icon.*' 찾기
  5. sharing ANYONE, VIEWER 설정

< 지도 마커로 제공 >
getFoldersByName
getFilesByName
응답 데이터에 포함
{
...
, icon : [IMAGE]
}

'입주'옵션 '연구소 만들기'

사용자 조작

냠냠랩 메인페이지 [연구소 만들기]
-> [입주]옵션 선택
-> 이메일 입력
-> 냠냠랩에서 사용자가 입력한 구글계정 메일로 확인메일 발송 & 사용자의 확인
-> 기본 설정사항 입력 및 createNyam GAS로 전송

  • 연구소 이름
  • 연구소 출입 비밀번호
  • 대장 비밀번호
  • 기본 권한 ( 열람 / 수정 ) 설정
  • 맵스 center 위경도 좌표
  • 맵스 zoom 값
  • 커스텀 아이콘 ( 현재 무조건 false로 자동입력 )

냠냠랩 자동처리

-> 템플릿으로부터 스프레드시트 카피 ( drive root에 저장될 것 )
-> 입력받은 정보를 바탕으로 연구소 기본세팅
-> 특정 폴더안으로 이동
-> 사용자 편집자 권한 부여 및 초대
-> 안내사항과 시트 접근주소를 담은 메일 발송

시트연결 유형 두 가지 : 간편 / 보안

간편
-> 유저에게 만들어준 시트 권한을 '링크가 있는 누구나'로 설정.
사용자지정 연구소이름 - [라우팅테이블] - openByUrl로 불러오기

보안
-> 사용자가 직접 앱스크립트 웹앱 배포하고, 냠냠랩을 정말로 온전히 실행/편집기로서만 사용.

입주 (간편옵션)

-> 냠냠랩 전용 계정에 시트 저장. 냠냠대장 편집자로 초대.

건설 (고급옵션)

-> 사용자가 직접 기본포함된 앱스크립트 웹앱 배포하고, 냠냠랩을 정말로 온전히 실행/편집기로서만 사용.
라우팅테이블 등록 없이 냠냠랩 접속시에는 script url과 sheet url을 제공해야함.

MapsModalInfo 모바일 네이버검색 쿼리에 공백이후 문자열 잘림현상

MapsModalInfo 우측상단 '네이버지도' 클릭시 입력되는 쿼리

PC 웹 = 정상작동
모바일 브라우저 OR 모바일 네이버지도앱 = 공백이후 문자열 모두잘림

(에시) "냠냠랩 세종대점"
-> "냠냠랩"으로 파라미터 전달.

해결방안
네이버플레이스에서 공백이 없어도 알아서 잘 검색하는것으로 확인. 공백 모두 없애고 파라미터로 넘겨야.

NyamEditor 메뉴 추가 리스트사이사이에 가능하도록

현재

(-) 메뉴명 메뉴가격
(-) 메뉴명 메뉴가격
(+)

바뀔것

(-) (+) 메뉴명 메뉴가격 --- row 1
(-) (+) 메뉴명 메뉴가격 --- row 2
(+) --- row : after
row 1에 있는 (+)를 누르면 row 1 앞에 빈 리스트가 추가됨.
row : after에 있는 (+)를 누르면 row 2 뒤에 빈 리스트가 추가됨 ( 현재와 동일한 기능 )

마커 클러스터링

지도크기가 일정이상 줄면 일정범위내의 마커를 묶어서 숫자로 표시
따로 목록을 보여주지는 않고, 클릭하면 개별마커가 보이는 zoom의 수준까지 맵스 떙겨주기.

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.