폼 템플릿 포스트 스타일링에 대한 제어를 좀 더 주세요

그동안 나는 a) “checkbox” 답변을 숨기고, b) textarea가 아닌 질문을 같은 줄(<question?>: <answer>)에 표시하며, c) 항목 간 간격을 수정하기 위해 이 지저분한 해킹 방법을 고안했습니다.

자바스크립트에 어느 정도 익숙하시다면, 필요에 맞게 수정하여 사용할 수 있습니다:

(이것은 app.yml의 hooks 섹션에 추가되어야 합니다)

hooks:
  after_code:
    - exec:
        # 보통 여기에는 플러그인 관련 설정이 있습니다
    - replace:
        filename: /var/www/discourse/app/assets/javascripts/discourse/app/lib/form-template-validation.js
        from: 'return formattedOutput.join("\n\n");'
        to: |
          const formattedOutput2 = mergedData.map((item) => {
            const key = Object.keys(item)[0];
            const value = item[key];
            const type = formTemplate.find(x => x.id == key).type;
            if (type == 'checkbox') return;
            if ((value) && (type != 'textarea')) return `**${labelMap[key]}**: ${value}`;
            if (value) return`\n### ${labelMap[key]}\n${value}\n`;
          });
          return formattedOutput2.join("\n");

2개의 좋아요